专栏名称: 产业智能官
用新一代技术+商业操作系统(AI-CPS OS:云计算+大数据+物联网+区块链+人工智能),在场景中构建状态感知-实时分析-自主决策-精准执行-学习提升的认知计算和机器智能;实现产业转型升级、DT驱动业务、价值创新创造的产业互联生态链。
目录
相关文章推荐
新闻广角  ·  2025春节档电影票房破50亿 再创新高 ·  昨天  
新闻广角  ·  大反转!即将抵达泉州! ·  昨天  
新闻广角  ·  美国正对DeepSeek开展国家安全调查 ·  4 天前  
新闻广角  ·  知名景区紧急通知:暂停开放!已开始退票 ·  5 天前  
51好读  ›  专栏  ›  产业智能官

【机器学习】刘继明:智能化应用场景如何实现——谈小数据机器学习开发路径

产业智能官  · 公众号  ·  · 2019-09-14 05:38

正文



近年来,机器学习(machine learning)方法在人工智能方面取得了瞩目的成就。与普通解决方案不同的是,人工智能的解决方案通常包含三个部分:产品、数据和算法(架构)。也就是说,当涉及到人工智能领域的产品战略时,除了产品战略本身之外,还需要考虑到相关的算法和数据策略。目前,业界已经有足够的产品战略管理理论和关于深度神经网络算法的研究,开源社区也提供了多种算法和体系结构,但在大多数情况下,收集数据比开发和应用算法要困难得多。


收集数据成为中小型企业困扰


提到人工智能,往往离不开大数据。通过大数据技术,可以实现对海量数据的收集、处理与分析,挖掘出隐藏在数据中的特定规律,并基于该规律进行有效预测,从而实现智能化应用场景的需求。


互联网时代信息技术的高速发展使收集大数据成为可能,也让人工智能有了坚实的数据基础,基于大数据的深度学习,近年来在人工智能领域取得的成绩有目共睹。而随着5G通信技术、物联网等相关产业快速发展,万物互联所产生的数据信息将会加速增长,给人工智能行业带来更多机会。


国外的谷歌、亚马逊、微软,国内的百度、阿里巴巴、腾讯等互联网巨头,都是大数据公司典型的代表。这些巨头通过本身的互联网业务覆盖,拥有大量的数据,借助数据方面的先天优势在人工智能领域处于领先地位。


但对于广大中小型或初创公司而言,既没有足够的数据基础,也无法承担购买数据所需的大笔费用,所以,最简单的方法是通过谷歌、百度等搜索引擎和数据下载,配合快速注释工具或标记进行注释。公开的数据信息内容源往往量小且时效性差,网络爬虫技术则可以获取最为即时且规模庞大的互联网数据信息内容。有时一些看似微不足道的数据在收集、整理、提取、分析之后也会具有相当价值,这对于市场分析、竞品调研、用户分析、商业决策是一个非常有效的方式。


但是在许多特定的应用场景下,尤其是当自身的数据样本比较有限时,在公开的互联网上采用即便是最有效的爬虫技术,也是勉为其难的。在这种场景下,将如何构建人工智能驱动的产品和解决方案呢?


由于拥有大数据的公司寥寥无几,基于大数据的深度学习显然不是实现人工智能的唯一途径。而基于小样本数据的机器学习,则是适合广大中小型或初创公司的路线。业内早已开始对小数据的机器学习进行各项研究,也取得了一定的成果。那么如何减少人工智能产品对数据的需求?基于小数据,视不同情况,通过机器学习的特定方法不失为有效途径。


利用数据满足机器学习要求


对于自己所拥有的数据,我们要尽可能充分利用,尤其是增加数据点的数量(假设可以访问一些付费或者半付费的可用数据资源,从单纯的谷歌百度搜索到像ImageNet和知网这样的数据库),相关的方法有数据扩充和迁移学习等。


在数据量有限的情况下,可以通过一些特殊的随机变换来进行数据扩充,即在不改变数据基本特征的前提下,将数据的其他信息进行随机变化,从而生成更多可用于机器训练的数据。


该项技术在图像识别领域的应用就是一个很好的例子。比如通过对同一张图片进行旋转、翻转、缩放、裁剪等操作,可以得到很多“不同”的图片。这些图片虽然人类一眼就能看出是同一张图片的变种,似乎有数据重复的嫌疑,但对机器而言,这些都是不同的学习样本,与万千其他图片一样,同样能很好满足机器学习的要求。


基于大数据的深度学习往往需要耗费巨大的数据、计算资源,于是,人们想到机器学习是否可以做到像人类那样继承已有的知识,从而举一反三更快掌握新的知识呢?比如在某个小数据领域相邻的领域找到拥有大量数据的领域,当两者之间的知识迁移成功,那么前者就不需要收集庞大的数据集了。迁移学习就是这样一种提高机器学习效率的方法。


