一、何为机器学习?
机器学习最近那么火,博主自学习以来,也看过不少有关机器学习的资料,首先对于机器学习的定义就又五花八门,什么让机器像人一样去学习,说的总感觉有些浮夸而不现实,把机器学习搞的也太神秘了,有幸看了吴恩达的课程,最喜欢课程里吴恩达引用的卡内基梅隆大学,Tom Michael Mitchell 1997年对机器学习下的定义:
A computer program is said to learn from experience E with respect to some task T and some performance measure P,if its performance on T,as measured by P,improves with experience E.
简单来讲就是:
对于某给定的任务T,在合理的性能度量方案P的前提下,某计算程序可以自主学习任务T的经验E;随着提供合适,优质,大量的经验E,该程序对于任务T的性能逐步提高。
我觉得这个思想也一直贯穿着机器学习的方方面面。
这里最重要的机器学习的对象:
任务Task,T, 一个或者多个
经验Experience,E
性能Performance,P
即:随着任务的不断执行,经验的积累会带来计算性能的提升。
二、Python概述
这里简单介绍下python语言,相信研究机器学习的人里,用python的人还是比较多的。
python数据分析大家族
1)numpy数据结构基础
开源的数值计算扩展:用来存储和处理大型矩阵,定义了数据分析的数据结构基础
2)scipy强大的科学计算方法(矩阵分析,信号分析,数据分析)
3)matplotlib丰富的可视化套件(又称:MLlib)(用来做各种图表)
用来绘图的,相当于一个绘图库。
4)pandas:基础的数据分析套件(一些比较基础的数据分析)
5)scikit-learn:强大的数据分析建模库(支持人工神经网络)
6)keras:人工神经网络(可以实现深度神经网络)
三、分类和决策树
我们讲机器学习的典型任务包括:回归ÿ