【Machine Learning】机器学习及其基础概念简介

机器学习及其基础概念简介

作者:白宁超

2016年12月23日21:24:51

摘要:随着机器学习和深度学习的热潮,各种图书层出不穷。然而多数是基础理论知识介绍,缺乏实现的深入理解。本系列文章是作者结合视频学习和书籍基础的笔记所得。本系列文章将采用理论结合实践方式编写。首先介绍机器学习和深度学习的范畴,然后介绍关于训练集、测试集等介绍。接着分别介绍机器学习常用算法,分别是监督学习之分类(决策树、临近取样、支持向量机、神经网络算法)监督学习之回归(线性回归、非线性回归)非监督学习(K-means聚类、Hierarchical聚类)。本文采用各个算法理论知识介绍,然后结合python具体实现源码和案例分析的方式(本文原创编著,转载注明出处:机器学习及其基础概念简介(2)

目录


  1. 【Machine Learning】Python开发工具:Anaconda+Sublime(1)
  2. 【Machine Learning】机器学习及其基础概念简介(2)
  3. 【Machine Learning】决策树在商品购买力能力预测案例中的算法实现(3)
  4. 【Machine Learning】KNN算法虹膜图片识别实战(4)

1 机器学习简介


机器学习 (Machine Learning, ML) :
概念:多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
学科定位:人工智能(Artificial Intelligence, AI)的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。
定义:探究和开发一系列算法来如何使计算机不需要通过外部明显的指示,而可以自己通过数据来学习,建模,并且利用建好的模型和新的输入来进行预测的学科。
发展
Arthur Samuel (1959): 一门不需要通过外部程序指示而让计算机有能力自我学习的学科
Langley(1996) : “机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如何在经验学习中改善具体算法的性能” 
Tom Michell (1997):  “机器学习是对能通过经验自动改进的计算机算法的研究”
学习:针对经验E (experience) 和一系列的任务 T (tasks) 和一定表现的衡量 P,如果随之经验E的积累,针对定义好的任务T可以提高表现P,就说计算机具有学习能力
例子: 人脸识别、无人驾驶汽车、下棋、语音识别、电商推荐系统等
应用:语音识别、自动驾驶、语言翻译、计算机视觉、推荐系统、无人机、识别垃圾邮件
机器学习就业需求:LinkedIn所有职业技能需求量第一:机器学习,数据挖掘和统计分析人才 http://blog.linkedin.com/2014/12/17/the-25-hottest-skills-that-got-people-hired-in-2014/

2 深度学习(Deep Learning)


深度学习(Deep Learning):
深度学习是基于机器学习延伸出来的一个新的领域,由以人大脑结构为启发的神经网络算法为起源加之模型结构深度的增加发展,并伴随大数据和计算能力的提高而产生的一系列新的算法。
【Machine Learning】机器学习及其基础概念简介

深度学习发展

其概念由著名科学家Geoffrey Hinton等人在2006年和2007年在《Sciences》等上发表的文章被提出和兴起。

【Machine Learning】机器学习及其基础概念简介【Machine Learning】机器学习及其基础概念简介
【Machine Learning】机器学习及其基础概念简介

学习能用来干什么?为什么近年来引起如此广泛的关注?

深度学习,作为机器学习中延伸出来的一个领域,被应用在图像处理与计算机视觉,自然语言处理以及语音识别等领域。自2006年至今,学术界和工业界合作在深度学习方面的研究与应用在以上领域取得了突破性的进展。以ImageNet为数据库的经典图像中的物体识别竞赛为例,击了所有传统算法,取得了前所未有的精确度。
【Machine Learning】机器学习及其基础概念简介
深度学习目前有哪些代表性的学术机构和公司走在前沿?人才需要如何?
学校以多伦多大学,纽约大学,斯坦福大学为代表,工业界以Google, Facebook, 和百度为代表走在深度学习研究与应用的前沿。Google挖走了Hinton,Facebook挖走了LeCun,百度硅谷的实验室挖走了Andrew Ng,Google去年4月份以超过5亿美金收购了专门研究深度学习的初创公司DeepMind, 深度学习方因技术的发展与人才的稀有造成的人才抢夺战达到了前所未有激烈的程度。诸多的大大小小(如阿里巴巴,雅虎)等公司也都在跟进,开始涉足深度学习领域,深度学习人才需求量会持续快速增长。
【Machine Learning】机器学习及其基础概念简介
深度学习如今和未来将对我们生活造成怎样的影响?
目前我们使用的Android手机中google的语音识别,百度识图,google的图片搜索,都已经使用到了深度学习技术。Facebook在去年名为DeepFace的项目中对人脸识别的准备率第一次接近人类肉眼(97.25% vs 97.5%)。大数据时代,结合深度学习的发展在未来对我们生活的影响无法估量。保守而言,很多目前人类从事的活动都将因为深度学习和相关技术的发展被机器取代,如自动汽车驾驶,无人飞机,以及更加职能的机器人等。深度学习的发展让我们第一次看到并接近人工智能的终极目标。
【Machine Learning】机器学习及其基础概念简介【Machine Learning】机器学习及其基础概念简介
【Machine Learning】机器学习及其基础概念简介

深度学习的应用展示:

  • 无人驾驶汽车中的路标识别
  • Google Now中的语音识别
  • 百度识图
  • 针对图片,自动生成文字的描述
【Machine Learning】机器学习及其基础概念简介
【Machine Learning】机器学习及其基础概念简介
图片文字识别结果:“A person riding a motorcycle on a dirt road,”

3 机器学习相关概念介绍


基本概念:训练集,测试集,特征值,监督学习,非监督学习,半监督学习,分类,回归
概念学习:人类学习概念:鸟,车,计算机
定义:概念学习是指从有关某个布尔函数的输入输出训练样例中推断出该布尔函数
例子:学习 “享受运动" 这一概念:
小明进行水上运动,是否享受运动取决于很多因素
样例 天气 温度 湿度 风力 水温 预报 享受运动
1 普通 一样
2 一样
3 变化
4 变化

天气:晴,阴,雨

温度:暖,冷
湿度:普通,大
风力:强,弱
水温:暖,冷
预报:一样,变化
享受运动:是,否
概念定义在实例(instance)集合之上,这个集合表示为X。(X:所有可能的日子,每个日子的值由 天气,温度,湿度,风力,水温,预 报6个属性表示。待学习的概念或目标函数成为目标概念(target concept), 记做c。c(x) = 1, 当享受运动时, c(x) = 0 当不享受运动时,c(x)也可叫做y
x: 每一个实例
X: 样例, 所有实例的集合
学习目标:f: X -> Y
训练集(training set/data)/训练样例(training examples): 用来进行训练,也就是产生模型或者算法的数据集
测试集(testing set/data)/测试样例 (testing examples):用来专门进行测试已经学习好的模型或者算法的数据集
特征向量(features/feature vector):属性的集合,通常用一个向量来表示,附属于一个实例
标记(label): c(x), 实例类别的标记
正例(positive example)
反例(negative example)
 
例子:研究美国硅谷房价
影响房价的两个重要因素:面积(平方米),学区(评分1-10)
 
 
样例 面积(平方米) 学区 (11.2 深度学习(Deep Learning)介绍-10) 房价 (1000$)
1 100 8 1000
2 120 9 1300
3 60 6 800
4 80 9 1100
5 95 5 850
 
分类 (classification): 目标标记为类别型数据(category)
回归(regression): 目标标记为连续性数值 (continuous numeric value)
 
例子:研究肿瘤良性,恶性于尺寸,颜色的关系
特征值:肿瘤尺寸,颜色
标记:良性/恶性
 
有监督学习(supervised learning): 训练集有类别标记(class label)
无监督学习(unsupervised learning): 无类别标记(class label)
半监督学习(semi-supervised learning):有类别标记的训练集 + 无标记的训练集
 

4 机器学习步骤框架


  1. 把数据拆分为训练集和测试集

  2. 用训练集和训练集的特征向量来训练算法

  3. 用学习来的算法运用在测试集上来评估算法 (可能要设计到调整参数(parameter tuning), 用验证集(validation set)

例如:
100 天: 训练集
10天:测试集 (不知道是否 ” 享受运动“, 知道6个属性,来预测每一天是否享受运动)
 
上一篇:java基础(十五)----- Java 最全异常详解 ——Java高级开发必须懂的


下一篇:hbm.xml支持的类型