菜单
本页目录

人工智能与机器学习

一、人工智能简介

作为人工智能方面的爱好者,我是从2023年11月份正式开始接触人工智能,但是作为计算机科学与技术专业的同学,我并没有系统的学习过人工智能方面的知识。真正开始学习的是在Datawahel的一期的实战营中的大语言模型基础,但是呢我对整个人工智能的发展和技术并不是特别了解,所以我决定开始从头学习人工智能,这个文档也是为了记录我学习的过程,希望对大家有所帮助。

首先呢,要先了解AI(Artificial Intelligence)的相关概念,以及一些人工智能方面的专业词语,首先我们要了解什么是人工智能,人工智能(Artificial Intelligence,AI)是计算机科学的一个分支,旨在创建能够模仿人类智能行为的系统。这种系统可以执行类似于人类进行的认知任务,如学习、推理、解决问题、感知、理解语言以及做出决策。

接下来就是一个比较常见的名词AIGC,那么什么是AIGC呢?AIGC(AI Generated Content)从文字上面来理解就是生成内容的AI,比如说ChatGPT就是AIGC以及我们写代码时候常用的Copilot、CodeGeex等以及最近爆火的Sora这些生成内容的AI。AIGC会根据你输入的问题给出相应的答案,在某一方面来说AIGC是具有创造性的,但是他的创造性来源于训练的数据,数据量的大小也是决定AIGC能力的一个标准。

二、机器学习相关概念

下面来了解机器学习、监督学习、无监督学习、强化学习、深度学习、大语言模型之间的相关概念以及它们之间的关系。

1.机器学习(Machine Learning,ML)

机器学习是一门多领域交叉学科,涉及概率论、统计学、计算机科学等多门学科。机器学习的概念就是通过输入海量训练数据对模型进行训练,使模型掌握数据所蕴含的潜在规律,进而对新输入的数据进行准确的分类或预测。

​ 机器学习的核心是"使用算法解析数据,从中学习,然后对新数据做出决定或预测"。也就是说计算机利用以获取的数据得出某一模型,然后利用此模型进行预测的一种方法,这个过程跟人的学习过程有些类似,比如人获取一定的经验,可以对新问题进行预测。

其中机器学习又包括监督学习、无监督学习、半监督学习、强化学习、深度学习等

2.监督学习(Supervised Learning)

监督学习是目前应用最多的学习方式,这种方法是 需要通过“监督者”预先填好标签(label)的训练数据进行学习的方式。监督学习的任务,根据目的不同可以分为 回归分析 (regression)和分类(classification)。

2.1回归分析VS分类

回归分析任务的输出是 连续 的,分类输出的任务是 离散 的,举俩例子来感受一下区别:

“回归分析“的典型代表是 房价预测 ——输入数据是房子的属性值,如房子的大小、卧室数量、洗手间个数等,输出数据是房价(连续的)。

“分类”的代表是 癌症诊断 ,这时输入的数据是肿瘤属性,如大小、位置,输出的数据则是 良性或恶性(离散的)。

发散一下:也就是说,回归分析类似我们求解y=2x+5,俩变量之间的关系可以拟合成连续的直线或曲线,而分类就是划分类别,输出没有关系的离散结果,比如癌症和非癌症,降雨和不降雨,正常和异常。

有人解释了回归分析的这个回归怎么理解,说regression回归最早是一个生物学概念,高个子父母生出的孩子个头通常比父母矮小,矮个子父母的孩子个头通常比父母高不少,从人类整体来看,身高总会有个均值——即自然界的规律是既不让你高得脱离控制,也不让你矮得没有下限,总体趋势是回归一个中间值。

3.无监督学习(Unsupervised Learning)

无监督学习,无需事先为数据贴好标签。这种方式更像是聚类(clustering)的过程,即根据数据的特征,发现实例之间的相似性。

著名机器学习专家吴恩达曾使用“鸡尾酒会”的例子对无监督学习进行了解释。大意是在一场鸡尾酒会上,会场两个不同位置各放了一个麦克风,现在给机器布置一个任务,要把麦克风采集到的音频数据进行分离,看看哪些声音分别属于谁, 由于我们无法事先给每个声音打上标签,所以这一声音分离任务就是“无监督”。

无监督学习最成功的案例,可能要算谷歌脑在无监督的情况下通过观看Youtube视频截图形成“猫”的概念。

4.深度学习(Deep Learning)

深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。

它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。 深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。