很少有人会随机初始化权重,从头开始训练整个深度学习网络。原因显而易见:一是,我们很难拥有足够大的数据集;二是,真实环境的各种数据集本质上与公开数据集并没有多大的差异。因此,较为常见的一种做法是,先基于非常大的数据进行预训练,再将模型用于实际的项目。


目前,自然语言处理领域迁移学习的典型案例是各种预训练词向量。这些词向量基于大规模通用语料进行了训练,已经学习到特定语言中词语语义的分布式表示。当解决特定领域的下游任务时,只需要结合新的语料进行模型调优,就可以收到很好的效果。而如果想完全基于特定领域的语料进行训练,虽然可能会取得更好的成绩,但往往因语料的规模太小以至于无法学习到足够的语言和语义特征。此时,迁移学习基本是唯一的选择。


生成数据完成深度学习架构重构


有目共睹的是,各行各业都有许多深度学习架构可以参考,从有助于生成数据的角度来重构目前的产品和解决方案架构,是行之有效的。相关的方法有灵活使用分类器、半监督学习和数据生成等。


当需要使用某类特定标记的数据时,现有数据的各类标记并不一定能够直接匹配,怎么办?我们可以采用递归分类的方法,将一个指定的问题分解成多个分类问题,从现有的数据集中获取想要的数据。


举个简单的例子,比如某个交通相关的项目需要获取行人的图片集,但现有的图片集中并没有行人这一分类器,因此不能直接获取。通过分析行人的图片特征,我们可以使用多个分类器来获取行人的图片。首先,在现有的数据集上按照“是否有人”进行分类,获取包含人的图片集。然后,在包含人的图片集上按照“是否有斑马线”进行分类,这样就可以获取同时包含人与斑马线的图片集,大致就可以作为“行人”图片集了。当然,这只是一种比较简单的分类方法,其实还可以按照“有人”“步行”“马路”等标准进行数据分类,以获取到行人的图片集。


在其他的应用场景中同样可以使用以上方法。通过对已有的数据集应用多个不同的分类器,从而得到一组全新的数据集。分类的方法实际上并不是什么高深的技术手段,而是我们解决问题的一种思维方式。在实际项目中灵活切换思维方式,从不同的角度多尝试,就更有可能解决遇到的问题。


监督学习是基于有标签的训练数据进行训练的,而无监督学习的训练数据是无标签的。监督学习的成本往往比较高,现实中获取大量有标记的数据比较困难,往往需要耗费大量人力、物力。


以常见的内容推荐系统为例,需要请用户标注自己感兴趣的内容,但绝大部分用户不愿意花时间去标注。最后只能得到少量的已标记数据和大量的未标记数据,在这种情况下就可以采用半监督学习的方法。基于少量已标记数据训练模型,并使用该模型对大量未标记的数据进行分类标注,得到带有大量伪标签的数据,这些数据可应用于后续的深度学习。如果我们事先了解了数据的设置和分类方式,采用半监督学习就能够以较低的学习成本获得准确度较高的大数据集。


此外,在部分情况下,我们也可以通过数据生成来解决机器学习中面临的数据不足的问题。数据生成的方法有很多种,其中比较常用的生成对抗网络(Generative Adversarial Network,GAN)是一个非常强大的数据生成方法。GAN最早由Ian Goodfellow提出,由生成器和鉴别器两个网络组成,在整个框架中扮演不同的角色。生成器尝试生成假数据,而鉴别器来判断该数据究竟是样本数据还是生成的假数据,通过这两个网络的不断对抗,生成的数据会越来越接近样本数据,最终得到的样本经常可以以假乱真。


另一种数据生成方式方法是长短时记忆网络(Long Short-Term Memory,LSTM)。LSTM模型可以通过一个大的序列数据集,如通过文本文档来学习该语料库的一般结构属性,之后便可以根据新的输入,生成能代表原始语料库的新序列。这种方法可以应用在不同的领域,按照应用场景的需求生成大量的音乐、语音、代码或者文档等。


在生活中比较常见的一个应用场景,就是手机地图APP里的明星语音导航,实际上明星并没有真的录制那么多提示语音,而是只需朗读很少的词语用于语音特征采集,之后导航软件就能播放出几乎接近真人发声的导航提示。另外,还可以通过一些其他途径来合成数据。比如,要是你熟悉游戏引擎,那么就可以通过编写代码,使用游戏引擎来合成数据,生成所需要的数据集。


自主学习应对场景多重需求


除此之外,通过深入理解领域知识来构建自身需要更少数据的数字模型,也是当下人工智能场景应用研究的重要途径。当然,这就需要对数据的需求与产品的体系结构之间进行权衡,更复杂的模型可能涉及到更多的产品开发工作。相关的方法有强化学习、单样本学习及孪生神经网络和模拟练习等。


