深度学习系列第一弹

本文介绍了机器学习的基本概念,包括定义、典型算法和学习过程。机器学习旨在让计算机通过数据学习,实现智能。文章详细阐述了数据收集、数据准备、模型选择、训练、评估等步骤,并对比了监督学习和无监督学习的区别。此外,还提到了关键的数学基础知识如概率论、统计学和线性代数在机器学习中的作用。最后,讨论了模型评估方法和不同类型的抽样技术。
摘要由CSDN通过智能技术生成

数据是载体,智能是目标,而机器学习是从数据通往智能的技术途径。

                                                        ——摘要

从17世界的最小二乘法的推导和马尔科夫链,到如今以智能语言助手为代表的智能家具。从二十世纪五十年代初的西洋跳棋程序(Samuel),到2017年的围棋人机大战。从1953年的《Sally》短篇科幻小说,到2021年“滴滴自动驾驶5小时无接管路测”顺利完成。人工智能已经从遥不可及深入了我们的生活,并改变着我们的生活。机器学习作为人工智能实现的途径,在人工智能领域引起了广泛的兴趣,成为了人工智能的重要课题。

一、何为机器学习

定义:在没有明确设置的情况下,使计算机具有学习能力的研究领域。

可以理解为,通过程序使得计算机学会如何模拟人类的学习过程,使得计算机可以模拟人类完成对相关领域的预测或判断,并使得计算机在学习过程中不断完整自己的性能。

专业表述为,计算机程序从经验E中学习,来解决某一任务T,并得到某一性能度量P,通过P来测定在任务T上的表现,并由在T上获得的经验E来提高计算机本身的性能。

经典例子:对于跳棋游戏,经验E为下棋过程中获得的经验。任务T就是下跳棋。性能度量P就是在真实情况下获胜的概率。

从实际角度出发,可以理解为机器学习的目的就是把现实中需要机器协助快速解决的问题、繁琐复杂的问题进行数学化,通过利用计算机高计算量、计算速度快、计算准确的优点对数学化得到的函数、模型进行计算和优化以得到快速办公、生产的目的。

其中主要的算法为:监督学习算法和无监督学习算法。

二、如何学习机器学习

机器学习是一门多领域交叉学科,涉及到概率论、统计学、逼近论、凸分析、算法复杂度等多门学科。以下为机器学习的基础数学知识。

高等数学:函数、极值、无穷大(小)、连续函数、函数导数(一阶、二阶、偏导数)、阶乘。

微积分:微积分、定积分。

线性代数:向量、矩阵、特殊矩阵(伴随矩阵、对称矩阵、对角矩阵、单位矩阵、正交矩阵)、矩阵的基本操作、转置矩阵和逆矩阵、行列式、秩、内积与正交、特征值。

概率论:随机事件及其概率、条件概率、随机变量、正态分布、二项分布、泊松分布、均匀分布。

三、分步机器学习

机器学习的过程可以分为:收集数据、数据准备、选择模型、训练、评估、参数调整、预测(正式使用)七个步骤。

  1. 收集数据。

数据收集是分步机器学习的第一步,是整个机器学习的基础,后续的模型训练以及评估等步骤都需要用到该步骤所收集的数据。为保证训练得到的模型具有普遍适用性,建议收集大量的真实数据,收集过程遇到的特殊数据集不可忽略(后续数据准备过程会进行分析)。可参考:Kaggle数据集、Amazon数据集、谷歌数据集搜索引擎。

  1. 数据准备。

需要对数据集中的明显无效数据进行剔除。剔除部分为:非法值、格式不符、存在缺失值、拼写错误。

除剔除数据外,还需要对数据进行处理,处理方式包括:数据清洗(清除无效数据和噪声)、数据降维(使用更加简单的方式记录数据,比便于后续的模型训练)、数据归类(按不同的类型将数据进行分类处理),离散化(根据模型类型进行判断是否需要本步骤)等。

对于特殊数据集,进行判断,若可以直接判断为噪声,则直接剔除,若为离群点,则保留。可通过对特殊数据集的复现(模拟)来判断是噪声还是离群点。

