逻辑回归实践

1.逻辑回归是怎么防止过拟合的?为什么正则化可以防止过拟合?(大家用自己的话介绍下)

①:直接减少特征数、手动保留那些比较重要的特征;

但是有时候舍弃特征也舍弃了有用的信息。

②:正则化:保留所有的特征,但是减小参数θθ的大小。

2.用logiftic回归来进行实践操作,数据不限。

#(1)加载load_breast_cancer数据集,并划分训练集与测试集。
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
data=load_breast_cancer()
train_data, test_data, train_target, test_target = train_test_split(data['data'], data['target'], test_size=0.2)
#(2)训练模型,并计算训练数据集的评分数据和测试数据集的评分数据,以及查看测试样本中预测正确的个数。
from sklearn.linear_model import LogisticRegression
model=LogisticRegression()#逻辑回归模型的建立
model=model.fit(train_data,train_target)#逻辑回归模型的训练
train_score=model.score(train_data,train_target)#训练的得分
test_score=model.score(test_data,test_target)#测试得分
print('train score:{train_score:.6f};test score:{test_score:.6f}'.format(train_score=train_score,test_score=test_score))
import numpy as np
y_pred=model.predict(test_data)#进行预测
print('matchs:{0}/{1}'.format(np.equal(y_pred,test_target).shape[0],test_target.shape[0]))

 

posted on 2020-04-27 14:13  ccl666  阅读(190)  评论(0编辑  收藏  举报