逻辑回归的大致过程_逻辑回归推导与python实现

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)
4345899e6b9d5949b0f24552d94d6f26.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值