1.逻辑回归模型
按照音译logistic regression应该是逻辑斯蒂回归,太难听了,就简称逻辑回归吧。
1.1 二项逻辑回归模型
二项逻辑回归模型是一种二分类模型,尽管它叫“回归”。
模型如下:
其中参数
对于给定的输入实例
1.2模型的参数估计
极大似然估计:已知某个参数能使这个样本出现概率最大,我们当然不再选择其他小概率样本,就把这个参数作为估计的真实值。
似然函数: 也就样本出现的概率。
对于逻辑回归模型,可以应用极大似然估计法估计模型参数。
给定训练数据
对于逻辑回归,其似然函数为:
其中
将似然函数改写为对数似然函数,
之后采用低度下降算法或者拟牛顿法,求得
1.3自己的体会
其实逻辑回归可以看做是单层神经网络,输入层是N个神经元,输出就是两个神经元,使用的激活函数是
1.4实现
以前用TensorFlow写过逻辑回归,这里就不写了,使用sklearn工具实现以下。
#coding:utf-8
import numpy as np
from sklearn.linear_model import LogisticRegression
X = np.array([[0.1,0.2],[0.2,0.3],[1.5,1.8],[2.1,2.6]])
Y = np.array([0,0,1,1])
lr = LogisticRegression() # 这里有许多参数需要设置
lr.fit(X,Y)
pred = lr.predict([[1.6,2.0]])
print(pred)
>>>
[1]
# setting an array element with a sequence.意思是数据的行数列数不匹配