第一阶段-第2天-数学基础:平均值、平方、直线方程
2026/7/21 8:09:51 网站建设 项目流程

今日目标

  1. 理解平均值的计算
  2. 理解平方的含义
  3. 掌握直线方程 y = wx + b
  4. 能在纸上画出不同w和b对应的直线

学习内容

1. 平均值

平均值的公式:

平均值 = 所有数之和 ÷ 数的个数

Python实现:

数据=[1,3,5,7,9]总和=0forxin数据:总和+=x 平均值=总和/len(数据)print(平均值)# 输出 5.0

更简洁的写法:

数据=[1,3,5,7,9]平均值=sum(数据)/len(数据)print(平均值)# 输出 5.0

2. 平方

平方的含义:一个数乘以它自己。

x=5平方=x*xprint(平方)# 输出 25

为什么模型训练要用平方?

假设真实值是5,模型预测值是3,误差是2。

如果用绝对值:|3 - 5| = 2

如果用平方:(3 - 5)² = (-2)² = 4

平方的好处:

  • 负数变正数,不会抵消
  • 大误差惩罚更重(误差越大,平方后差距越大)
  • 求导方便

举例对比:

误差绝对值平方
111
224
339
1010100

可以看到,平方对大误差的惩罚明显更重。

3. 直线方程 y = wx + b

这是所有线性模型的根基。

  • w(权重/斜率):x每增加1,y增加多少
  • b(偏置/截距):当x=0时,y的值

示例:

def直线方程(x,w,b):"""计算直线上的点"""returnw*x+b# w=2, b=1 时forxinrange(5):y=直线方程(x,2,1)print(f"x={x}, y={y}")

输出:

x=0, y=1 x=1, y=3 x=2, y=5 x=3, y=7 x=4, y=9

4. 可视化理解w和b的作用

importmatplotlib.pyplotasplt x_values=[0,1,2,3,4,5]# 不同的wplt.figure(figsize=(12,5))plt.subplot(1,2,1)forwin[0.5,1,2,3]:y=[w*xforxinx_values]plt.plot(x_values,y,label=f"w={w}, b=0")plt.xlabel("x")plt.ylabel("y")plt.title("不同w的效果(b=0)")plt.legend()plt.grid(True)# 不同的bplt.subplot(1,2,2)forbin[-2,0,2,4]:y=[1*x+bforxinx_values]plt.plot(x_values,y,label=f"w=1, b={b}")plt.xlabel("x")plt.ylabel("y")plt.title("不同b的效果(w=1)")plt.legend()plt.grid(True)plt.tight_layout()plt.savefig("/tmp/w_b_visualization.png")print("图表已保存到 /tmp/w_b_visualization.png")

今日练习

练习1:计算平均值

scores=[85,92,78,95,88]# 方法1:手动计算total=0forsinscores:total+=s avg1=total/len(scores)# 方法2:用sum函数avg2=sum(scores)/len(scores)print(f"平均分:{avg1}")print(f"验证:{avg2}")

练习2:计算均方误差

真实值=[1,3,5,7,9]预测值=[1.5,2.8,5.2,6.9,9.5]# 计算每个预测的误差平方误差平方列表=[]for真实,预测inzip(真实值,预测值):误差=预测-真实 误差平方=误差**2误差平方列表.append(误差平方)print(f"真实={真实}, 预测={预测}, 误差={误差:.2f}, 误差平方={误差平方:.2f}")# 计算均方误差mse=sum(误差平方列表)/len(误差平方列表)print(f"\n均方误差(MSE):{mse:.4f}")

练习3:画直线

# 在纸上或代码中,画出以下三条直线,观察它们的区别# 1. y = 0*x + 1 (水平线)# 2. y = 1*x + 0 (45度斜线)# 3. y = 2*x + 1 (更陡的斜线)forw,bin[(0,1),(1,0),(2,1)]:print(f"\nw={w}, b={b}时:")forxinrange(5):y=w*x+bprint(f" x={x}, y={y}")

验收标准

  • 能手动计算一组数据的平均值
  • 能解释为什么用平方而不是绝对值
  • 能说出w和b分别控制直线的什么特性
  • 给定w和b,能计算出对应直线上任意点的坐标

下节课预告

下节课将学习数据准备:如何组织训练数据、特征与标签的概念。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询