1. Machine Learning definition(机器学习定义)

  • Arthur Samuel(1959年)将机器学习非正式定义为:在不直接针对问题进行编程的情况下,赋予计算机学习能力的一个研究领域。

    创造西洋棋程序,可以和自己对战。

  • Tom Mitchell(1998年)提出一个更为正式关于机器学习的定义 :对于一个计算机程序来说:给它一个任务T和一个性能测量方法P,如果在经验E的影响下,P对T的测量结果得到了改进,那么就说改程序从E中学习。

E = the experience of playing many games of checkers

T = the task of playing checkers.

P = the probability that the program will win the next game.

2. Supervised Learning (监督学习)

它被称作监督学习是因为对于每个数据来说 我们给出了 “正确的答案”。

你有一些问题和他们的答案,你要做的有监督学习就是学习这些已经知道答案的问题。然后你就具备了经验了,这就是学习的成果。然后在你接受到一个新的不知道答案的问题的时候,你可以根据学习得到的经验,得出这个新问题的答案。(试想一下高考不正是这样,好的学习器就能有更强的做题能力,考好的分数,上好的大学.....)。我们有一个样本数据集,如果对于每一个单一的数据根据它的特征向量我们要去判断它的标签(算法的输出值),那么就是有监督学习。通俗的说,有监督学习就是比无监督学习多了一个可以表达这个数据特质的标签。

包含回归(Regression)和分类(Classfication)。

  • 举例:

    1. 房价 与 面积的关系

2.1 Classfication (分类任务)

离散变量预测,设定了标准答案,复合条件,是或否。

  • 举例:

    1. 肿瘤良性/恶性 与 肿瘤大小的关系。(0或1结构)
    2. 年纪 与 肿瘤大小关系。(聚合结构)
    3. 预测明天的气温是多少度
  • Support Vector machines(支持向量机的算法):可以吧数据映射到无限维空间中。

  • 问题:

    1. 如何把一个无限维的向量映射到计算机内存中?
    2. 如何表示一个无限纬空间中的点?

2.2 Regression(回归任务)

连续变量预测。

  • 举例:

    1. 预测明天的气温是多少度。

3. Unsupervised Learning(无监督学习)

数据聚合、分类。

我们有一些问题,但是不知道答案,我们要做的无监督学习就是按照他们的性质把他们自动地分成很多组,每组的问题是具有类似性质的(比如数学问题会聚集在一组,英语问题会聚集在一组,物理........)。

所有数据只有特征向量没有标签,但是可以发现这些数据呈现出聚群的结构,本质是一个相似的类型的会聚集在一起。把这些没有标签的数据分成一个一个组合,就是聚类(Clustering)。比如Google新闻,每天会搜集大量的新闻,然后把它们全部聚类,就会自动分成几十个不同的组(比如娱乐,科技,政治......),每个组内新闻都具有相似的内容结构。

  • 举例:

    1. 提供一组数据,不提供任何数据的正确答案,你能否在这组数据中寻找到一些有趣的数据结构?
    2. 基因数据分组。
    3. 聚合算法处理图像,对像素数据进行聚合分组,得到类似素描的效果,等效表达。
    4. 图像处理,将图像分成不同区域,像素分到不同区域。创建3D模型,创造类似AR的效果。
    5. 计算机集群,社交网络分析,市场划分,航天数据分析。

3.1 Cocktail party problem(鸡尾酒会问题)

假设我们在参加一个鸡尾酒会,有很多人参加,在环境嘈杂,很多人说话的情况下,能否把感兴趣的某个人的声音单独从嘈杂的背景音中提取出来?

规律:不同麦克风收集到说话者声音大小不一样。

  • 算法A

    将人声从人声中分离
  • 独立组件分析

    将人声从音乐中分离

其他应用:

  • 文本处理
  • 理解功能分级

使用MATLAB一行代码实现以上算法。

3.2 ICA algorithm

