过程
1、找到一个合适的预测函数,一般表示为h函数,该函数就是我们需要找的分类函数,它用来预测输入数据的判断结果。这个过程非常关键,需要对数据有一定的了解或分析,知道或者猜测预测函数的“大概形式”,比如是线性函数还是非线性函数。
2、构造一个Cost函数(损失函数),该函数表示预测的输出(h)与训练数据类别(y)之间的偏差,可以是二者之间的差(h-y)或者是其他形式。综合考虑所有训练数据的“损失”,将cost求和或者求平均,记为J(w)函数,表示所有训练数据预测值与实际类别的偏差。
3、J(w)函数值越小表示预测函数越准确(即函数h越准确),所以要想办法求解函数J(w)的最小值。如梯度下降法等方法求解。
logistic回归的使用
# 逻辑斯蒂回归回归,用于分类而不是回归
import numpy as np
from sklearn.linear_model import LogisticRegression,LogisticRegressionCV
from sklearn import datasets
from sklearn.model_selection import train_test_split
np.logspace(-4,4,100)
LogisticRegressionCV(Cs = [0.001,0.01,0.1,1,5,10,100])
X,y = datasets.load_iris(True)
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size = 0.2)
lr = LogisticRegression()
lr.fit(X_train,y_train)
# 分类问题,准确率 96.6%
lr.score(X_test,y_test)
# 类别分3类
np.unique(y