我是靠谱客的博主 独特小土豆,最近开发中收集的这篇文章主要介绍李宏毅机器学习笔记--Regression,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Regression

可以做什么?

  • Stock Market Forecast
  • Self-driving Car (输出方向盘角度)
  • Recommendation (购买商品的可能性,根据可能性的大小决定是否给用户推荐
    。。。

步骤

  • Step1 : Model

    • 就是建立一个函数: y = b + W * X (W and b are prameters which can be any
      value)

    • like a Linear model : y = b + ∑ W i ∗ X i y = b + sum W_{i}*X_{i} y=b+WiXi
      (Xi : an attribute if input X feature Wi : weight b: bias )

  • Step2 : Goodness of Function
    在这里插入图片描述

    • training data (有输入,有输出)
    • Loss function L => 一个函数用于评价 b 和 w 的好坏。
    • input : a function, ouput : how bad it is
    • L(f) = L(w,b) = y = ∑ ( y ^ n − ( b + w ∗ x n c p ) ) 2 y = sum (widehat{y}^{n} - (b + w * x_{n}^{cp}))^{2} y=(y n(b+wxncp))2 (真实值 - 预测值)^2的求和
  • Step 3 : Best Function

  • 在这里插入图片描述

Gradient Descent

**Gradient Descent** 就是用来解决这个问题的,用来找出一个最小的Function 只要这个函数是可微的,那么就可以使用Gradient Descent来求解 。
  • Consider loss function L(W) with one parameter w
    在这里插入图片描述
    • 最简单的方法就是枚举所有w,来找出使得 Loss 最小的 parameter,但是这样是没有效率的
    • (Randomly) Pick an initial value w 0 w^0 w0
    • Compute d L d w ∣ w = w 0 frac{dL}{dw} |_{w=w^0} dwdLw=w0
      • 倒数值代表的是 W 0 W^0 W0点出切线的斜率
      • 如果该值是 负的 则 增加W
      • 如果该值是 正的 则 减少W
      • W n e w = W o l d − η ∗ d L d w ∣ w = w 0 W_{new} = W_{old} - eta * frac{dL}{dw} |_{w=w^0} Wnew=WoldηdwdLw=w0 ( η eta η 叫做 Learning rate)
    • 重复计算 d L d w ∣ w = w 1 frac{dL}{dw} |_{w=w^1} dwdLw=w1**
    • 如果是多个参数则分别计算各个参数的偏导数
      在这里插入图片描述

结果

  • 结果最重要的是 Generalization
  • 我们真正关心的是这个Function在新数据上到错误率(测试集)
  • 结果不好的话,可以重新选择一个model安照上面的方法进行训练

Overfitting

  • model越复杂,在训练集上得到的结果越来越好,但是在测试集上结果确越来越差
  • 增加正则化项Regularization
    在这里插入图片描述
    在这里插入图片描述

最后

以上就是独特小土豆为你收集整理的李宏毅机器学习笔记--Regression的全部内容,希望文章能够帮你解决李宏毅机器学习笔记--Regression所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部