天池龙珠训练营-机器学习学习笔记-01逻辑回归

天池龙珠训练营-机器学习学习笔记-01逻辑回归

本学习笔记为阿里云天池龙珠计划机器学习训练营的学习内容,学习链接为:训练营网址

一 逻辑回归 原理简介:

Logistic回归虽然名字里带“回归”,但是它实际上是一种分类方法,主要用于两分类问题(即输出只有两种,分别代表两个类别)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二 程序函数

  1. from sklearn.linear_model import LogisticRegression   #  导入
    
  2. lr_clf = LogisticRegression()    # 调用-----逻辑回归模型
    

#用逻辑回归模型----拟合----构造的数据集,x_fearures为输入特征,y_label为预测的类别。 其-拟合方程为 y=w0+w1x1+w2x2

  1. lr_clf = lr_clf.fit(x_fearures, y_label) 
    

查看其对应模型的w – 》 lr_clf.coef_ ,根据x确定w的个数;
查看其对应模型的w0 --》lr_clf.intercept_。

  1. print(lr_clf.coef_,lr_clf.intercept_)
    

利用训练好的模型进行-----预测

  1. y_label_new1_predict = lr_clf.predict(x_fearures_new1)        #       y_label_new1_predict = [0]
    

逻辑回归模型是概率预测模型,利用 predict_proba 函数预测其每一类概率

  1. y_label_new1_predict_proba = lr_clf.predict_proba(x_fearures_new1)    #        y_label_new1_predict_proba = [[0.67507358 0.32492642]]
    

三 数据读取/载入

我们利用 sklearn 中自带的 iris 数据作为数据载入,并利用Pandas转化为DataFrame格式*

  1. from sklearn.datasets import load_iris
    
  2. data = load_iris() #得到数据特征
    
  3.  iris_target = data.target #得到数据对应的----标签y
    
  4.  iris_features = pd.DataFrame(data=data.data,
    
  5.  columns=data.feature_names)  #利用Pandas转化为DataFrame格式,得到数据对应的x
    
  6. iris_features.info()#利用.info()查看数据的整体信息
    
  7. iris_features.head()  #进行简单的数据查看,我们可以利用 .head() 头部.tail()尾部
    

[   iris_features.head()

  1.  iris_features.tail()
    
  2.  iris_features.describe()  # 对于特征进行一些----统计描述
    

四 结果可视化

1 两个特征可以用 plt.scatter进行绘图。

scatter绘图

2 多个特征

利用accuracy(准确度)------【预测正确的样本数目占总预测样本数目的比例】评估模型效果 —metrics.accuracy_score

  1.    from sklearn import metrics
    
  2.    print('The accuracy of the Logistic Regression is:',metrics.accuracy_score(y_train,train_predict))
    

print(‘The accuracy of the Logistic Regression is:’,metrics.accuracy_score(y_test,test_predict))

查看-----混淆矩阵 (预测值和真实值的各类情况统计矩阵)----- metrics.confusion_matrix

  1. confusion_matrix_result = metrics.confusion_matrix(test_predict,y_test)
    

print(‘The confusion matrix result:\n’,confusion_matrix_result)

#利用----热力图-----对于结果进行可视化 sns.heatmap

  1. plt.figure(figsize=(8, 6)) 
    
  2. sns.heatmap(confusion_matrix_result,annot=True, cmap='Blues')
    
  3. plt.xlabel('Predicted labels')
    
  4. plt.ylabel('True labels') 
    
  5. plt.show()
    

热力图
[1]: 相关参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值