首页 > 手机 > 配件 > 监督学习方法总结,机器学习方法

监督学习方法总结,机器学习方法

来源:整理 时间:2022-03-31 23:17:38 编辑:华为40 手机版

入门机器学习该如何入手?

入门机器学习该如何入手

作为一名科技工作者,同时也是一名计算机专业的教育工作者,我来回答一下这个问题。首先,当前学习机器学习是不错的选择,机器学习作为人工智能领域的六大研究方向之一,目前的热度也相对比较高,而且由于机器学习与人工智能领域的其他研究方向也有比较紧密的联系,所以通常也把学习机器学习作为入门人工智能的第一步。机器学习本身涉及到六个大的环节,分别是数据收集、算法设计、算法实现、算法训练、算法验证和算法应用,所以学习机器学习可以从数据收集开始学起,然后逐渐向其他环节过渡。

在当前的大数据时代,数据收集和整理的方式也越来越多,获取数据的途径也比较多,可以从基本的数据库技术开始学起。实际上,机器学习作为大数据分析的两种常见方式,大数据领域的从业者往往也需要重点掌握机器学习技术。算法设计是机器学习的核心,所以算法知识的学习是机器学习的重点,学习算法知识可以从基本的常见算法开始,比如决策树、朴素贝叶斯、支持向量机等算法都需要重点学习一下,在学习算法的过程中,一定要结合具体的案例进行学习。

在实现算法时可以采用Python语言,目前Python在机器学习领域的应用也比较普遍。最后,对于目前IT行业的开发人员来说,学习机器学习知识,可以重点结合一下大数据、人工智能平台所提供的开发环境,这样会有一个更好的学习体验,同时也会在一定程度上加强自身的实践能力,毕竟未来大量的机器学习开发都离不开平台的支撑。

如何更高效的自学机器学习?

如何更高效的自学机器学习

机器学习其实是一个特别大的范畴,高效自学机器学习有两个方面的关键要素:首先要对机器学习有一个宏观的认识,知道哪些是领域是热门且重点领域,做到抓住重点,有的放矢;其次,你需要在熟练掌握一门语言工具的前提下结合具体项目实践,增加自己的实践经验,这个地方我给python打一个广告。下面说一些具体的东西,可能会对你有所帮助。

1: 机器学习可以解决哪些问题?主要分为两类问题:分类问题和回归问题,其中分类问题又可以分为多分类问题和多标签多分类问题。其他还有很多进阶版本的问题,一般由多个问题复合而成,比如物体检测,实际是把图像分割和分类问题整合到了一起;2: 机器学习算法有哪些?我们大体可以将机器学习的算法分为传统机器学习和深度学习算法。

传统机器学习算法中,常见的有SVM,决策树,随机森林等,大都在sklearn中进行了集成,可以非常方便的调用。深度学习算法主要依赖学习框架,主流的包含Tensorflow和PyTorch,各有优缺点,请自行了解做进一步选择。其次就是深度学习的网络结构又可以分为卷积神经网络,递归神经网络,自动编码器,对抗生成网络,图卷积神经网络等。

目前深度学习在各个领域都取得了巨大的性能提升,是机器学习中的重点领域,另外图卷积也逐渐成为重中之重;3: 常见的机器学习的流程是什么样的?一个不失一般性的流程由这么几部分构成:数据集整理,数据集预处理,数据集划分(训练集,测试集,验证集,常见比例7:1:2),模型训练,模型验证,模型测试。4: 怎么评价模型性能好坏?常见指标有哪些?我们通常使用验证集的数据测试并选择最终的模型,然后用测试数据集来测试我们模型的性能。

得到最终模型后,我们可以使用更大的独立测试数据集来进一步评估模型的性能。评估模型性能,我们就需要使用具体的性能指标。根据数据集中不同类别样本的比例,我们将数据集分为均衡数据集和非均衡数据集。均衡数据集我们可以使用准确率、损失值、马修斯系数、F1-score、ROC 曲线以及 AUC 值等指标,这类数据集的评估相对容易。

对于非均衡数据集,我们需要谨慎的使用准确率来衡量模型性能,结合具体问题,我们一般更多的使用F1-score和ROC-AUC等指标。5: 关于公共数据集。现在网上有很多公开的且标注完备的数据集,包括图像的、序列的、文本的等等,为机器学习提供了良好的学习环境。练手阶段需要充分利用这些资源!此外,机器学习不是万能的,很多情况下性能取决于数据和问题定义,不是每一个问题都能用机器学习解决。

