前言

Jupyter Notebook 是一款强大的工具,尤其适合进行交互式开发和数据探索。本文将详细且循序渐进地引导你使用 Jupyter Notebook 开发第一个人工智能程序,我们以简单的线性回归模型为例。线性回归作为机器学习中基础的算法,是人工智能领域的一个重要分支。

一、安装 Jupyter Notebook 及必要库

在开启开发之旅前,你得确保已经安装了 Python 环境。之后,可借助以下命令安装 Jupyter Notebook 以及所需的库,这些库包括 numpy、pandas、scikit-learn 和 matplotlib:

pip install jupyter numpy pandas scikit-learn matplotlib

二、启动 Jupyter Notebook

在命令行中输入以下命令来启动 Jupyter Notebook:

jupyter notebook

执行该命令后,系统会自动打开浏览器,并展示 Jupyter Notebook 的界面,方便你后续操作。

三、创建新的 Notebook

进入 Jupyter Notebook 界面后,点击右上角的“New”按钮,然后选择“Python 3”,即可创建一个全新的 Python 3 Notebook,为编写代码做好准备。

四、编写人工智能程序

在新创建的 Notebook 里,按照以下详细步骤编写线性回归模型的代码:

1、导入必要的库

首先,我们需要导入程序运行所需的各类库,代码如下:

import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt

这里,numpy 用于数值计算,pandas便于数据处理,train_test_split 用于划分数据集,LinearRegression是线性回归模型的实现,matplotlib则用于数据可视化。

2、生成示例数据

为了训练和测试线性回归模型,我们需要生成一些示例数据。以下代码将生成随机数据,并对其进行可视化展示:

# 生成随机数据
np.random.seed(0)
X = 2 * np.random.rand(100, 1)
y = 4 + 3 * X + np.random.randn(100, 1)

# 可视化数据
plt.scatter(X, y)
plt.xlabel('X')
plt.ylabel('y')
plt.show()

通过设置随机种子 np.random.seed(0),我们可以确保每次运行代码时生成的数据是一致的。生成的数据 X 和 y之间存在一定的线性关系,同时添加了一些随机噪声。

3、划分训练集和测试集

为了评估模型的性能,我们需要将数据集划分为训练集和测试集。使用 train_test_split 函数可以轻松实现这一操作:

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

这里,test_size=0.2 表示将 20% 的数据作为测试集,random_state=42 确保每次划分的结果相同,方便结果的复现。

4、创建并训练线性回归模型

接下来,我们创建一个线性回归模型,并使用训练集对其进行训练:

# 创建线性回归模型
model = LinearRegression()

# 训练模型
model.fit(X_train, y_train)

LinearRegression()创建了一个线性回归模型的实例,fit()方法用于对模型进行训练,使其学习训练集中数据的特征和规律。

5、进行预测并评估模型

训练好模型后,我们使用测试集进行预测,并输出模型的系数和截距,同时对预测结果进行可视化:

# 在测试集上进行预测
y_pred = model.predict(X_test)

# 输出模型的系数和截距
print('Coefficients:', model.coef_)
print('Intercept:', model.intercept_)

# 可视化预测结果
plt.scatter(X_test, y_test, color='blue')
plt.plot(X_test, y_pred, color='red', linewidth=2)
plt.xlabel('X')
plt.ylabel('y')
plt.show()

predict() 方法用于对测试集进行预测,得到预测结果 y_pred。模型的系数和截距反映了线性回归方程的参数,通过 model.coef_ 和 model.intercept_可以获取这些信息。可视化结果中,蓝色散点表示测试集的真实数据,红色直线表示模型的预测结果。

五、运行代码

在每个代码单元格中,按下 Shift + Enter 组合键即可运行代码。你可以逐步运行每个单元格,仔细观察代码的执行结果,深入理解每一步的操作和效果。

线性回归数据可视化
线性回归预测结果可视化

六、保存和分享

完成代码的编写和运行后,你可以点击 Jupyter Notebook 界面中的“File” -> “Save and Checkpoint” 来保存你的 Notebook。此外,你还能将 Notebook 导出为不同的格式,如 .py、.html 等,方便与他人分享你的工作成果。通过以上详细步骤,你就能够熟练使用 Jupyter Notebook 开发并运行一个简单的人工智能程序,开启你的人工智能学习之旅。

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