机器学习训练营机器学习算法(一): 基于逻辑回归的分类预测学习笔记

机器学习训练营机器学习算法(一): 基于逻辑回归的分类预测学习笔记

一、学习知识点概要

LogisticRegression模型:

  • 使用sklearn中的LogisticRegression模型进行训练、预测、查看参数

数据处理:

  • 将数据转化为DataFrame格式,并做简单的分析

可视化:

  • 使用pandas和seaborn对数据进行可视化,会画散点图、contour图、pairplot、boxplot图

二、学习内容

主要对编程实践过程中用到的知识点进行总结。

LogisticRegression模型

## 导入逻辑回归模型函数
from sklearn.linear_model import LogisticRegression
## 调用逻辑回归模型
lr_clf = LogisticRegression()
## 用逻辑回归模型拟合构造的数据集
lr_clf = lr_clf.fit(x_fearures, y_label) 
## 查看其对应模型的w
print('the weight of Logistic Regression:',lr_clf.coef_)
## 查看其对应模型的w0
print('the intercept(w0) of Logistic Regression:',lr_clf.intercept_)
## 做预测
z_proba = lr_clf.predict_proba(features) #属于每一类的概率
y_label_new1_predict = lr_clf.predict(features) #标签预测

数据处理

##生成格点
nx, ny = 200, 100
x_min, x_max = plt.xlim()
y_min, y_max = plt.ylim()
x_grid, y_grid = np.meshgrid(np.linspace(x_min, x_max, nx),np.linspace(y_min, y_max, ny))
#对格点进行预测
z_proba = lr_clf.predict_proba(np.c_[x_grid.ravel(), y_grid.ravel()])
z_proba = z_proba[:, 1].reshape(x_grid.shape)

#利用Pandas转化为DataFrame格式
iris_features = pd.DataFrame(data=data.data, columns=data.feature_names) 
## 利用.info()查看数据的整体信息
iris_features.info()
## 进行简单的数据查看,我们可以利用 .head() 头部.tail()尾部
iris_features.head()
iris_features.tail()
## 利用value_counts函数查看每个类别数量
pd.Series(iris_target).value_counts()
## 对于特征进行一些统计描述
iris_features.describe()

可视化

import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

plt.figure()
## 可视化训练样本
plt.scatter(x_fearures[:,0],x_fearures[:,1], c=y_label, s=50, cmap='viridis')
plt.title('Dataset')
# 可视化决策边界
plt.contour(x_grid, y_grid, z_proba, [0.5], linewidths=2., colors='blue')
plt.show()
## 特征与标签组合的散点可视化
sns.pairplot(data=iris_all,diag_kind='hist', hue= 'target')
plt.show()
## 箱型图
for col in iris_features.columns:
    sns.boxplot(x='target', y=col, saturation=0.5,palette='pastel', data=iris_all)
    plt.title(col)
    plt.show()
# 利用热力图对于结果进行可视化
plt.figure(figsize=(8, 6))
sns.heatmap(confusion_matrix_result, annot=True, cmap='Blues')
plt.xlabel('Predicted labels')
plt.ylabel('True labels')
plt.show()

三、学习问题与解答

对于逻辑回归的推导,可以参考西瓜书。多分类的逻辑回归sklearn默认采用OVR模式。

四、学习思考与总结

主要学习了逻辑回归算法使用sklearn进行实践。其中调包比较简单,不熟悉的是使用matplotlib和seaborn进行可视化,以及使用pandas处理数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值