1 简介 logistic回归又称logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。
2 逻辑回归过程 逻辑回归大致有两个个过程:线性变化、logistic函数
2.1 线性变化
2.2 logistic函数 logistic函数主要是将Y映射到(0,1)之间,并且导数比较好计算 将上一步的结果代入, 3 逻辑回归梯度下降更新公式 3.1 损失函数 逻辑回归的损失函数有几种理解方式,这里从最大似然估计角度出发。
概率分布函数可以统一写成:
似然函数:
3.2 梯度下降更新公式
4 python实现 使用TensorFlow2,keras API实现
from keras import losses ,optimizers
from keras import layers
import keras
import tensorflow as tf
import numpy as np
def build_model():
model = keras.Sequential([
layers.Dense(1, activation='sigmoid',input_shape=[3],use_bias = True)
])
# 优化器使用Adam
adam = optimizers.Adam(lr=0.01)
# 损失函数使用二进制交叉熵函数,评价函数使用二分类评价函数
model.compile(loss='binary_crossentropy',
optimizer=adam,
metrics=['binary_accuracy'])
return model
def prepare_data(n):
x = np.arange(n)
x = np.append(x,[np.sin(x),np.cos(x)])
x = x.reshape((3,n)).T
y = np.zeros((n))
for i in range(x.shape[0]):
if x[i][0]*x[i][1]*x[i][2] >n/2:
y[i]=1
else :
y[i]=0
return (x,y)
(x,y)=prepare_data(1000)
model=build_model()
model.summary()
model.fit(x,y,epochs=30)