AI Python基础教程:用虚拟环境跑通第一个机器学习模型
零基础学AI,最怕一上来就啃高数和线代。
更实际的做法是先把Python环境搭好,用现成的库跑通一个最小的分类模型,看到准确率数字,再回头补理论。
这篇AI Python基础教程就按这个顺序走:装Python、建虚拟环境、装库、跑模型、验证结果,每一步都给出命令和预期输出。
先确认电脑上有没有Python
打开终端(Windows用PowerShell或CMD,macOS和Linux用Terminal),输入:
python --version
如果返回类似 Python 3.10.12 的版本号,说明已经安装。
如果提示“不是内部或外部命令”或“command not found”,需要先去 python.org 下载安装包。
安装时注意勾选 Add Python to PATH,否则终端找不到python命令。
建议使用 Python 3.9 以上版本,太老的版本可能装不上新版scikit-learn。
版本号不用追求最新,稳定即可。
创建独立虚拟环境,避免污染系统
直接往系统Python里装库,时间久了容易版本冲突。
虚拟环境相当于给每个项目单独开一个房间,库装坏了删掉重来就行。
进入你打算放项目的目录,执行:
mkdir ai-demo && cd ai-demo
python -m venv venv
创建完成后激活虚拟环境:
- Windows PowerShell:
.\venv\Scripts\Activate.ps1 - Windows CMD:
venv\Scripts\activate.bat - macOS/Linux:
source venv/bin/activate
激活后终端提示符前面会出现 (venv) 字样。
以后每次打开新终端跑这个项目,都要先激活一次。
安装scikit-learn并跑通第一个分类模型
scikit-learn是Python里最常用的机器学习库之一,封装好了分类、回归、聚类等算法,适合入门阶段跳过底层实现直接看效果。
在激活的虚拟环境里执行:
pip install scikit-learn
安装完成后,新建文件 first_model.py,写入以下代码:
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score
# 加载鸢尾花数据集
iris = load_iris()
X_train, X_test, y_train, y_test = train_test_split(
iris.data, iris.target, test_size=0.3, random_state=42
)
# 训练决策树分类器
model = DecisionTreeClassifier(random_state=42)
model.fit(X_train, y_train)
# 预测并计算准确率
pred = model.predict(X_test)
print("准确率:", accuracy_score(y_test, pred))
运行:
python first_model.py
如果输出类似 准确率: 1.0,说明模型在测试集上全部分对。
iris数据集比较简单,决策树拿到高分是正常现象,不代表模型万能。
跑不通时先查这三处
报错 ModuleNotFoundError: No module named 'sklearn':说明当前Python环境里没装scikit-learn。
先确认终端提示符有 (venv),再执行 pip install scikit-learn。
如果装到了系统环境,激活虚拟环境后重新装一次。
报错 pip: command not found:虚拟环境可能没创建成功。
删除 venv 目录,重新执行 python -m venv venv,再激活。
准确率明显偏低或每次运行结果不同:检查 random_state 是否固定。
代码里训练集划分和模型都设置了 random_state=42,结果应该可复现。
如果没设置,每次划分不同,准确率会浮动。
另外,Windows上激活脚本可能被系统策略拦截,提示“无法加载文件,因为在此系统上禁止运行脚本”。
可以改用CMD激活,或在PowerShell中执行 Set-ExecutionPolicy -Scope CurrentUser RemoteSigned 后重试。
结果验证与下一步
看到准确率数字只是起点。
建议做两件事验证自己真的跑通了:一是把 test_size 改成0.2,观察准确率变化;
二是把模型换成 from sklearn.linear_model import LogisticRegression,对比两个模型的结果。
能独立完成这两处修改,说明环境、库和基本流程都已经打通。
后续想深入,可以在这个基础上学习特征工程和模型评估指标,但不要跳过“先跑通”这一步。
环境问题解决不了时,优先检查虚拟环境是否激活、pip是否指向当前环境,这两点能覆盖大部分新手卡点。