机器学习算法(三) 逻辑回归(LR)

逻辑回归模型

逻辑回归也被称为对数几率回归,对于初学者来说这里需要注意:算法名虽然叫做逻辑回归,但是该算法是分类算法,我个人认为这是因为逻辑回归用了和回归类似的方法来解决了分类问题。
image.png
image.png
image.png
image.png
image.png

逻辑回归的损失函数

image.png
image.png
image.png
image.png
image.png
image.png
image.png

逻辑回归的模型求解

image.png
image.png
image.png

逻辑回归算法实战

from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn import datasets

# 加载iris数据集
iris = datasets.load_iris()

X = iris.data
y = iris.target

print('Sample num: ', len(y))

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

clf = LogisticRegression(C=1.0, penalty='l1', tol=1e-6)

# 训练模型
clf.fit(X_train, y_train)

# 预测结果
ans = clf.predict(X_test)

# 计算准确率
cnt = 0
for i in range(len(y_test)):
    if ans[i] - y_test[i] < 1e-1:
        cnt += 1
    # print(ans[i], ' ', y_test[i])

print("Accuracy: ", (cnt * 100.0 / len(y_test)),"%")

运行结果

Sample num:  150
Accuracy:  100.0 %

猜你喜欢

转载自blog.csdn.net/datawhale/article/details/81204496