zoukankan      html  css  js  c++  java
  • week_1

    Andrew Ng机器学习笔记---by OrangeStar

    Week 1

    A computer program is said to learn from experience E with respect to some task T and some performance measure P if its performance on T, as measured by P, improves with experience E.


    1.监督学习和非监督学习

    • 监督学习(supervised learning)

      又叫回归问题(regression)

      预测一个连续值的输出(房价预测)(regression)
      或者分类某些数据集(肿瘤识别)(clasification)
     
       

    • 无监督学习(unsupervised learning)
    无监督学习中,所有数据都是一样的
    但是通过无监督学习,可以将所有的数据分为几个不同的聚类。这就是所谓的聚类算法。(网页推送)(声音处理)
    
    总结: 要求找出数据中,蕴含的类型结构
    

    2.线性回归算法(supervised learning)

    符号定义
    = Number of training examples(训练样本数量)
    x's = "input" variable / features
    y's = "output" variable / "target" vaiable
    ((x^{(i)},y^{(i)}))= one training example

    3.代价函数

    (h_ heta)(x) = $$ heta_0 + heta_1x$$
    ( heta_i) 叫做模型参数
    Hypothesis ->假设函数

    要尽量减少(x)与真实数据y的差距

    (J( heta_0, heta_1)=frac {sum^m_{i=1}(h_ heta(x^{(i)})-y^{(i)})^2} {2m})

    找J函数的最小值,这个就是代价函数
    也叫平方误差函数

    之所以选择除2m是因为求导后,恰好等于m

    4.代价函数J(( heta_1))-Intuition

    Goal -> minimize J(( heta_0, heta_1))

    5. 梯度下降 Gradient Descent

    用来求min J(( heta_0, heta_1))

    Gradient descent algorithm:
    repeat until convergence:

    ( heta_j := alphafracdelta {delta heta_j}J( heta_0, heta_1))
    (for j=0 and j=1)

    (要同时更新( heta_0和 heta_1)

    (:=表示赋值)
    ((alpha)叫做学习速率,她控制了”下山的步伐“.即以多大的幅度更新theta)

    1.计算temp0
    2.计算tmep1
    3.赋值给theta0和theta1
    4.如果没有达到停止条件,返回第一步
    

    (alpha)有很重要的作用

    1. 如果太小,会梯度下降得太慢
    2. 如果太大,有可能无法收敛(converge)甚至会发散(diverge)

    6.第一个机器学习算法(线性回归算法)

    Gradient descent algorithm
    Repeat until convergence
    ( heta_0 := heta_0 - alphafrac1msum^m_{i=1}(h_ heta(x^{(i)} - y^{(i)})))
    ( heta_1 := heta_1 - alphafrac1msum_{i=1}^m(h_ heta(x^{(i)} - y^{(i)}) * x^{(i)}))

    结合上一课:可以简写为:

    ( heta_j := alphafracdelta {delta heta_j}J( heta_0, heta_1))

    7.回顾线性代数知识

     

  • 相关阅读:
    Xna小游戏开发【飞机空间大战】 碧血黄沙
    参考XNA官方Platformer模版,修改Platformer为横版可以滚动的小游戏 碧血黄沙
    云计算「半步巅峰」
    get_custom_field使用
    CCTM_FormElement 类
    php opendir说明
    js(chrome)打印对象函数
    operamasks.omItemSelector获取右边框ID方法
    {$vo.CreateDate|date="ymd H:i:s",###}
    添加xmlns:android="http://schemas.android.com/apk/res/android"的意思
  • 原文地址:https://www.cnblogs.com/orangestar/p/11163707.html
Copyright © 2011-2022 走看看