sk-learn学习笔记

1.线性回归

1.1数据生成

使用随机数据作训练集时,可人为加入噪声:

y_train = (true_fun(X_train) + np.random.randn(n_samples) * 0.05).reshape(n_samples,1)

1.2定义模型

from sklearn.linear_model import LinearRegression # 导入线性回归模型
model = LinearRegression() # 定义模型
model.fit(X_train[:,np.newaxis], y_train) # 训练模型
print("输出参数w:",model.coef_) # 输出模型参数w
print("输出参数b:",model.intercept_) # 输出参数b

由于线性回归较为简单,参数较少,故可直接使用,然后训练得到拟合后的参数。

1.3模型测试与比较

X_test = np.linspace(0, 1, 100)
plt.plot(X_test, model.predict(X_test[:, np.newaxis]), label="Model")
plt.plot(X_test, true_fun(X_test), label="True function")
plt.scatter(X_train,y_train) # 画出训练集的点
plt.legend(loc="best")
plt.show()

先生成测试数据,通过图像可视化结果看算法预测与实际结果的差距。

2.多项式回归

tips:

多项式回归的一般思路:将m次多项式方程转化为m线性回归方程,然后使用线性回归的方法求出相应的参数。 算法实现时同理,将多项式特征分析器和线性回归串联,算出线性回归的参数之后倒推即可。

pipeline串联用法:

参考帖:https://blog.csdn.net/u010230273/article/details/98493025

3.逻辑回归学习心得:

这一部分主要使用逻辑回归做了二分类任务并在minist数据集上进行了训练和测试,期间使用了transformer进行图像信息的转换,用优化器最小化损失函数。

教程中使用了二阶优化算法中的拟牛顿法,其中牛顿法与梯度下降法的效率对比参考了:

https://www.cnblogs.com/maybe2030/p/4751804.html


 

sk-learn教程参考链接:https://github.com/datawhalechina/machine-learning-toy-code

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值