机器学习入门笔记——线性回归
关于机器学习的应用场景推荐算法网页推荐数据挖掘无人驾驶人工智能智能医疗…机器学习的定义计算机程序从经验E中学习任务T。 并用度量P来衡量性能。条件是它由P定义的关于T的性能随着经验E而提高。机器学习分类监督性学习回归问题->连续型数据线性回归分析训练集函数:h(x)=θ0+θ1xh(x)=\theta_0+\theta_1x代价函数J(θ0,θ1)=12m∑k
关于机器学习的应用场景
- 推荐算法
- 网页推荐
- 数据挖掘
- 无人驾驶
- 人工智能
- 智能医疗
- …
机器学习的定义
计算机程序从经验E中学习任务T。 并用度量P来衡量性能。条件是它由P定义的关于T的性能随着经验E而提高。
机器学习分类
监督性学习
回归问题->连续型数据
线性回归分析
训练集
函数:h(x)=θ0+θ1x<script type="math/tex" id="MathJax-Element-161">h(x)=\theta_0+\theta_1x</script>
代价函数J(θ0,θ1)=12m∑mk=1(h(xi)−yi)2<script type="math/tex" id="MathJax-Element-162">J{(\theta_0,\theta_1)=}{1\over 2m}\sum_{k=1}^m(h(x_i)-y_i)^2</script>
梯度下降法最小化代价函数值
θi:=θi−α∗∂∂θiJ(θi)<script type="math/tex" id="MathJax-Element-163">\theta_i:=\theta_i-\alpha*{\partial \over \partial\theta_i}J(\theta_i)</script>
(α为学习速率)<script type="math/tex" id="MathJax-Element-164">(\alpha为学习速率)</script>
越接近局部最小点变化越慢。
矩阵和向量
* 矩阵的维数等于矩阵的行数乘以矩阵的列数
* 向量可以被视为只有一列的矩阵
多个训练集的情况,即多元线性回归
多个训练集时,用向量标注。
h(x)=θ0+∑mi=1θixi<script type="math/tex" id="MathJax-Element-165">h(x)=\theta_0+\sum_{i=1}^m\theta_ix_i</script>(可以看做是x0<script type="math/tex" id="MathJax-Element-166">x_0</script>恒为1)
x(i)j<script type="math/tex" id="MathJax-Element-167">x_j^{(i)}</script>表示第i个样本里头的第j个特征量
X=(x0x1x2…xn)<script type="math/tex" id="MathJax-Element-168">\begin{pmatrix} x_0&x_1&x_2&…&x_n \end{pmatrix}</script> θ=(θ0θ1θ2…θn)<script type="math/tex" id="MathJax-Element-169">\theta = \begin{pmatrix} \theta_0&\theta_1&\theta_2&…&\theta_n \end{pmatrix}</script>
h(x)=θTX<script type="math/tex" id="MathJax-Element-170">h(x)=\theta^TX</script>
依次更新每一个θ<script type="math/tex" id="MathJax-Element-171">\theta</script>的值:θj:=θj−α1m(hθ(xi)−yi)xij(j从0循环到n)<script type="math/tex" id="MathJax-Element-172">\theta_j:=\theta_j-\alpha{1\over m}(h_\theta(x^i)-y^i)x^i_j(j从0循环到n)</script>
梯度下降法中的技巧
特征缩放(feature scaling)
关键在于保证特征值的范围大小相近,最好是将xi<script type="math/tex" id="MathJax-Element-173">x_i</script>的范围大约约束到-1到1之间。(x0<script type="math/tex" id="MathJax-Element-174">x_0</script>恒为1所以已经在范围之内了)
均值统一化(mean normalization)
将xi<script type="math/tex" id="MathJax-Element-175">x_i</script>用xi−uisi<script type="math/tex" id="MathJax-Element-176">x_i-u_i\over{s_i}</script>代替使得特征值的平均值接近0,x0<script type="math/tex" id="MathJax-Element-177">x_0</script>不用处理
选择合适的特征值
可以通过已有特征值定义新的,更合适的特征值。
多项式回归分析
比如现在的特征值为s,h(x)=θ0+θ1x1+θ2x2=θ0+θ2s+θ3s2<script type="math/tex" id="MathJax-Element-178">h(x)=\theta_0+\theta_1x1+\theta_2x_2=\theta_0+\theta_2s+\theta_3s^2</script>那么就可以使x1=s,x2=s2<script type="math/tex" id="MathJax-Element-179">x_1=s,x_2=s^2</script>将多项式回归转化成多元回归分析
标准方程法
θ=(XTX)−1XTY<script type="math/tex" id="MathJax-Element-180">\theta={(X^TX)}^{-1}X^TY</script>(其中X为一个(n+1)*m维矩阵用来表示m个训练集,Y为m维向量用来表示m个结果)
分类问题->离散型数据
更多推荐
所有评论(0)