首页 > 代码库 > 机器学习实战
机器学习实战
简述机器学习:
用计算机来彰显数据背后的意义,这个才是机器学习的真正含义,简而言之机器学习就是把无序的数据转换成有用的信息。与此同时,机器学习也需要一些统计学的知识,除了人类的行为之外,现实世界还存在许多的例子是我们无法运用数学模型进行描述的,这时我们就需要统计学工具。在这个数据膨胀的时代,需要的是在数据中不会迷失,穿越数据的雾霾,从中抽取有用的信息,机器学习可以完成。
机器学习术语:
一个简单的例子,鸟类专家系统:(根据鸟的特征,来判定这鸟属于什么类别)
标号 | 体重(克) | 翼展(厘米) | 脚蹼 | 颜色 | 种属 |
1 | 1000 | 125 | No | 棕色 | 红尾鸠 |
2 | 2000 | 200 | No | 灰色 | 鹭鹰 |
3 | 3000 | 220 | No | 灰色 | 鹭鹰 |
4 | 4100 | 136 | Yes | 黑色 | 千鸟 |
5 | 3 | 11 | No | 绿色 | 蜂鸟 |
6 | 570 | 75 | No | 黑色 | 木鸟 |
此实例引出,机器学习的一个主要任务:分类
当决定使用什么机器学习算法进行分类,首先需要的是学习如何分类。通常需要为算法输入大量的已知分类数据作为算法的输入集合,如上表,存在着6个训练样本,每个样本有4个特征值,一个目标变量。最终的目标变量就是预测的结果。在此过程中,训练样本必须明确知道目标变量的值,这样机器学习算法才可以发现特征与目标变量之间的关系。而最终目标变量也称为类别,假定分类只存在有限个数的类别。为了验证机器学习算法的有效性,通常使用两套数据集,训练样本和测试数据。当机器学习算法运行的时候输入训练样本,模拟分类系统,而后输入测试数据,但此时的测试数据并不带有目标变量,由程序自己决定样本的类别。实验比较,程序得到的类别和已知的类别的差别,可以得出算法的准确度。
分类主要任务:将示例数据划分到所属的合适的分类中。
回归主要任务:主要用于预测数值型数据。
分类和回归都属于监督学习(此算法必须要知道预测什么,或者知道已定的类别信息)。
于此相对应的是:无监督学习(数据没有类别信息,也不给出目标变量)-----》聚类
如何选择算法:
首先很据使用机器学习的目的(是否预测目标的值),选择监督学习还是无监督学习,若是选定了监督学习,之后需要确定目标变量类型,若目标类型是离散的,是/否,1/2/3 等选择分类算法,若目标变量是连续的数值(0~10),则选用回归算法。
以上只能是大致的分算法方向,并不会具体到使用什么算法将会达到最优的目的,然而最好的算法就是反复试错的迭代过程。
应用机器学习的步骤:
(1)收集数据。
(2)准备输入数据
(3)分析输入数据
(4)训练算法
(5)测试算法
(6)使用算法
使用工具:
在实现算法的过程中,可以使用MATALB或者是Octave,也可以使用python进行实现,使用python的好处就是语法清晰,易于文本操作,但是同时也存在着不足之处,性能问题,在python构造机器学习应用时,经常会使用NumPy函数库,主要进行矩阵的运算,在python shell下:
>>>from numpy import * 即可使用NumPy函数库的函数。
分类小结:
分类必须了解到数据实例,每个数据实例由多个特征值组成,分类则是机器学习的基本任务,分析未分类的数据,进行分类处理,为了构建分类器必须先输入大量的分类数据,即训练样本集。在根据测试数据,讲数据输入到分类器之中,进行分类处理,最后将程序得出分类结果和已知的目标变量进行比较,得出机器学习算法的有效性。
机器学习实战
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。