在处理好的数据集中,划分出训练集(60%)、测试集(20%)、交叉验证集(20%)。(划分方法不唯一)

划分过程中,尽可能保证数据分布的一致性,使得数据独立分布。提供划分方法:留出法,自助法,交叉验证法。

  1. 选择模型。

机器学习选择合适的模型就是选择合适的算法。

选择依据(因素):

  1. 数据的维度大小,数据的质量和数据的特征属性。
  2. 可以利用的计算资源等。

选择模型的一些建议(入门):

  1. 首选能够快速得到相应结果的函数。
  2. 选择自己所熟悉的函数模型
  3. 无奈之下,观察数据集的特点,选择较为相近的函数,自己拟定参数值,不断优化参数、优化模型。
  1. 训练

训练的目标:提高模型的准确度,降低误差。

对选择的模型代入训练集的值,不断修改函数的参数值,以降低模型的误差。

可以通过梯度下降算法快速找到最佳的参数。

  1. 评估

通过将训练集的值代入模型中,将模型得到的结果与训练集的真实结果进行对比。评估模式是否合适,是否为最佳模型。防止过拟合和欠拟合。

  1. 参数调整

通过评估的结果,再次根据训练集对模型的参数进行调整。

  1. 预测(正式使用)

通过以上步骤的不断操作,得到最佳的模型就可以进行数据测试,以及正式使用。

四、监督学习

教计算机做某件事情,侧重于回归问题。

所给的数据集有标记,即计算机知道数据集的对应结果。即监督学习就是给定包含正确答案的训练集,训练集的每个样本都给出正确的结果,训练过程中将样本和样本的结果都带入模型进行训练,来调整模型的参数,通过训练过程来产生推断能力。使得模型通过映射得到结果。

以预测二手房交易金额(自变量:面积,因变量:交易价格)为例:所用数据集为交易成功的真实案例。则监督学习就是,将房屋的面积以及最终交易价格全部输入模型进行模型的训练,得到因变量和自变量之间的关系。

该案例中若使用一阶函数,会得到一条直线,与实际值的误差较大。二阶或三阶会拟合得更好,与实际值误差更小。

  • 无监督学习

让计算机自己学习,侧重于分类问题。

给定的训练集只有样本,并没有结果。

通过利用训练集对模型进行训练,最终模型会根据计算的结果,将样本分为若干部分。

以判断肿瘤的良恶性(自变量:肿瘤大小,因变量:肿瘤为良性、为恶性)为例:所用的数据集只包括肿瘤的大小。则无监督学习就是,将肿瘤的大小,以及良性肿瘤与恶性肿瘤的边界值输入模型进行训练。该模型最终将结果分为两类。若输出为0,则是良性。输入为1,则是恶性。

对于给定的数据集,无监督学习算法通过计算结果将该数据集分成多个不同的簇。

六、附录

留出法:最基本的抽样方法,直接将数据集D划分为两个互斥的集合,其中一个集合作为训练集S,另一个作为测试集T,即D=S∪T,S∩T =ø,在S上训练出模型后,用T来评估其测试误差,作为对泛化误差的估计。

优点:用几乎所有的数据进行训练,用一个数据进行测试。

缺点:计算时间长,会出现分层问题。

确定性:实验没有随机因素,整个过程可重复。

交叉验证:主要用于建模应用中,例如PCR、PLS回归模型。在给定的建模样本中,拿出大部分样本进行建模型,留小部分样本用刚建立的模型进行预报,并求这小部分样本的预报误差,记录它们的平方加和(平方加和可以人为放大误差,便于分析)。这个过程一直进行,直到所有的样本都被预报了一次而且仅被预报一次。

自助法:从给定训练集中有放回的均匀抽样,也就是说,每当选中一个样本,它等可能地被再次选中并被再次添加到训练集中。对于小数据集,自助法效果很好。

回归问题:定量输出或者连续变量。输出变量是实数或连续值。最简单的是一元函数。

分类问题:问题的结果是离散关系,通常将其结果划分为若干类,只考虑其属于哪一类,并不考虑具体的数值。

笔记内容为作者学习总结,欢迎大家交流探讨,如有侵权,联系作者。
更多内容请关注公众号:玖柒壹点点

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值