1. 机器学习概览
-
机器学习是一种使计算机能够通过经验学习并改进自身表现的技术。机器学习的目标是寻找一个函数,这个函数能够处理输入数据并产生期望的输出结果。
-
回归是指机器学习任务中输出是一个数值的情况。例如,预测明天的PM2.5数值。
-
分类则是让机器从给定的类别中选择一个作为输出。例如,检测邮件是否为垃圾邮件。
-
结构化学习涉及生成具有结构的输出,如让机器画一幅画或者写一篇文章。
2. 机器学习案例分析
-
案例: 预测视频频道的点击次数。
-
机器学习流程:
-
步骤1: 构建模型
- 写出一个带有未知参数的函数(模型),用于预测未来观看次数。
- 例如,
y = b + wx1
,其中y
是预测的观看次数,x1
是前一天的观看次数,b
和w
是未知参数。
-
步骤2: 定义损失函数
- 损失函数用于评估模型预测值与实际值之间的差异。
- 例如,如果
b = 500
和w = 1
,则预测函数为y = 500 + x1
。 - 计算每一条记录的预测值与实际值之间的差距,并求平均值得到损失。
-
步骤3: 最优化
- 使用梯度下降算法来调整模型参数,以最小化损失函数。
- 初始参数随机选取,然后根据损失函数的梯度来更新参数。
- 更新规则为:
w1 ← w0 - η ∂L/∂w | w=w0
,其中η
是学习率。 - 梯度下降过程中可能遇到局部最小值,但这通常不是一个严重的问题。
-
-
结果:
- 在训练数据上找到了最佳参数
w* = 0.97
,b* = 100
。 - 使用这些参数得到的平均误差约为 480。
- 在未见过的数据上(2021年的数据),模型的误差为 0.58。
- 在训练数据上找到了最佳参数
TASK1一些问题的理解
函数,和函数模型有什么区别?
在机器学习中,函数指的是数学上定义的输入与输出之间的关系。函数模型则是在机器学习中使用的一种特殊函数形式,它含有未知参数,这些参数需要通过数据来确定。例如,在预测视频频道观看次数的例子中,函数模型可以写成 (y = b + wx_1),其中 (y) 是预测的观看次数,(x_1) 是前一天的观看次数,而 (b) 和 (w) 是未知参数。定义损失函数后,通过梯度下降等优化方法来调整这些参数,以最小化预测值与实际值之间的差距。最终的目标是找到最佳的参数值,使得模型能准确预测未来的观看次数。
机器学习找函数的3个步骤
-
构建模型:首先,需要构建一个带有未知参数的函数(模型),该函数能够用来预测未来的输出。例如,在预测视频频道观看次数的例子中,模型可以被定义为 (y = b + wx_1),其中 (y) 是预测的观看次数,(x_1) 是前一天的观看次数,(b) 和 (w) 是未知的参数。
-
定义损失函数:接着,需要定义一个损失函数,该函数用于衡量模型预测值与实际值之间的差距。损失函数的输入是模型的参数,输出是一个数值,代表预测的好坏程度。例如,假设模型参数被设定为 (b = 500) 和 (w = 1),则预测函数变为 (y = 500 + x_1)。然后使用训练数据计算损失,损失函数可以采用均方误差(MSE)或其他度量方式。
-
最优化:最后,通过优化算法(如梯度下降)来调整模型参数,以最小化损失函数。这涉及到计算损失函数相对于模型参数的梯度,并沿着梯度的反方向更新参数,直到找到使损失最小化的参数值。
这些步骤在机器学习文献中是非常标准的,也被广泛应用于各种机器学习任务中。例如,在预测视频观看次数的例子中,通过调整权重 (w) 和偏置 (b),可以使预测更加准确。
TASK1中的公式学习理解
为什么局部最小是一个假问题,局部最小怎么解决?真正的难题是什么?
在机器学习中,局部最小值通常被视为一个挑战,但实际上它可能并不是一个真正的问题。在高维空间中,局部最小值往往更像是鞍点,而不是真正的陷阱,这意味着即使算法陷入局部最小值,也很容易在其他维度上逃离出来。解决局部最小值的方法包括使用动量项、随机初始化以及调整学习率等策略。实际上,在高维空间中,真正的挑战是如何找到足够好的解,而不是绝对的全局最小值。这是因为即使是局部最小值也可能足够接近全局最小值,从而提供满意的性能。因此,局部最小值在实践中往往不是真正的难题。————来自网络搜索
总结
通过本次学习,我了解到机器学习的核心在于构建一个能够预测未来结果的模型,并通过优化过程来调整模型参数以提高预测准确性。虽然梯度下降法可能会遇到局部最小值的问题,但通常来说,这种方法仍然是有效的。此外,我还学到了模型在训练数据上的性能通常优于新数据上的性能,这是由于过拟合等因素造成的。今后也继续努力。