有没有必要把机器学习算法自己实现一遍?

有没有必要把机器学习算法自己实现一遍

如果你是个搬砖的,那不需要;如果你是个前端开发工程师,那不需要;如果你是后端开发工程师,那也不需要;如果你做人工智能或ai的应用集成工作,那实现一遍最好,不实现一遍多少影响工作效率;如果你搞数据标注一类工作的,那也不需要;如果你做ai算法的,那必要性比较大;如果你做ai方向科研的,这应该是基本功吧。

人工智能、机器学习、深度学习三者之间的关系?

人工智能、机器学习、深度学习三者之间的关系?有人说,人工智能(AI)是未来,人工智能是科幻,人工智能也是我们日常生活中的一部分。事实上,这些说法都是正确的,这一切都取决于你所指的是哪一种人工智能。例如,此前Google DeepMind的AlphaGo打败了韩国的围棋大师李世乭九段。在媒体描述DeepMind胜利的时候,就曾将人工智能(AI)、机器学习(Machine Learning)和深度学习(Deep Learning)都提到了。

这三者在AlphaGo击败李世乭的过程中都起了作用,但它们说的并不是一回事。要解释这三者之间的关系和应用,最简单的方法就是画一个同心圆,如下图,人工智能是最早出现的,也是最大、最外侧的同心圆;其次是机器学习,稍晚一点;最内侧,是深度学习,也是当今人工智能大爆炸的核心驱动。从概念的提出到走向繁荣1956年,几位计算机科学家相聚在达特茅斯会议(Dartmouth Conferences),提出了“人工智能”的概念。

其后,人工智能就一直萦绕在人们的脑海之中,并在科研实验室中慢慢孵化成形。在之后的几十年,人工智能一直在不停地两极反转,既有人把其称作人类文明耀眼的未来;也有人把其当做是技术疯子们的妄想,嗤之以鼻。坦白说,直到2012年之前,这两种声音都还同时存在。过去几年,尤其是自2015年以来,人工智能开始大爆发。

很大一部分原因是由于GPU的广泛应用,使得并行计算变得更快、更便宜、更有效。当然,无限拓展的存储能力和骤然爆发的数据洪流(大数据),也使得图像数据、文本数据、交易数据、映射数据全面海量爆发。让我们慢慢梳理一下计算机科学家们是如何将人工智能从最早的一点点星星之火,发展到能够支撑那些每天被数亿用户使用的实际应用的。

人工智能(Artificial Intelligence)——为机器赋予人的智能King me:扮演跳棋玩家的计算机程序,是最早的人工智能实例之一,在20世纪50年代激起了人工智能的早期浪潮。早在1956年夏天的那次会议上,人工智能的先驱们就梦想着用当时刚刚出现的计算机来构造复杂的、拥有与人类智慧同样本质特性的机器,既我们所谓的“强人工智能”(General AI)。

这是一个无所不能的机器,它有着我们所有的感知(甚至比人更多),以及我们所有的理性,可以像我们一样思考。人们在电影里也总是看到这样的机器人:像星球大战中友好的C-3PO;或者是邪恶的终结者。强人工智能目前还仅存在于电影和科幻小说中,原因很简单,因为我们还没法实现它们,至少目前还不行。我们目前能实现的,一般被称为“弱人工智能”(Narrow AI)。

弱人工智能是能够与人一样,甚至比人更好地执行特定任务的技术。例如,Pinterest上的图像分类;或者Facebook的人脸识别。这些都是弱人工智能在实践中的例子。这些技术实现了人类智能中某些特定部分。但它们是如何实现的?这种智能是从何而来?其答案就是同心圆中的第二层,机器学习。机器学习—— 一种实现人工智能的方法Spam free diet:机器学习能够帮助你的收件箱(相对地)摆脱垃圾邮件的困扰。

机器学习最基本的做法,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测。与传统的为解决特定任务的人工编码程序不同,机器学习是用大量的数据来“训练”,通过各种算法从数据中学习如何完成任务。机器学习直接来源于早期的人工智能领域。传统算法包括决策树学习、推导逻辑规划、聚类、强化学习和贝叶斯网络等等。

