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. 我的Java设计模式-单例模式

    就算不懂设计模式的兄弟姐妹们,想必也听说过单例模式,并且在项目中也会用上.但是,真正理解和熟悉单例模式的人有几个呢?接下来我们一起来学习设计模式中最简单的模式之一--单例模式 一.为什么叫单例模式? ...

  2. Centos7 上安装配置 RabbitMQ

    前言:  最近服务器上搭建了一下rabbitmq, 网上找了很多教程, 采了灰常灰常多的坑. 现在终于从坑里面爬出来了.赶紧写下来,避免下次掉坑里面   好了,废话不多说,下面步入正题 一.安装Erl ...

  3. Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE

    1 错误描述 19:15:34 call sp_store_insert(90) Error Code: 1175. You are using safe update mode and you tr ...

  4. C#读取Excel表格中数据并返回datatable

    在软件开发的过程中,经常用到从excel表格中读取数据作为数据源,以下整理了一个有效的读取excel表格的方法. DataTable GetDataTable(string tableName,str ...

  5. 阿里云ECS+CentOS 7.0+Docker+Redmine环境搭建

    前言 搭建Redmine环境可以选择使用分别安装Ruby+Rails+Redmine+MySQL的方式, 但是过程中需要解决各种扰人的依赖问题.Docker为我们提供的Plan B,方便,快捷. 安装 ...

  6. ubuntu14.04安装cuda

    1 装系统时候注意,另外14.04要好于12.04,自带了无线驱动 ubuntu14.04安装完不要update 2 安装cuda和cudnn http://blog.csdn.net/l297969 ...

  7. C#图解教程 第十一章 枚举

    枚举 枚举 设置底层类型和显式值隐式成员编号 位标志 Flags特性使用位标志的示例 关于枚举的补充 枚举 枚举 枚举是由程序员定义的类型与类或结构一样. 与结构一样,枚举是值类型,因此直接存储它们的 ...

  8. Ubantu16.04进行Android 8.0源码编译

    参考这篇博客 经过测试,8.0源码下载及编译之后,占用100多G的硬盘空间,尽量给ubantu系统多留一些硬盘空间,如果后续需要在编译好的源码上进行开发,需要预留更多的控件,为了防止后续出现文件权限问 ...

  9. [BZOJ1880] [Sdoi2009] Elaxia的路线 (SPFA & 拓扑排序)

    Description 最近,Elaxia和w**的关系特别好,他们很想整天在一起,但是大学的学习太紧张了,他们 必须合理地安排两个人在一起的时间.Elaxia和w**每天都要奔波于宿舍和实验室之间, ...

  10. Django使用Celery异步任务队列

    1  Celery简介 Celery是异步任务队列,可以独立于主进程运行,在主进程退出后,也不影响队列中的任务执行. 任务执行异常退出,重新启动后,会继续执行队列中的其他任务,同时可以缓存停止期间接收 ...