在机器学习的世界里,如果按照学习方式来区分,可以认为存在着四大门派:监督学习、无监督学习(归纳性学习)、半监督学习、强化学习。 四大门派中,监督学习和无监督学习占据绝对的统治地位,半监督学习博取两家之长,而强化学习,则是类似于逍遥派那种传说中的存在。 我们所熟知的各种算法,其实便分属于这四大门派之中,接下来我们一一讨论。

一、监督学习

我特意画了一张图,让这个概念变得更加可视化。

比如我们有一组猫猫狗狗的图片,把它们作为输入数据放进某种算法之中,但是事先,我们已经帮这些图片分别打上了Cat或Dog的正确标签。

通过努力的训练,算法终于找到了“图片”和“标签”之间的“神秘关系”,而我们,则收获了一个能够分辨猫狗图片的“已训练”模型(Trained Model)。

这个时候,我们把一张“陌生”的图片喂给模型,它就能准确的告诉我们这张图片到底是猫还是狗。

在输入数据与标签之间建立“神秘关系”的方式,就被称为算法。

比如最简单的线性回归,稍稍进阶的多项式回归,更加强大的支持向量机和人工神经网络等等,这些我在上一篇文章里有过比较详细的介绍:

机器学习中的回归算法有哪些,各有何优劣? 375 赞同 · 19 评论 回答 此外,监督学习中常用的算法还有:

决策树

随机森林

XGBoost

这三种算法均使用“树”结构作为基础模型,都可被用于处理分类和回归问题,都可以提供输入变量的重要性排序,有利于明晰了解哪些变量起到决定性作用。但是,三者的复杂性、训练策略、对于缺失值的处理方式等,却又各有不同,需要根据实际情况选择恰当的模型进行应用。

随着这两年算力的不断提升,深度学习模型的风头逐渐强劲,其实它们很多也都属于监督学习的范畴之内。毕竟,再“深度”的模型,也逃不开“训练”这个耗时耗力,却又无比重要的过程。

无论是CNN、RNN、LSTM还是CNN-LSTM、ResNet,每一个炫酷的名称背后,其实都代表了一种复杂的算法。有些算法虽然只是在基础算法上进行了一些微调和改进,但是对于我们这些非专业码农来说,将其进行代码实现却并非易事。

多少次,看着顶会文章里的精妙算法两眼放光;多少次,对着并未开源的算法,自己一边揣摩代码,一边一把一把往下薅头发……

但是自从GPT更新到4.0后,大模型终于成长为一个靠谱的辅助程序猿。只要跟它说清楚基本算法以及改进的方向,它就会使尽浑身解数,努力帮助我们进行实现。

当然,过程并不是那样顺利的,在写代码期间,它会答非所问、会胡说八道、会bug频出……这种时候,就需要我们使用者拥有强大的prompt能力,能够百折不挠的调教大模型,最终得到心仪的可执行代码。

🔥技术岗高薪必学:AI大模型技术原理+应用开发+模型训练 ¥0.00 就业无忧 毕竟不是所有需要使用代码的人都是编程大佬,我们这些半桶水的码农,或者刚入行的程序猿,未来对于大模型的依赖或许会特别强烈,提前了解和熟练应用,也算是为自己的未来发展提前引入强大助力。有了大模型,这些高大上的算法和它们最新的改良版本,你都可以轻松使用。

二、无监督学习

很明显,仅从名称就可以看出来,这种学习方式与监督学习完全不同。

同样使用猫猫狗狗的分类案例进行说明:

将猫猫狗狗的图片输入到无监督分类模型中,经过一番“神秘”的计算,模型掐指输出,这些图片长得不一样!根据特征可以分成两类,分别为第一类和第二类。

面对没见过的陌生图片,“已训练”模型可以坚定的告诉我们,这张图片属于第一类!

至于“第一类”和“第二类”分别是什么,毕竟它只是个模型,不是神,不可能在没有标签的情况下无中生有。

无监督学习同样包含很多算法,比如K均值算法、主成分分析法等等。其中K均值法随机选取K个中心点,代表K个类别,随后计算样本点和K个中心点之间的欧氏距离,通过反复迭代实现最终分类;主成分分析法则是通过线性变换,将数据变换到一个新的坐标系统中,其中数据投影的第一大方差为第一主成分,第二大方差为第二主成分……

最近应用较多的,则是一种基于神经网络的自编码器方法。输入数据经过“瓶颈层”后,特征得到了压缩和提取,输出的则是网络学习后的结果,是一组包含输入数据特征,却又与之完全不同的数据。

绝对不要小看非监督学习的神秘力量,要知道,ChatGPT其实就是非监督学习的产物哦!

三、半监督学习

顾名思义,半监督学习就是有一些标签,但是又不完全有,处于一种“既有”“又没有”的奇妙状态。

仍然以猫猫狗狗的分类为例:

先利用数据集中的“有标签数据”进行模型训练,然后将“无标签数据”输入模型,得到预测结果,使这个“无标签数据”成为“有标签数据”,通过不断增加有标签的数据,提升模型的预测准确性。

当然,应用过程中存在很多问题,比如如何判别“无标签数据”的预测结果是真是假?有标签数据构建的模型本身存在过拟合怎么办?

我的意见是查文献和询问大模型:

四、强化学习

与监督学习不同的是,强化学习不需要带标签的输入输出对,同时也无需对非最优解进行纠正。它的思路非常简单,以游戏为例,如果玩游戏时用到的某种策略取得了较高的的得分,那么就在之后的游戏中进一步“强化”这种策略,以期获得更好的成绩。

这种策略来源于心理学中的行为主义理论,认为有机体在环境给予的奖励或惩罚的刺激下,能够逐步形成对刺激的预期,从而逐步形成能够获得最大利益的习惯行为。

由于这种学习方法的构建过程比较繁杂,训练过程非常耗时,因此在我目前的研究过程中,极少使用。毕竟即使只是用强化学习进行超参寻优,也需要很长的时间,而且效果未必强于其他有监督学习方法。

但是,这不妨碍我向ChatGPT询问它的适用场景:

可以看到,强化学习的应用前景非常远大,无论是游戏、机器人、自动驾驶、航空航天,都已经开始出现它的身影,展现出强大的学习能力。

强化学习包括值迭代和策略迭代、Q-learning、State-Action-Reward-State-Action、Policy Gradient Methods、Actor-Critic Methods、Proximal Policy Optimization、Trust Region Policy Optimization、Monte Carlo Tree Search等一系列算法,并且仍在迅速发展的进程中,新的算法和技术不断涌现。

不管是监督学习还是非监督学习,亦或是强化学习还是未来出现的什么XX学习,有一点可以肯定,在各种“需求”的刺激下,机器学习的算法一定会不断发展、日新月异的。作为大数据从业者,“甲方爸爸”们各种稀奇古怪的要求中一定会有一条“使用最新最前沿技术”的咒语,这就需要萌新程序猿们及时了解和掌握最新的机器学习算法,而大模型,正是你最忠诚的助手和强大的武器,毕竟“双剑合璧”,才能“天下无敌”!

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