深度学习在搜索技术,数据挖掘,机器学习,机器翻译,自然语言处理,多媒体学习,语音,推荐和个性化技术,以及其他相关领域都取得了很多成果。深度学习使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。

5.强化学习(Reinforcement Learning)

强化学习也属于机器学习,但是与监督学习和无监督学习具有显著区别。

强化学习需要 通过与“环境”的交互,逐步进行学习。然而在与环境交互的学习过程中,很难从整体上判断过程中的每一步究竟谁对谁错。

举个栗子,在与李在石棋赛的第二盘,AlphaGo第37手肩冲的一招棋,是让棋圣聂卫平也不禁“脱帽致敬”的好棋,然而纵观整场比赛,带领AlphaGo走向最终胜利的,究竟是这个神来之笔,还是之前的伏笔,抑或是之后看似不经意的某一步, 几乎让人无法做出判断。

也就是说,在这种情况下,我们这些“监督者”无法真正地对每一步、每一个情形都贴上对或错的标签。

5.1强化学习vs无监督学习

可能有人要问了,既然都没法事先贴上对错标签,那强化学习是不是和无监督学习一样呢?

否。

强化学习和无监督学习的机制不同——无监督学习的目标是挖掘数据的潜在结构,而强化学习则是 通过与环境交互获得最优解的过程。

通俗来讲,强化学习问题中,机器代理(agent)会与环境进行交互,根据当前的环境状态权衡“即时奖励”(immediate reward)以及“延时奖励”(delayed reward),然后采取行动……依此过程不断地往复、试错,寻找能够最大化累积奖励信号的策略(policy)。

在这一过程中,机器代理的行动也会对环境造成影响,而最终,在获得较高的奖励后,得到这一奖励的过程中的所有行动均会得到加强,也就是奖惩机制。

5.2强化学习vs深度学习

深度学习(Deep Learning) 是从数据训练数据中学到一个非线性函数,将未知数据与标签对应 ;强化学习则是学习一个状态机制,在各种情况下每次都选择回报最大的方式。

长期以来,强化学习一直无法推广到现实世界中的复杂问题上,最主要的原因是,现实中可能遇到的情况错综复杂,无法一一枚举。 直到深度学习出现,当深度学习与强化学习结合,对现实情况的枚举就换成了:

首先对现实情况做模式识别,然后对有限的模式进行枚举,大大减少了计算量和存储代价——这种学习方式也更接近 人类思维的模糊判断 的特点。

最早将深度学习与强化学习结合的例子之一就是DeepMind的围棋高手AlphaGo,当时主要的深度学习方法是监督式学习,也就是必须 对训练数据进行标注, 这项工作通常需要人力完成,而深度学习所需的数据量又十分巨大,所以标注数据的获得经常成为深度学习方法的一大瓶颈。

而强化学习在一定程度上避免了这个过程,因为它的学习过程不依赖于标注,而是根据产生的结果好坏来调整,如婴儿学习走路的过程。因此学术界不少人认为,强化学习及同样不需要标注数据的无监督学习是未来深度学习的发展方向。

5.3强化学习的分类

强化学习可以分为 基于模型 (Model_Based)和无模型(Model-Free)两大类。

基于模型的学习认为环境有确切的模型,因此需要大量的计算进行建模,并根据模型选择最合适的策略;而无模型学习中并没有环境的显式模型,因此需要大量的经验,通过反复试验、不断试错的过程来评价行动的优劣。

5.4强化学习的权衡

强化学习的过程需要解决的一大难题,是在 对未知的“探索” (expooration)和 对已知的“利用” (exploitiaton)之间进行抉择。对此DeepMind研究算大卫·席尔瓦曾举过一个简单易懂的例子:

如果你的任务是去你最喜欢的餐厅就餐,那么挑选曾经去过的饭店中你最喜爱的一个显然是个稳妥又简便的选择,不过总贪恋过去,你又如何知道那些没有去过的餐厅中有没有自己更喜欢的呢?

强化学习任务中,机器代理在每个环境状态下都必须采取行动,因此选择行动的方式也尤为重要,这些方法中最简单的是 贪婪选择 (greedy selection),即每次都选择最高的行动—状态值(这是一种纯粹“利用”的方法)。

当然,为了寻求“探索”与“利用”的平衡,学者们还开发了更复杂的选择机制:

  • 贪婪选择算法,与传统的贪婪方法一样倾向于选择最高的行动—状态值,不同之处在于机器代理有较小的概率去选择未探索过的行动;
  • 玻尔兹曼选择(Boltzmann Selection) 则是另一种平衡方法,此算法吸纳了概率的概念,在选择时还会考虑状态—动作的相对值,即与其他可能性比较之后,如果差值极高则倾向于选择高的那一个,如果行动值差距不大,那么选择的概率也就近似。

