前提:Dr.He推荐学习的李宏毅讲的Machine Learning的学习博客

机器学习基本概念简介

机器学习的意义约等于寻找函数(looking for function)

EXAMPLES

以下举出3个例子用于解释
1、语音识别技术

输入:声音讯号
输出:声音讯号的内容
这个函数无法被人手写出,只能凭借机器找出

2、图像识别技术
输入:图片
输出:图片中的内容
3、下棋

输入:棋盘上黑子和白子的位置
输出:下一步落子的位置

机器学习的不同类别

由于所需函数不同,机器学习有不同的类别

(1)Regression 回归

Regression:the function outputs a scalar
输出数值的函数
Eg:
输入:今天的PM2.5值、今天的温度、今天的臭氧浓度
输出:明天的PM2.5预估值
函数利用今天的情况来预测明天的情况

(2)Classification 选择

Classification:Given options(classes), the function outputs the correct one.
函数实现从给定选项中选择一个作为输出
Eg1:

侦测垃圾邮件, 判断某一邮件是否为垃圾邮件,给出的选项是:Yes/No ,机器从选项中选择一个作为输出。
(注意给出选项不一定只有两个,可以有多个选项,下面给出多个选项的例子)
Eg2:

在19x19的棋盘上,每一个位置,就是一个选项

(3)Structured Learning

create something with structure(image, document)
在上述两种函数以外的函数,即不仅仅是输出一个数字或是做一个选择,还要产生一个有结构的物件,例如机器作图或写文

EXAMPLE -机器学习找函数的过程

Linear Model

在YouTube平台上,输入后台资料,输出该频道隔天的点阅总人数

机器学习找这个函数的过程分为3步:

(1)Function with unknown parameters

写出带有未知参数的函数

x1: 今天的点阅次数
y: 后一天的点阅次数
w(weight)和b(bias)为未知参数(可从数据中得出)

(2)Define Loss from training Data

L(b, w): Loss is a function of parameters
Loss:how good a set of value is
Loss函数:输入参数;输出一个值用于判定当前参数的价值

Eg:假设Loss(0.5k, 1)

如上图所示,在2017/01/01时的点阅数为4.8k,通过估计函数(y = 1x1 + 0.5k)得到2017/01/02的预估值为5.3k,将预估值-当天的真实点阅量得到e1。

通过不断计算e,最后得到Loss值

Model y = b + wx1
越接近蓝色区域,Loss越小,这组w与b效果越好
越接近红色区域,Loss越大,这组w与b效果越差

(3)Optimization

Optimization:最优化
最优w和b,使得Loss最小,此时w和b分别称为w和b

如何找到w和b 采用方法:gradient descent

i)只有w参数的情况下
画出1D的Loss图

(1)随机选取初始w0
(2)在w0这个点上求取微分,若微分>0,则表示曲线上升趋势,减小w至w1;若微分<0,则表示曲线降低趋势,增大w至w1。w0-w1的这一段距离,取决于微分大小η大小

微分为切线斜率,η(learning rate)为人为决定的学习速率。
(3)不断计算/优化w0至w1,直至w1为0(理想状态)或者计算次数达到上限。

ii)两个参数的情况下
画出2D图
(1)随机选取w0,b0
(2)计算微分
(3)不断计算,对w和b进行优化更新

综上所述

Curves Model

Piecewise Linear 分段式



Beyond Piecewise Linear


在曲线上取点连成线段,取的点数越多,越逼近曲线
问题又回到Piecewise Linear

问题归结为求下图函数的函数式

如何求Hard Sigmoid的函数式?

步骤如下

有两种函数可用于逼近上述Hard sigmoid,不同函数分开讲述:

I)sigmoid Function s形函数

用s形曲线来逼近Hard sigmoid

step1:定义带参函数

y = 0 + 1 + 2 + 3

(1)只参考一组数据

(2)参考多组数据

step2:求Loss

Loss is a function of parameters
Loss means how good a set of values is

为了方便表示参数,将y中的每一个参数取出:wij、bi、ci、b作为θ中的θ1、θ2…

带一组参数θ到y中并带入x得到预测值y,得 e = |y - label y|,多组数据计算后得到Loss


step3:Optimization 优化

求使得Loss最小的θ

Optimiazation steps:
(1)随机选取θ,初始值θ记作θ^0
(2)在θ^0的取值下,分别求Loss对各个参数的微分
(3)用θ - η*(2)中的微分作为第一批更新后的值θ^1

ii)Rectified Unit (ReLU)

将sigmoid函数换成ReLU函数
两个ReLu叠起来称为Hard sigmoid

转化过程

(ps:ReLU和sigmoid统称为 Activation function)
之后的step2、3操作相同

