▼点击下方卡片关注我
▲点击上方卡片关注我
机器学习听着很高大上,但其实没那么玄乎。要是你有Python基础,用 Scikit-learn 这个库分分钟就能上手机器学习。今天咱们就从零开始,看看怎么用这个强大的工具包来训练模型、做预测。
安装和准备工作
说实话,安装scikit-learn特别简单:
1pip install scikit-learn
装好后,还得把常用的依赖库也导进来:
1import numpy as np
2from sklearn import datasets
3from sklearn.model_selection import train_test_split
4from sklearn.linear_model import LogisticRegression
⚠️ 小贴士:
- 建议用虚拟环境安装,避免跟其他项目冲突
- numpy和pandas最好提前装好,scikit-learn经常跟它们一起用
- Python版本推荐3.7以上,不然可能会遇到兼容性问题
数据集:从哪开始练手?
刚开始学不知道用啥数据?scikit-learn自带了好几个经典数据集,咱们拿鸢尾花数据来玩:
1# 加载鸢尾花数据集
2iris = datasets.load_iris()
3X = iris.data
4y = iris.target
6# 看看数据长啥样
7print(“数据集大小:”, X.shape)
8print(“特征名称:”, iris.feature_names)
数据集搞定了,接下来要把数据分成训练集和测试集,这样才能检验模型效果:
1# 分割训练集和测试集
2X_train, X_test, y_train, y_test = train_test_split(
3X, y, test_size=0.2, random_state=42
4)
训练模型:简单得有点扯
啥?就这么几行代码就能训练模型?没错,用scikit-learn就是这么简单:
1# 创建逻辑回归模型
2model = LogisticRegression(max_iter=1000)
4# 训练模型
5model.fit(X_train, y_train)
7# 预测
8y_pred = model.predict(X_test)
10# 看看准确率
11accuracy = model.score(X_test, y_test)
12print(f“模型准确率: {accuracy:.2f}”)
⚠️ 小贴士:
- max_iter设大点,不然容易报警告
- random_state固定一下,方便复现结果
- 准确率不是唯一指标,实际项目还得看具体场景
模型评估:光看准确率可不够
真实项目里,光看准确率可不够严谨。咱们再加点评估指标:
1from sklearn.metrics import classification_report
3# 生成详细的评估报告
4report = classification_report(y_test, y_pred)
5print(“模型评估报告:\n”, report)
保存模型:辛苦训练的成果得留着
模型训练好了,总不能每次都重新训练吧?保存下来下次接着用:
1import joblib
3# 保存模型
4joblib.dump(model, 'iris_model.pkl')
6# 加载模型
7loaded_model = joblib.load('iris_model.pkl')
⚠️ 小贴士:
- 模型文件可能比较大,记得gitignore里加上*.pkl
- 记得把训练时用的特征处理步骤也一起保存
- 换环境部署时要注意版本兼容性
这玩意就跟写代码一样,关键是多练。scikit-learn上手门槛低,文档齐全,社区活跃,绝对是机器学习入门的好帮手。找几个数据集自己试试,慢慢就熟悉了。
代码我都放在这个Notebook里了(别试了,这是个虚拟链接),想动手实践的可以下载下来玩玩。遇到啥问题欢迎来找我唠嗑~
推 荐 阅 读
PyQt:桌面应用开发神器,让你的GUI更出彩!
prettytable:表格输出神器,数据展示更美观!
一文教会你用Python训练专属AI模型...
点赞分享
让钱和爱流向你