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)