Machine Learning 机器学习基本概念相关推荐

  1. 快速掌握 机器学习(Machine Learning) 常用概念术语,常用算法

    1.什么是机器学习? 机器学习的概念: 传统上如果我们想让计算机工作,我们给它一串指令,然后它遵照这个指令一步步执行下去.有因有果,非常明确.这样的方式计算机是无法执行固定流程之外的东西的 . 但是现 ...

  2. Machine Learning机器学习公开课汇总

    机器学习目前比较热,网上也散落着很多相关的公开课和学习资源,这里基于课程图谱的机器学习公开课标签做一个汇总整理,便于大家参考对比. 1.Coursera上斯坦福大学Andrew Ng教授的" ...

  3. Machine Learning学习(一)Overview of machine learning机器学习概述

    目录 Welcome to machine learning Applications of machine learning Welcome to machine learning Welcome ...

  4. Useful Things To Know About Machine Learning (机器学习中一些有用的知识)

    Useful Things To Know About Machine Learning 原文作者:Jason Brownlee 原文地址:https://machinelearningmastery ...

  5. Machine Learning 机器学习

    本书展示了机器学习中核心的算法和理论,并阐明了算法的运行过程.本书综合了许多的研究成果,例如统计学.人工智能.哲学.信息论.生物学.认知科学.计算复杂性和控制论等,并以此来理解问题的背景.算法和其中的 ...

  6. Machine Learning | 机器学习简介

    什么是机器学习 机器学习是人工智能的一个分支.人工智能的研究是从以"推理"为重点到以"知识"为重点,再到以"学习"为重点,一条自然.清晰的脉 ...

  7. When Cyber Security Meets Machine Learning 机器学习 安全分析 对于安全领域的总结很有用 看未来演进方向...

    链接:http://ucys.ugr.es/jnic2016/docs/MachineLearning_LiorRokachJNIC2016.pdf https://people.eecs.berke ...

  8. Machine Learning | (2) sklearn数据集与机器学习组成

    Machine Learning | 机器学习简介 Machine Learning | (1) Scikit-learn与特征工程 Machine Learning | (2) sklearn数据集 ...

  9. Machine Learning:如何选择机器学习算法?

    2019独角兽企业重金招聘Python工程师标准>>> Machine Learning Algorithms Overview 关于目前最流行的一些机器学习算法,建议阅读: Mac ...

  10. Machine Learning -- 揭开机器学习的面纱

    揭开机器学习的面纱 1. 何为机器学习? 2. 机器学习的前世今生 3. 机器学习的常用算法 4.机器学习的分类 4.1 按照学习方式类 4.1.1 监督学习 4.1.2 无监督学习 4.1.3 强化 ...

最新文章

  1. VS2015不显示工程文本信息
  2. pandas使用query函数基于组合索引筛选dataframe的数据行(与and、或or、非not)
  3. c语言scarf函数原型,scanf 函数原型.doc
  4. Java创建一个文件变量_java如何定义一个类,创建它的成员变量和方法?
  5. 神奇的sstream头文件(整型与字符串自由转换)
  6. 【Java IO知识】读取中文乱码问题解决
  7. 配置jupyter-pytorch深度学习环境
  8. vi/vim使用进阶: quickfix
  9. Review JDBC
  10. C语言实现通讯录初版
  11. 中国省市县地区代码一览表
  12. (转)C#软件注册与注册机
  13. Enterprise Architect 15 使用指南
  14. java 按钮响应回车_swing 设置回车响应按钮的方法
  15. jquery插件 邮箱后缀自动匹配 可自定义
  16. 怎么用计算机算ess tss,计量经济学rss.tss.ess.是什么他们的..._注册计量师_帮考网...
  17. 谷歌AI人工智能:我们的原则
  18. 个保法下个人信息委托处理活动合规要点
  19. 加速计算,加速智慧未来
  20. OKR教练:OKRs-E如何帮你落地OKR

热门文章

  1. IDEA内无法进行复制粘贴
  2. 文件夹共享失败解决方式
  3. oracle 视图的写法,Oracle视图基础详解与实例
  4. SQL基础【一.DQL 数据查询语言】
  5. 利用计算机打字教学设计,“第7课 玩打字游戏”教学设计
  6. C高级第二次PTA作业
  7. 720云VR全景支持入驻高德地图,打造新一代沉浸式文旅消费体验
  8. 我用前世的五百次回眸换今生与你一次擦肩而过
  9. c语言输出成绩与排名,C语言算成绩 要求输完两个分数后 同时输出两个分数换算出来的成绩...
  10. [网络工程师]-IEEE 802.3定义的传输介质特性