总体思路:

  1. 各种类型的机器学习分类
    1. 按照输出空间类型分Y
    2. 按照数据标记类型分yn
    3. 按照不同目标函数类型分f
    4. 按照不同的输入空间类型分X

按照输出空间类型Y,可以分为二元分类,多元分类,回归分析以及结构化学习等,这个好理解,离散的是分类,连续的是回归,到是结构化的学习接触的相对较少,以后有空可以关注下。

按照数据标记分可以分为:

  1. 监督;
  2. 非监督;
  3. 半监督;
  4. 增强学习;

下面这张ppt很好的总结了这点:

这是围绕标记yn的类型进行分类的,

监督和非监督很好理解,半监督和增强其实应用更加普遍,数据的标记大部分时候是需要人来做的,这个条件有时候很难满足(经费不足),那么半监督就有比较好的应用了。用人的学习过程来理解,人按照课本去学习,是监督,如果没有课本,按照自己发现的规律去解决问题,则是非监督,因为此,非监督学习的应用相对有限。有时候学习的事物特征到标记结果不是很好描述,例如搜索引擎的广告系统,针对不同用户信息以及query放什么广告,放在什么位置,这需要增强学习去不断的强化,让用户通过点击率反馈机器学习系统使得其不断优化,因为我们自己定义数据标记是很困难的,又例如机器学习开车。因此增强学习的关键在于反馈的存在。

按照不同的目标函数类型f,可以分为Batch,online以及active,课程中终于和人的学习过程做类比,其实和人一类比就很好理解了:

这三种学习类型分别可以类比为:填鸭式,老师教学以及主动问问题。

按照输入X分的话,主要是三种:

这里需要提到的是,把原始输入X转化为可以真正作为机器学习的输入的training examples的过程称为 feature engineering,也就是从Raw data --> concrete data的过程。

回顾下我们在哪?

,2,3,4):

总结:

目前用的最多的分类是按照yn去分,课程给了个详细的分类,觉得很不错,有了全局观,后面就好易于理解了。

参考资料:

Coursera台大机器学习基石

Coursera台大机器学习基础课程学习笔记2 -- 机器学习的分类的更多相关文章

  1. Coursera台大机器学习基础课程学习笔记1 -- 机器学习定义及PLA算法

    最近在跟台大的这个课程,觉得不错,想把学习笔记发出来跟大家分享下,有错误希望大家指正. 一机器学习是什么? 感觉和 Tom M. Mitchell的定义几乎一致, A computer program ...

  2. (转载)林轩田机器学习基石课程学习笔记1 — The Learning Problem

    (转载)林轩田机器学习基石课程学习笔记1 - The Learning Problem When Can Machine Learn? Why Can Machine Learn? How Can M ...

  3. 林轩田机器学习基石课程学习笔记5 — Training versus Testing

    上节课,我们主要介绍了机器学习的可行性.首先,由NFL定理可知,机器学习貌似是不可行的.但是,随后引入了统计学知识,如果样本数据足够大,且hypothesis个数有限,那么机器学习一般就是可行的.本节 ...

  4. Coursera台大机器学习基础课程1

    Coursera台大机器学习基础课程学习笔记 -- 1 最近在跟台大的这个课程,觉得不错,想把学习笔记发出来跟大家分享下,有错误希望大家指正. 一 机器学习是什么? 感觉和 Tom M. Mitche ...

  5. 学习笔记之机器学习(Machine Learning)

    机器学习 - 维基百科,自由的百科全书 https://zh.wikipedia.org/wiki/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0 机器学习是人工智能的一个分 ...

  6. 《机器学习实战》学习笔记第十四章 —— 利用SVD简化数据

    相关博客: 吴恩达机器学习笔记(八) —— 降维与主成分分析法(PCA) <机器学习实战>学习笔记第十三章 —— 利用PCA来简化数据 奇异值分解(SVD)原理与在降维中的应用 机器学习( ...

  7. 《机器学习实战》学习笔记第九章 —— 决策树之CART算法

    相关博文: <机器学习实战>学习笔记第三章 —— 决策树 主要内容: 一.CART算法简介 二.分类树 三.回归树 四.构建回归树 五.回归树的剪枝 六.模型树 七.树回归与标准回归的比较 ...

  8. Objective-c基础知识学习笔记

    Objective-c基础知识学习笔记(一) 一直有记录笔记的习惯.但非常久没分享一些东西了,正好上半年開始学习IOS了,如今有空写点.因开发须要,公司特意为我们配置了几台新MAC.还让我们自学了2周 ...

  9. linux基础命令学习笔记(二)

    linux基础命令学习笔记(二) 1.kill :终止进程  kill pid (唯一标示一个进程) kill -9  强制终止  kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...

随机推荐

  1. windows一些快捷键

    1.Win + __ 1)Win + L 锁屏 2)Win + E 资源管理器(就是打开硬盘) 3)Win + D 回到桌面 4)Win + Tab 3D方式切换程序窗口 5)Win + R 运行命令 ...

  2. lua语法备忘录

    1.三元表达式 a?b:c => a and b or c 2.循环数组 local keys = args.kvs:get_keys() local arr = xstring.split(k ...

  3. Redis入门笔记(二)-配置及运行

    转自: http://gly199.iteye.com/blog/1056424 1.redis基本参数 redis的配置文件中的常见参数如下: daemonize   是否以后台进程运行,默认为no ...

  4. 简单的自定义Adapter

    import android.content.Context; import android.view.LayoutInflater; import android.view.View; import ...

  5. CentOS安装开发组相关的包

    yum groupinstall "Development Tools"   yum groupremove "Development Tools"

  6. AJAX联想查询的例子

    //通过输入值的不断改变而改变(按键事件)提示内容的功能,然后可以选着你想要的内容填充进来. html主要代码:test1.html <!DOCTYPE html><html> ...

  7. JS移动客户端--触屏滑动事件 banner图效果

    JS移动客户端--触屏滑动事件 移动端触屏滑动的效果其实就是图片轮播,在PC的页面上很好实现,绑定click和mouseover等事件来完成.但是在移动设备上,要实现这种轮播的效果,就需要用到核心的t ...

  8. Java中的Bigdecimal类型运算

    Java中的Bigdecimal类型运算 双精度浮点型变量double可以处理16位有效数.在实际应用中,需要对更大或者更小的数进行运算和处理.Java在java.math包中提 供的API类BigD ...

  9. uilmit 优化

    #!/bin/bash sed -i "/^ulimit -SHn.*/d" /etc/rc.local echo "ulimit -SHn 102400" & ...

  10. Python开发问题和解决方案汇集

    1.Sublime Text中用Tab批量替换空格Whitespace缩进:Ctrl+A全选代码,Ctrl+Shift+P打开下拉框,输入indent,找到Convert indentation to ...