5.5强化学习的应用

  • 自动驾驶汽车——在复杂的路况下让汽车进行自动驾驶,这些自动驾驶汽车的行为 并非通过常规的软件编程方式完成,而是通过反反复复练习,自己学会如何流畅、安全地并线。 有专家认为强化学习尤其适合自动驾驶汽车,因为驾驶过程是一种“良好的决策序列”,如果程序员们需要事先试想行驶过程中所有可能发生的情况,然后再逐一对它们进行编码加以应对,那么这一领域的进展将会缓慢许多。
  • 智能工业机器人——工厂生产线上,机器人快速、精准地完成任务,但这熟练的机器人背后,即便是抓起物品这些看似简单的小动作,往往也需要程序员投入大量时间,反复修改、实验, 而当工厂的生产任务发生改变时,修改、调整机械手臂的预设程序的成本同样不容小觑。 而随着强化学习技术的到来,只需要给工业机器人布置简单的小任务,等上一晚上,第二天清晨它就可以基本“摸索“出一套自己的解决方案,这中间正是大量数据的学习及反复试错。
  • 互联网营销及推广——搜索引擎广告常采用竞价排名机制,按照不同的粒度划分(比如每个小时、每天、每周),整个广告环境的竞争状况会构成一个复杂的网络。基于整个网络的状态和不同状态之间的关系,选择最优出价或出价组合,是广告主的主要目标。 强化学习正好可以满足广告竞价的需求。在广告投放过程或整个活动的生命周期中,通过训练承载有不同阶段状态的模型,根据奖励结果(收入或KPI)的反馈,模型就能调整广告投标价格,以优化该模型下广告投放的效果。

其他场景有:游戏人工智能、机器人博弈、电商推荐、新能源发电、调度管理等

5.6强化学习的发展阻力

  1. “维数灾难”

    当机器人走出实验室,来到现实世界,需要面对更多未知情况,因此在进行强化学习的过程中需要将几十甚至上百个变量纳入考虑,这会导致问题的困难程度呈指数级增长。

  2. 机器人制造及维修成本

    强化学习的本质是不断试错的过程,因此在机器人实践的过程中,很可能在没有得到好的策略前就已经导致设备损伤甚至报废。 而即便设备还能继续使用,也有可能因为损伤而影响之前训练出的策略的准确性。

5.7总结

强化学习是一种根据 奖惩机制 而工作的技术,基本思想是,学习在不同环境状态和状态下哪种行为能把预期利益最大化。

强化学习对于处理的任务,观察当前状态(state),通过一个回报函数(Q-Function)计算不同操作的回报(Q-Value),即结果好还是不好,学习到在不同状态下怎么操作能得到最大的回报。

强化学习十分类似人类学习的机制:从环境中得到反馈、不断学习与改进,这是一种更本质与持续的学习方式。但人类和机器其实是采取了两种不同的方式进行学习。

人类学习其实并不是简单的奖励惩罚机制,我们的学习中有很多 常识和直觉 的因素,人类学习最开始是 被“指导”的,有人告诉我们如何去玩这个游戏,随后我们在很短的时间内就通过猜测探知到这个游戏是怎么玩的。

但强化学习根本不需要知道这个游戏是在干什么 ,它只需要知道这个游戏的目标是什么,以及可以进行的行动有什么,随后,机器的任务就是在这些可以进行的行动中选择最好的,以达到最终的目标。它只是在成千上万个例子的基础上不断重复运行一个数学公式而已。

因此,人类玩家可以在几分钟之内学会玩这个游戏,但如果让一个强化学习的算法最终把一个游戏玩得非常好,可能需要几小时、几天甚至几个月的计算(这取决于计算机的计算能力)。

不过我们 学习骑自行车 的时候则是结合了这两种学习方法:一开始你爸妈告诉你 (指导你) 自行车是怎么工作的,然后你不断联系,在每次的尝试中调整你的动作以免跌倒,提升你自己的稳定性 (奖惩机制) ,直到你可以驾驭它。

三、机器学习总结

最后用一张图来加深对机器学习的理解:

image-20240229191506511

参考资料:

深度学习、强化学习、监督学习……机器学习概念大辨析! - 知乎 (zhihu.com)

datawhalechina/leedl-tutorial: 《李宏毅深度学习教程》