[W,s,v] = svd((repmat(sum(x.*x,1),size(x,1),1).*x)*x');

4. Reinforcement Learning(强化算法学习)

基本概念是一个被称为 回报函数的概念。

使用在不需要进行一次决策的情形中。

  • 举例

    1. 使用监督学习进行癌症预测,预测一个病人肿瘤是否为恶性。你的预测决定了病人是生死。通过决策产生一个结论,要么对,要么错。

在强化学习问题中,通常会一段时间内做出一系列的决策

  • 举例

    1. 自动直升机:给你自动直升机的钥匙,能否写个程序让它飞起来?如果做了一个坏的决策,飞机可能不会马上摔下来,只有你连续做出很多坏的决策时,飞机才会摔下来。相反的,只要连续的做出正确的决策,飞机就可以飞起来了。
    2. 训狗,正确奖励;错误惩罚。
    3. 机器人领域。

[机器学习Lesson 1 Introduction] 机器学习的动机与应用的更多相关文章

  1. PRML读书会第一章 Introduction(机器学习基本概念、学习理论、模型选择、维灾等)

    主讲人 常象宇 大家好,我是likrain,本来我和网神说的是我可以作为机动,大家不想讲哪里我可以试试,结果大家不想讲第一章.估计都是大神觉得第一章比较简单,所以就由我来吧.我的背景是统计与数学,稍懂 ...

  2. Stanford机器学习---第七讲. 机器学习系统设计

    原文:http://blog.csdn.net/abcjennifer/article/details/7834256 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...

  3. Spark机器学习 Day2 快速理解机器学习

    Spark机器学习 Day2 快速理解机器学习 有两个问题: 机器学习到底是什么. 大数据机器学习到底是什么. 机器学习到底是什么 人正常思维的过程是根据历史经验得出一定的规律,然后在当前情况下根据这 ...

  4. 机器学习入门18 - 生产机器学习系统(Production ML Systems)

    除了实现机器学习算法之外,机器学习还包含许多其他内容.生产环境机器学习系统包含大量组件.无需自行构建所有内容,而是应该尽可能重复使用常规机器学习系统组件.通过了解机器学习系统的一些范例及其要求,可以明 ...

  5. [机器学习Lesson 2]代价函数之线性回归算法

    本章内容主要是介绍:单变量线性回归算法(Linear regression with one variable) 1. 线性回归算法(linear regression) 1.1 预测房屋价格 该问题 ...

  6. 机器学习介绍(introduction)-读书笔记-

    一,什么是机器学习 第一个机器学习的定义来自于 Arthur Samuel.他定义机器学习为,在进行特定编程的情况下,给予计算机学习能力的领域.Samuel 的定义可以回溯到 50 年代,他编写了一个 ...

  7. 【笔记】机器学习 - 李宏毅 - 1 - Introduction & next step

    Machine Learning == Looking for a Function AI过程的解释:用户输入信息,计算机经过处理,输出反馈信息(输入输出信息的形式可以是文字.语音.图像等). 因为从 ...

  8. 机器学习笔记1——Introduction

    Introduction What is Machine Learning? Two definitions of Machine Learning are offered. Arthur Samue ...

  9. <转>机器学习系列(9)_机器学习算法一览(附Python和R代码)

    转自http://blog.csdn.net/han_xiaoyang/article/details/51191386 – 谷歌的无人车和机器人得到了很多关注,但我们真正的未来却在于能够使电脑变得更 ...

随机推荐

  1. caffe+GPU︱AWS.G2+Ubuntu14.04+GPU+CUDA8.0+cudnn8.0

    国服亚马逊的GPU实例G2.2xlarge的python+caffe的安装过程,被虐- 一周才装出来- BVLC/caffe的在AWS安装的官方教程github: https://github.com ...

  2. java使用poi读取doc和docx文件

    这几天在学习java io流的东西,有一个网友看到博客后问了一个问题,就是说他的doc文档为什么用我所说的方法死活就是乱码. 我一开始以为是他方法问题,结果自己试了之后发现和他的结果一样也是乱码. 于 ...

  3. org.apache.catalina.LifecycleException: Failed to start component

    1.错误描述 Using CATALINA_BASE: "D:\NetBeans\apache-tomcat-8.0.12" Using CATALINA_HOME: " ...

  4. Python中re模块的使用

    #table-1 thead,#table-1 tr { border-top-width: 1px; border-top-style: solid; border-top-color: rgb(2 ...

  5. touch.js下载使用方式

    touch.js下载地址 https://gitee.com/mirrors/touch-js Touch 在开发移动端的应用中会使用到很多的手势操作,例如一指拖动.两指旋转等等,为了方便开放者快速集 ...

  6. hdu3081 Marriage Match II

    新年第一篇,又花了一早上,真是蠢啊! 二分+网络流 之前对于讨论哪些人是朋友的时候复杂度过高 直接n3的暴力虽然看起来复杂度高,其实并不是每次都成立 #include<bits/stdc++.h ...

  7. docker学习系列(三):docker镜像的分层结构

    docker的镜像分层 docker里的镜像绝大部分都是在别的镜像的基础上去进行创建的,也就是使用镜像的分层结构. 实验 比如说使用dockerfile去创建一个最简单的hello镜像.创建好对应的d ...

  8. WebView的使用--Hybrid App

    App页面是运行在WebView中的,一个App页面对应一个WebView,本例实现两个WebView之间的跳转. 实现过程(用到了MUI框架): 1.页面标识+跳转按钮(index.html.mai ...

  9. 从输入URL到页面加载的过程?如何由一道题完善自己的前端知识体系!

    前言 见解有限,如有描述不当之处,请帮忙指出,如有错误,会及时修正. 为什么要梳理这篇文章? 最近恰好被问到这方面的问题,尝试整理后发现,这道题的覆盖面可以非常广,很适合作为一道承载知识体系的题目. ...

  10. canvas练手项目(二)——各种操作基础

    想想应该在canvas上面作画了,那么就不得不提到事件了. (打着canvas的旗号,写着mouse事件.挂羊头卖狗肉!哈哈哈哈哈~) 先来看一看HTML事件属性,我们要用的就是Mouse事件,就先研 ...