数字 IC 技能树之(11)浅谈机器学习

关键词:人工智能、深度学习、机器学习

  在现如今的大数据时代,能够深入理解数据背后的真实含义,是数据驱动产业必须具备的基本技能。而机器学习有助于我们从大数据中寻找到有用的信息,并利用这些信息促进社会的快速发展。

  机器学习已经进入我们的生活,如智能搜索引擎、垃圾邮件识别、人脸识别、文字识别、产品推荐、智能预测、最大化利润、最小化风险等等。

  下面我们基于表 1-1 来研究机器学习算法的开发流程:

数字 IC 技能树之(11)浅谈机器学习_第1张图片

  首先是算法训练,即学习如何分类,通常我们为算法输入大量已知已分类的已知的数据作为算法的训练集。训练集是用于训练机器学习算法的数据样本集合,表 1-1 是包含六个训练样本的训练集,每个训练样本有 4 种特征、1 个目标变量,这里的目标变量是机器学习算法的预测结果,在分类算法中目标变量的类型通常是标称型的,而在回归算法中通常是数值型的。(监督学习一般使用两种类型的目标变量:标称型和数值型。标称型目标变量的结果只在有限目标集中取值,如动物分类集合{爬行类、鱼类、哺乳类、两栖类};数值型目标变量则可以从无限的数值集合中取值,如 0.100、42.001、1000.743 等。数值型目标变量主要用于回归分析)

  训练样本集必须确定目标变量的值,以便机器学习算法可以发现特征和目标变量之间的关系。这里的目标变量是物种,也可以简化为标称型的数值。特征或者属性通常是训练样本集的列,它们是独立测量得到的结果,多个特征联系在一起共同组成一个训练样本。

  为了测试机器学习算法的效果,通常使用两套独立的样本集:训练数据和测试数据。当机器学习程序开始运行时,使用训练样本集作为算法的输入,训练完成之后输入测试样本,输入测试样本时并不提供测试样本的目标变量,而是由程序自己判断样本属于哪个类别。比较测试样本预测的目标变量值与实际样本类别之间的差别,就可以得出算法的实际精确度。

  假定这个鸟类分类程序,经过测试满足精确度要求,是否我们就可以看到机器已经学会了如何区分不同的鸟类了呢?这部分工作称之为知识表示,某些算法可以产生很容易理解的知识表示,而某些算法的知识表示也许只能为计算机所理解。知识表示可以采用规则集的形式,也可以采用概率分布的形式,甚至可以是训练样本集中的一个实例。在某些场合中,人们可能并不想建立一个专家系统,而仅仅对机器学习算法获取的信息感兴趣。此时,采用何种方式表示知识就显得非常重要了。

  以上介绍了机器学习如何解决分类问题,它的主要任务是将实例数据划分到合适的分类中。机器学习的另一项任务是回归,它主要通过数据拟合曲线来预测数值型数据,数据拟合曲线即通过给定数据点的最优拟合曲线。分类和回归属于监督学习,之所以称之为监督学习,是因为这类算法必须知道预测什么,即目标变量的分类信息。与监督学习相对应的是无监督学习,此时数据没有类别信息,也不会给定目标值。在无监督学习中,将数据集合分成由类似的对象组成的多个类的过程被称为聚类,将寻找描述数据统计值的过程称之为密度估计。此外,无监督学习还可以减少数据特征的维度,以便我们可以使用二维或三维图形更加直观地展示数据信息。 
  首先考虑使用机器学习算法的目的。如果想要预测目标变量的值,则可以选择监督学习算法,否则可以选择无监督学习算法。确定选择监督学习算法之后,需要进一步确定目标变量类型,如果目标变量是离散型,如是/否、1/2/3、A/B/C或者红/黄/黑等,则可以选择分类器算法;如果目标变量是连续型的数值,如 0.0 ~ 100.00、-999 ~ 999 或者 +∞ ~ -∞ 等,则需要选择回归算法。如果不想预测目标变量的值,则可以选择无监督学习算法。进一步分析是否需要将数据划分为离散的组。如果这是唯一的需求,则使用聚类算法;如果还需要估计数据与每个分组的相似程度,则需要使用密度估计算法。其次需要考虑的是数据问题。我们应该充分了解数据,对实际数据了解得越充分,越容易创建符合实际需求的应用程序。主要应该了解数据的以下特性:特征值是离散型变量还是连续型变量,特征值中是否存在缺失的值,何种原因造成缺失值,数据中是否存在异常值,某个特征发生的频率如何(是否罕见得如同海底捞针),等等。充分了解上面提到的这些数据特性可以缩短选择机器学习算法的时间。我们只能在一定程度上缩小算法的选择范围,一般并不存在最好的算法或者可以给出最好结果的算法,同时还要尝试不同算法的执行效果。对于所选的每种算法,都可以使用其他的机器学习技术来改进其性能。在处理输入数据之后,两个算法的相对性能也可能会发生变化。后续章节我们将进一步讨论此类问题,一般说来发现最好算法的关键环节是反复试错的迭代过程。机器学习算法虽然各不相同,但是使用算法创建应用程序的步骤却基本类似。

你可能感兴趣的:(数字,IC,技能树拓展延伸,机器学习)