机器学习简介

机器学习简介

一、机器学习、人工智能、深度学习是什么关系?

先一张图说明三者的关系:

image-20240709111654208

再说说人工智能应用场景分类:

image-20240709095354635

机器学习使计算机能够从研究数据和统计信息中学习。而人工智能是一个宏大的愿景,目标是让机器像我们人类一样思考和行动,既包括增强我们人类脑力也包括增强我们体力的研究领域。而学习只是实现人工智能的手段之一,并且,只是增强我们人类脑力的方法之一。所以,人工智能包含机器学习。机器学习又包含了深度学习

二、什么是机器学习?

2.1 介绍

机器学习是一门关于数据学习的科学技术,它能帮助机器从现有的复杂数据中学习规律,以预测未来的行为结果和趋势。例如:当我们在网上商城购物时,机器学习算法会根据我们的购买历史来推荐可能会喜欢的其他产品,以提升购买概率。image-20240709104754413

2.2 机器学习的原理

下面以监督学习为例,给大家讲解一下机器学习的实现原理。假如我们正在教小朋友识字(一、二、三)。我们首先会拿出3张卡片,然后便让小朋友看卡片,一边说“一条横线的是一、两条横线的是二、三条横线的是三”。

image-20240709105612141

不断重复上面的过程,小朋友的大脑就在不停的学习

当重复的次数足够多时,小朋友就学会了一个新技能——认识汉字:一、二、三

我们用上面人类的学习过程来类比机器学习。机器学习跟上面提到的人类学习过程很相似。

  • 认字的卡片在机器学习中叫——训练集
  • “一条横线,两条横线”这种区分不同汉字的属性叫——特征
  • 小朋友不断学习的过程叫——建模
  • 学会了识字后总结出来的规律叫——模型

通过训练集,不断识别特征,不断建模,最后形成有效的模型,这个过程就叫“机器学习”

image-20240709105747237

三、监督学习、非监督学习、强化学习

image-20240709095309387

3.1 监督学习

监督学习是指我们给算法一个数据集,并且给定正确答案。机器通过数据来学习正确答案的计算方法。

举个例子:我们准备了一大堆猫和狗的照片,我们想让机器学会如何识别猫和狗。当我们使用监督学习的时候,我们需要给这些照片打上标签。

image-20240709105858765

我们给照片打的标签就是“正确答案”,机器通过大量学习,就可以学会在新照片中认出猫和狗。

image-20240709105916421
这种通过大量人工打标签来帮助机器学习的方式就是监督学习。这种学习方式效果非常好,但是成本也非常高。

3.2 非监督学习

非监督学习中,给定的数据集没有“正确答案”,所有的数据都是一样的。无监督学习的任务是从给定的数据集中,挖掘出潜在的结构。

举个例子:我们把一堆猫和狗的照片给机器,不给这些照片打任何标签,但是我们希望机器能够将这些照片分分类:image-20240709105943828

通过学习,机器会把这些照片分为2类,一类都是猫的照片,一类都是狗的照片。虽然跟上面的监督学习看上去结果差不多,但是有着本质的差别:非监督学习中,虽然照片分为了猫和狗,但是机器并不知道哪个是猫,哪个是狗。对于机器来说,相当于分成了 A、B 两类。

3.3 强化学习

强化学习主要由智能体(Agent)、环境(Environment)、状态(State)、动作(Action)、奖励(Reward)组成。智能体执行了某个动作后,环境将会转换到一个新的状态,对于该新的状态环境会给出奖励信号(正奖励或者负奖励)。随后,智能体根据新的状态和环境反馈的奖励,按照一定的策略执行新的动作。上述过程为智能体和环境通过状态、动作、奖励进行交互的方式。

智能体通过强化学习,可以知道自己在什么状态下,应该采取什么样的动作使得自身获得最大奖励。由于智能体与环境的交互方式与人类与环境的交互方式类似,可以认为强化学习是一套通用的学习框架,可用来解决通用人工智能的问题。因此强化学习也被称为通用人工智能的机器学习方法。

最典型的场景就是打游戏。2019年1月25日,AlphaStar(Google 研发的人工智能程序,采用了强化学习的训练方式) 完虐星际争霸的职业选手职业选手“TLO”和“MANA”。还有我们打王者荣耀里面的那些人机,我猜应该也是训练出来的,我们不同段位遇到的人机的能力也是有区别的。

四、机器学习实操的7个步骤

机器学习在实际操作层面一共分为7步:

  1. 收集数据
  2. 数据准备
  3. 选择一个模型
  4. 训练
  5. 评估
  6. 参数调整
  7. 预测(开始使用)

假设我们的任务是通过酒精度和颜色来区分红酒和啤酒,下面详细介绍一下机器学习中每一个步骤是如何工作的。

image-20240709110249376

步骤1:收集数据
我们在超市买来一堆不同种类的啤酒和红酒,然后再买来测量颜色的光谱仪和用于测量酒精度的设备。这个时候,我们把买来的所有酒都标记出他的颜色和酒精度,会形成下面这张表格。

image-20240709110305227

这一步非常重要,因为数据的数量和质量直接决定了预测模型的好坏。

步骤2:数据准备

在这个例子中,我们的数据是很工整的,但是在实际情况中,我们收集到的数据会有很多问题,所以会涉及到数据清洗等工作。

当数据本身没有什么问题后,我们将数据分成3个部分:训练集(60%)、验证集(20%)、测试集(20%),用于后面的验证和评估工作。

image-20240709110400515

步骤3:选择一个模型
研究人员和数据科学家多年来创造了许多模型。有些非常适合图像数据,有些非常适合于序列(如文本或音乐),有些用于数字数据,有些用于基于文本的数据。

在我们的例子中,由于我们只有2个特征,颜色和酒精度,我们可以使用一个小的线性模型,这是一个相当简单的模型。

步骤4:训练
大部分人都认为这个是最重要的部分,其实并非如此~ 数据数量和质量、还有模型的选择比训练本身重要更多(训练知识台上的3分钟,更重要的是台下的10年功)。

这个过程就不需要人来参与的,机器独立就可以完成,整个过程就好像是在做算术题。因为机器学习的本质就是将问题转化为数学问题,然后解答数学题的过程。

步骤5:评估
一旦训练完成,就可以评估模型是否有用。这是我们之前预留的验证集和测试集发挥作用的地方。评估的指标主要有 准确率、召回率、F值。

这个过程可以让我们看到模型如何对尚未看到的数是如何做预测的。这意味着代表模型在现实世界中的表现。

步骤6:参数调整
完成评估后,您可能希望了解是否可以以任何方式进一步改进训练。我们可以通过调整参数来做到这一点。当我们进行训练时,我们隐含地假设了一些参数,我们可以通过认为的调整这些参数让模型表现的更出色。

步骤7:预测
我们上面的6个步骤都是为了这一步来服务的。这也是机器学习的价值。这个时候,当我们买来一瓶新的酒,只要告诉机器他的颜色和酒精度,他就会告诉你,这时啤酒还是红酒了。