众所周知,我们现在还没有实现强人工智能,而早期机器学习方法甚至连弱人工智能都无法实现。机器学习最成功的应用领域是计算机视觉,虽然也还是需要大量的手工编码来完成工作。人们需要手工编写分类器、边缘检测滤波器,以便让程序能识别物体从哪里开始,到哪里结束;写形状检测程序来判断检测对象是不是有八条边;写分类器来识别字母“S-T-O-P”。

使用以上这些手工编写的分类器,人们总算可以开发算法来感知图像,判断图像是不是一个停止标志牌。这个结果还算不错,但还算不上是那种能让人为之一振的成功,特别是遇到云雾天,标志牌变得不是那么清晰可见,又或者被树遮挡一部分,算法就难以成功了。这也是为什么此前很长一段时间中,计算机视觉的性能一直无法接近到人类的水平。

它太僵化,并且太容易出现错误。随着时间的推进,学习算法的发展改变了一切。深度学习——一种实现机器学习的技术Herding cats:从YouTube视频中挑选猫的图像是深度学习的第一个突破性演示之一。人工神经网络(Artificial Neural Networks)是早期机器学习中的一个重要的算法,历经了数十年的推演。

神经网络的原理是受我们大脑的生理结构——互相交叉相连的神经元启发。但与大脑中一个神经元可以连接一定距离内的任意神经元不同,人工神经网络具有离散的层、连接和数据传播的方向。例如,我们可以把一幅图像切分成图像块,输入到神经网络的第一层。在第一层的每一个神经元都把数据传递到第二层。第二层的神经元也是完成类似的工作,把数据传递到第三层,以此类推,直到最后一层,然后生成结果。

每一个神经元都为它的输入分配权重,这个权重的正确与否与其执行的任务直接相关。最终的输出由这些权重加权决定。我们仍以停止(Stop)标志牌为例。将一个停止标志牌图像的所有元素都打碎,然后用神经元进行“检查”:八边形的外形、救火车一样的红颜色、鲜明的字母、交通标志的典型尺寸和静止不动运动特性等等。神经网络的任务就是给出结论,它到底是不是一个停止标志牌。

神经网络会根据所有权重,给出一个经过深思熟虑的猜测——“概率向量”。这个例子里,系统可能会给出这样的结果:86%可能是一个停止标志牌;7%的可能是一个限速标志牌;5%的可能是一个风筝挂在树上等等。然后网络结构告知神经网络,它的结论是否正确。此前,这样的神经网络并没得到为人工智能圈的认可。然而,事实上在人工智能出现的早期,神经网络就已经存在了,只是神经网络对于“智能”的贡献微乎其微。

其主要原因是因为即使是最基本的神经网络,也需要大量的运算。神经网络算法的运算需求难以得到满足。不过,还是有一些虔诚的研究团队(例如:多伦多大学的Geoffrey Hinton)坚持研究,实现了以超算为目标的并行算法的运行与概念证明。但也直到GPU得到广泛应用,这些努力才见到成效。我们回过头来看这个停止标志识别的例子。

神经网络是调制、训练出来的,时不时还是很容易出错的。它最需要的,就是训练。需要成百上千甚至几百万张图像来训练,直到神经元的输入的权值都被调制得十分精确,无论是否是雾天、晴天还是雨天,每次都能得到正确的结果。只有这个时候,我们才可以说神经网络成功地自学习到一个停止标志的样子;或者在Facebook的应用里,神经网络学习了如何识别你妈妈的脸;又或者是2012年吴恩达(Andrew Ng)教授在Google实现了神经网络学习到猫的样子等等。

吴恩达教授的突破在于,把这些神经网络从基础上显著地增大了。层数非常多,神经元也非常多,然后给系统输入海量的数据,来训练网络。在他的示例中,数据是一千万YouTube视频中的图像。吴教授为深度学习(deep learning)加入了“深度”(deep)。这里的“深度”所指的,正是神经网络中众多的层。现在,经过深度学习训练的图像识别,在一些场景中甚至可以比人做得更好:从识别猫,到辨别血液中癌症的早期成分,再到识别核磁共振成像中的肿瘤。

Google的AlphaGo先是学会了如何下围棋,然后与它自己下棋训练。它训练自己神经网络的方法,就是不断地与自己下棋,反复地下,永不停歇。深度学习,给人工智能以璀璨的未来深度学习使得机器学习能够实现众多的应用,并拓展了人工智能的领域范围。如今,深度学习已经能够实现各种任务,几乎使得所有的机器辅助功能都变为可能。

文章TAG:学习机器监督

最近更新