机器学习算法——线性回归

简介: 最近一直在学机器学习,但感觉学习效率低,理解不深入,所以想通过写博客总结来加深自己的理解,写一下我的理解过程, 也希望能帮到其他人。

最近一直在学机器学习,但感觉学习效率低,理解不深入,所以想通过写博客总结来加深自己的理解,写一下我的理解过程, 也希望能帮到其他人。

 现在过头来看,线性回归其实是机器学习最简单的算法了,所以大部分机器学习的课程都拿它开刀。为什么之前一直都觉得机器学习算法比数据结构什么的那些算法难很多呢,我觉得是机器学习算法背后涉及的数学知识比较多,就比如线性回归,涉及到矩阵乘法、求逆,函数求导,其他算法再加上一个概率论。如果你觉得机器学习算法学起来比较吃力,建议还是回顾下数学。

 线性回归的用途我就不再多说了,直接开始。其实整个算法都围绕下面这一个公式,我们其实是想用一条线来表示出X和y之间的变化关系。我们有测试数据X,和其对应的结果y,其实就是想知道theta。假设X,y不是一个向量,只是一个数,theta就很好求了,直接y/X就得到theta了。但在机器学习中,theta不是简单的一个值,而是由多个值组成的向量。

y=hθ(x)

y=hθ(x)


 求解线性回归,多用的是最小二乘法。想想看,我们什么时候能确定我们求到的theta值是正确的? 是不是相当于 theta*x 和y 差值最小的时候,这里为了后面计算方便,我们取差值的平方。这里我们构造出一个关于theta的凸函数。 其实当这个函数值虽小的时候,我们得到的theta是最准确的,因为函数值和实际值差值最小嘛。

J(θ)=∑i=1m(hθ(xi)−yi)2

J(θ)=∑i=1m(hθ(xi)−yi)2


 如何计算呢? 在上式子中,我们已知x和y,这里就变成一个单纯关于theta 的函数,我们可以用梯度下降来求theta的值。

 首先求

y=θTX

y=θTX


 其实我们也可以用y/x的方式来求解theta的值,但这个时候用的除法就不是小学学的那种除法,而是矩阵的除法。不过一般矩阵都不说除法的,都是乘以逆矩阵来表示除法,于是可能想当然的得到下下面这个 错误 公式,因为这个不符合矩阵的运算法则。。

θT=y∗X−1

θT=y∗X−1


 其实真正的解析解计算公式是下面这个,但在其计算过程中需要求逆矩阵,效率会比较低, 有可能矩阵不可逆。

θ=(XTX)−1XTy

目录
相关文章
|
2月前
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
141 4
|
4天前
|
机器学习/深度学习 人工智能 算法
机器学习算法的优化与改进:提升模型性能的策略与方法
机器学习算法的优化与改进:提升模型性能的策略与方法
45 13
机器学习算法的优化与改进:提升模型性能的策略与方法
|
20天前
|
算法
PAI下面的gbdt、xgboost、ps-smart 算法如何优化?
设置gbdt 、xgboost等算法的样本和特征的采样率
42 2
|
1月前
|
机器学习/深度学习 人工智能 算法
探索机器学习:从线性回归到深度学习
本文将带领读者从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将通过代码示例,展示如何实现这些算法,并解释其背后的数学原理。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和知识。让我们一起踏上这段激动人心的旅程吧!
|
2月前
|
机器学习/深度学习 算法 数据挖掘
C语言在机器学习中的应用及其重要性。C语言以其高效性、灵活性和可移植性,适合开发高性能的机器学习算法,尤其在底层算法实现、嵌入式系统和高性能计算中表现突出
本文探讨了C语言在机器学习中的应用及其重要性。C语言以其高效性、灵活性和可移植性,适合开发高性能的机器学习算法,尤其在底层算法实现、嵌入式系统和高性能计算中表现突出。文章还介绍了C语言在知名机器学习库中的作用,以及与Python等语言结合使用的案例,展望了其未来发展的挑战与机遇。
52 1
|
2月前
|
机器学习/深度学习 人工智能 算法
探索机器学习中的线性回归模型
本文深入探讨了机器学习中广泛使用的线性回归模型,从其基本概念和数学原理出发,逐步引导读者理解模型的构建、训练及评估过程。通过实例分析与代码演示,本文旨在为初学者提供一个清晰的学习路径,帮助他们在实践中更好地应用线性回归模型解决实际问题。
|
2月前
|
机器学习/深度学习 自然语言处理 算法
深入理解机器学习算法:从线性回归到神经网络
深入理解机器学习算法:从线性回归到神经网络
|
2月前
|
机器学习/深度学习 算法
深入探索机器学习中的决策树算法
深入探索机器学习中的决策树算法
43 0
|
2月前
|
机器学习/深度学习 算法 Python
机器学习入门:理解并实现K-近邻算法
机器学习入门:理解并实现K-近邻算法
41 0
|
8月前
|
机器学习/深度学习 存储 搜索推荐
利用机器学习算法改善电商推荐系统的效率
电商行业日益竞争激烈,提升用户体验成为关键。本文将探讨如何利用机器学习算法优化电商推荐系统,通过分析用户行为数据和商品信息,实现个性化推荐,从而提高推荐效率和准确性。
259 14