人工智能在一些场景下,可以采用强化学习的方式自己完成训练,而不需要任何外部数据样本。强化学习主要基于行为主义理论,系统在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。AlphaGo Zero就是一个强化学习的最佳案例之一。


2016年,谷歌DeepMind团队打造的人工智能AlphaGo,动用了3000万盘比赛作为其训练数据,击败了传奇围棋选手李世石;2017年,新版的AlphaGo Zero仅用了490万盘比赛数据,经过3天训练,就以100∶0的比分在与旧版AlphaGO的比赛中大获全胜。经过21天的自学,又打败了AlphaGo的Master版本,成为历史上最强的玩家。


AlphaGo Zero并没有使用任何人类的围棋经验数据,而是采用自己和自己对弈的方式进行自我学习。系统从一个一无所知的神经网络开始,结合强大的算法,在自我博弈中不断调正、更新、预测行动,掌握游戏规则,迅速超过了人类的游戏水平。


在现实生活中某些人,你只要见过一两次,到下次见面时就能够顺利地认出来,并不需要成千上万张别人的照片来进行学习对比。虽然人工智能距离人类智能还有很大的距离,但是这种根据少量的数据样本进行匹配判断的方法,在人工智能领域其实也有着广泛的应用。在某些情况下,我们是可以通过单样本学习算法,仅仅从少量数据中学会对类似数据进行对比识别。


在人脸识别的应用场景中,经常会用到孪生神经网络技术。孪生神经网络由两个相同的子网络组成,两个子网络有相同的参数和权重。通过孪生神经网络建立人脸检测深度学习模型,并定义好检测精度。该模型会将输入模型中的人脸数据,与系统中已有的人脸数据,表示为两个嵌入式矢量进行对比。当两者之间的距离在精度范围内时,可认为是同一个人,否则就是其他人。单样本学习及孪生神经网络对数据的需求本质上较少,属于小数据应用的典型之一。


讲到模拟练习,一个很典型的应用场景就是自动驾驶。我们知道,通常随着驾驶里程数的增加,司机的驾驶水平也越来越好。司机掌握驾驶技巧的关键在于练习,基于人工智能的自动驾驶也是如此。但是,自动驾驶在技术成熟以前,因为各地法规限制,很难在真实环境中练习。而且真实场景练习也存在一些局限性。比如,虽然路况瞬息万变,但道路本身基本不变,每次驾驶练习的场景无法多样化;另外,因为受到现实车速的限制,使得驾驶所消耗的时间无法压缩,这样就很难进一步提高练习效率等。而采用模拟练习能很好地解决以上问题。


谷歌就是采用了这种方式对自动驾驶进行模拟练习的。每天2.5万辆虚拟的自动驾驶汽车在模拟环境中行驶高达800万英里,对功能进行测试、优化和升级。通过模拟各种行驶场景,帮助自动驾驶汽车在现实中取得更好的表现。模拟环境可以将单一的现实场景,变成无数次的练习和掌握技能的机会,从而更有效地提高自动驾驶的水平。


当然,建立高质量的模拟环境也是一项复杂工程,往往需要额外的人力物力投入。但应该看到,通过模拟环境下的练习,确实可以提供更高数量级的学习数据,在实际应用时可以权衡考虑是否能使用这种方法。


由此可见,对于一些标注样本短缺的情况,我们仍然可以根据实际使用场景,设计出不同的方案来达到深度学习对于数据的要求。实际应用中初始数据的多少并不是至关重要的,关键还是在于我们如何能够灵活地找到有效使用方法,提高数据利用价值,最终达到更好的应用效果。


来源:《前沿科学》2019年第2期


先进制造业+工业互联网




产业智能官  AI-CPS


加入知识星球“产业智能研究院”:先进制造业OT(自动化+机器人+工艺+精益)和工业互联网IT(云计算+大数据+物联网+区块链+人工智能)产业智能化技术深度融合,在场景中构建状态感知-实时分析-自主决策-精准执行-学习提升的产业智能化平台;实现产业转型升级、DT驱动业务、价值创新创造的产业互联生态链。


产业智能化平台作为第四次工业革命的核心驱动力,将进一步释放历次科技革命和产业变革积蓄的巨大能量,并创造新的强大引擎;重构设计、生产、物流、服务等经济活动各环节,形成从宏观到微观各领域的智能化新需求,催生新技术、新产品、新产业、新业态和新模式;引发经济结构重大变革,深刻改变人类生产生活方式和思维模式,实现社会生产力的整体跃升。

产业智能化技术分支用来的今天,制造业者必须了解如何将“智能技术”全面渗入整个公司、产品、业务等商业场景中,利用工业互联网形成数字化、网络化和智能化力量,实现行业的重新布局、企业的重新构建和焕然新生。

版权声明产业智能官(ID:AI-CPS推荐的文章,除非确实无法确认,我们都会注明作者和来源,涉权烦请联系协商解决,联系、投稿邮箱:[email protected]