频频被关注的AI,怎样才能快速落地应用?

回顾过去几年的上榜技术,越来越多与AI有关的技术入选榜单,例如2008年的机器学习、2009年的 Siri、2013年的深度学习、2014年的神经形态芯片、2016年的语音接口与知识分享型机器人以及 2017年的自动驾驶强化学习等,可见AI影响之深。

但另一方面,我们也发觉,尽管AI影响范围如此之广,但仍然还只是亚马逊、谷歌等大体量企业的“玩具”以及部分创业公司的显著标签。对于绝大多数企业来说,AI 的成本高、全面部署困难等特性依然为它的落地带来不小的困扰。

基于这样的背景,有人称,AI这波来势汹汹的浪潮实在需要一个智能化的坚实“底座”来加以支撑,才能“站得住脚、走的更远”,云计算就被“首当其冲”列入了备选阵营中。那么,如何利用云计算降低AI落地的门槛?企业又当如何通过“云端赋能”,降低研发成本、加快方案迭代呢?10月27日,UCan下午茶深圳站,来自UCloud、达观数据、探智立方的技术专家们分享了他们的技术经验与实战心得。

AI公有云平台实践

AI算法依赖于大量计算资源,对于想涉猎AI的企业来说,第一步面临的就是成本压力。这其中包括服务器成本、运维成本、人员培养学习成本等。因此,如何有效降低成本,加快AI方案的试错,是每个想把AI算法产品化的企业都需要考虑的问题。UCloud深度学习开发工程师范融,就如何利用公有云的规模效应和分时租赁特性,讲述了使云用户在不改变AI算法开发流程的基础上,降低企业的AI转型门槛的方法和工具。

一般,一个AI项目的研发周期包含场景的选择、AI框架/算法的选型、训练环境/推理环境的选择以及配置,最后才是进行AI训练和推理工作。目前,业界主流的AI算法和框架非常多,如何在繁杂的组合里选择合适的算法和框架?范融分享了AI平台构建时需要考虑的五大要素:算法兼容性、平台扩展性、集群化、纵向拓展、易用性,用户可以以这五大要素为基准点,根据平台构建的目的来搭配最适合的场景、算法和框架。

基于上述的五大要素,UCloud构建了自有的AI基础平台,包含AI Train训练和AI Inference在线服务两大核心功能。如下图所示,最上层是训练日志和TensorBoard框架,下面接着就是图形化界面,这里面主要是完成一些基本的部署操作,右侧是Python SDK接口,接入层下面即为平台核心的AI Train和AI Service服务功能,最底层封装了所有的硬件和存储接入。

现场,范融以图像分类为例,详细讲解并演练了UCloud AI平台的应用。以Dockerfile打包为例,用户只需通过创建Dockerfile、编译镜像、上传镜像、下载并上传数据、即可在UCloud的AI平台山进行训练并获取训练结果。

此外,UCloud在GitHub开源了自身基于AI基础平台的公共镜像库和SDK,用户可以通过开源的SDK,将UCloud开源的镜像库打包成自身可以应用的镜像,开发者可以在本地镜像使用,也可以放在UCloud的在线服务或者说训练的平台,这些都是完全兼容的。感兴趣的同学也可以访问链接https://github.com/ucloud/uai-sdk/,进行深入了解和演练。

云计算助力人工智能快速搭建底层资源

众所周知,人工智能的入门门槛非常高,需要整理原始的数据源、购买底层服务器资源、搭建不同的算法框架、保障平台的稳定性等,这给运维和研发带来了庞大的工作量。UCloud的解决方案架构师徐强,围绕数据的整理、模型训练及在线服务等维度,探讨了何利用云计算助力人工智能快速搭建底层资源,让用户专注于自身的算法以及业务代码。

徐强认为,当今AI落地的挑战主要源于两个方面:一是基础环境的选择,如AI框架、算法、依赖环境、硬件设备、存储资源的选择等等;二是AI系统的建设,一个稳定的、可用的AI系统,不仅需要兼容各类AI框架和算法,同时还要具备平台扩展能力以及弹性伸缩能力,以支持业务规模不断扩大。

要解决这些问题,可以从以下四个方面着手:数据共享、环境分离、底层资源共享和可扩展性建设。

·数据共享:不管是AI训练还是AI推理,都需要大量的数据做支撑,对于初创企业和个人开发者而言,收集大量可用于AI训练的数据是非常困难的。为了解决数据收集的难题,UCloud基于区块链技术,研发了一款数据共享平台安全屋。安全屋首先通过云计算让用户可以把数据上传,但是用户无法下载;其次,通过区块链技术确保每个用户对数据操作进行全方面的记录,一旦发现数据泄露,即可全程追踪,并实施相应的处罚。如此,即可保证在数据所有权不变的情况下,实现数据使用权的可信流通共享。

·环境分离:环境分离可以使运行环境完全隔离,不同任务之间不会产生软件冲突。UCloud采用了容器封装和数据接入两种方法实现环境的分离 ,将不同功能的AI框架、依赖环境、硬件设备、存储分隔开来,让不同的模块实现不同的功能。

·底层资源共享和可扩展性建设:UCloud是公有云平台,底层可以提供海量的计算、存储、网络资源,并通过负载均衡(ULB)、分布式存储、动态扩缩容等技术,实现AI服务的横向扩展和纵向扩展。

文本智能处理的深度学习技术

文档资料的内容自动化处理是人工智能技术落地的关键应用之一,达观数据联合创始人张健演讲过程中,分享了在对篇幅较长的文本进行内容理解和信息挖掘过程里,如何应用深度学习技术来进行更好的分析挖掘,以及工程实践中值得注意的应用点等实践知识。

文本智能处理的应用非常广泛,包括文本分类、情感分析、分词、NER、机器翻译等领域,但不管是哪种应用,其处理过程基本上是一致的。首先需要对文本数据进行预处理,这种预处理主要是将数据转换成模型需要的形式,然后通过深度学习模型识别信息,再通过一些后处理,将信息转化为人类可以识别或者需要的结果。

在整个过程中,最重要的步骤就是构建学习模型过程,以文本分类为例,传统的机器学习技术在进行文本分类过程时,主要流程为首先选择分类器SVM、KNN、LR(不同领域成本比较高,通常需要分类算法提升效果),然后再深度学习处理文本分类任务,这过程中,输入的是序列,输出为具体要分类的标签。传统机器学习的好处是不需要特征工程构造特城,缺点是不同领域的定制优化成本高,常常需要分类算法融合提升效果。

为了解决这个问题,可以通过端到端的深度学习方式来减少大量特征工程,并使用非监督语料训练字词向量提升效果。这种方式主要是通过对词的级别、句子级别进行注意力机制处理,通过输出结合注意力机制挑选出认为重要的词,然后根据注意机制输出一个比较重要的句子,实现分类的目的。

端到端的深度学习模型可以使用非监督数据训练字词向量,提升泛化能力,同时一些模型结构能够克服传统模型的缺点,但在小数据量的情况下其挖掘效果不一定理想且调参工作量有时不亚于特征工程

因此,在业务场景下,张健建议尽量收集并理解数据,分析问题本质,进而选择合适模型。在初始阶段可以使用传统机器学习模型快速尝试,作为baseline版本,碰到疑难问题时可以使用端到端的方式,或许会有惊喜。但具体问题还需具体实践,不断尝试才能有新的收获。

AutoML人工智能自动化模型设计与进化算法实现

AutoML是当前人工智能发展的一个重要方向,受到Google,Facebook,等诸多公司的重视。近期,在AutoML领域,特别是深度神经网络模型搜索有了很多突破性的进展。探智立方CTO钱广锐着眼于目前在机器/深度学习模型搜索方法的进展,对不同方法之间的差异进行了详细的分析,并介绍探智立方的DarwinML自动化模型设计平台底层进化算法实现、特性以及DarwinML在金融、制造业领域内的实际案例。

AutoML主要用于解决AI应用中数据特征提取和扩增、机器学习深度学习模型合成以及模型超参调优等,其实现方式包括序贯模型优化、迁移学习强化学习元学习、进化算法以及基于连续假设的梯度求导方法(DARTS)等。

目前,主流的神经网络架构搜索中,进化学习(evolution)和强化学习(Reinforcement)是采用得比较多的,但这两种方法的搜索空间都是不可微的。DARTS提出了一种可微的方法,它认为可以用梯度下降来解决架构搜索的问题,效率可以比之前不可微的方法快了几个数量级。如图,每两个节点之间都连着所有的边,点和点之间所有连接的权重为alpha(加权平均,和softmax类似),alpha称作一个权值矩阵,可以通过梯度下降优化alpha矩阵。当然这个算法有也比较大的问题,它在简单的网络里面效力会非常快,但是在复杂网络系统里还有很多需要改进的地方。

一个效果好的AI模型通常需要大量的经验调优,这个过程包括:数据预处理、特征选择、模型算法的选择、调参、上线后的模型优化升级、效果评估。探智立方在这方面也做了大量的探索实践,并以AutoMl为核心技术,发布了人工智能模型自动设计平台-DarwinML 1.0。该平台以自动化机器学习以基因进化理论为设计思想,用户只需要具备人工智能基本概念,即可设计开发机器学习深度学习模型,从而缩短建模人员及数据科学家创建模型的时间及门槛。

·首先,DarwinML 平台会提取数据的统计信息。

·然后它开始自动进行模型设计。在进化到每一代时,都会对模型进行一次评估,以选择继续演化的方向,同时防止种群,也就是所有模型的整体早熟(避免重复使用前期效果比较好的相同或者相近的模型,尽量让选择在解空间里分散化)。

·当演化到达客户的准确率或者时间限制要求后,DarwinML 平台会再固定模型结构进行一次参数精调,同时进行超参数的局部优化。

·最后,在整个过程结束后,以报告的形式将模型的特征、硬件配置、各项表现指标返回给用户。

值得一提的是DarwinML 平台是一个全生命周期管理平台,基于其基因库,平台具有自我演化、自主设计的特性,可以加快模型设计收敛速度,提供ML模型可解释性,能够无缝与生产系统对接,并对生产模型实时优化。

UCloud技术
UCloud技术

分享UCloud的技术创新、架构设计、实践总结,内容同步于微信公众号“UCloud技术公告牌”

https://www.ucloud.cn/
专栏二维码
理论深度神经网络文本分类机器学习深度学习文本处理图像分类UCloud
3
相关数据
达观数据机构

达观数据成立于2015年,是中国领先的文本智能处理企业,利用先进的文字语义自动分析技术,为企业、政府等各大机构提供文本自动抽取、审核、纠错、搜索、推荐、写作等智能软件系统,让计算机代替人工实现业务流程自动化,大幅度提高运营效率。 达观数据为企业提供完善的文本挖掘、知识图谱、搜索引擎和个性化推荐等大数据服务,是国内唯一一家将自动语义分析技术应用于企业数据化运营的人工智能公司。

http://www.datagrand.com/
区块链技术

区块链是用分布式数据库识别、传播和记载信息的智能化对等网络, 也称为价值互联网。 中本聪在2008年,于《比特币白皮书》中提出“区块链”概念,并在2009年创立了比特币社会网络,开发出第一个区块,即“创世区块”。

深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

自动驾驶技术技术

从 20 世纪 80 年代首次成功演示以来(Dickmanns & Mysliwetz (1992); Dickmanns & Graefe (1988); Thorpe et al. (1988)),自动驾驶汽车领域已经取得了巨大进展。尽管有了这些进展,但在任意复杂环境中实现完全自动驾驶导航仍被认为还需要数十年的发展。原因有两个:首先,在复杂的动态环境中运行的自动驾驶系统需要人工智能归纳不可预测的情境,从而进行实时推论。第二,信息性决策需要准确的感知,目前大部分已有的计算机视觉系统有一定的错误率,这是自动驾驶导航所无法接受的。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

TensorBoard技术

一个信息中心,用于显示在执行一个或多个 TensorFlow 程序期间保存的摘要信息。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

数据科学技术

数据科学,又称资料科学,是一门利用数据学习知识的学科,其目标是通过从数据中提取出有价值的部分来生产数据产品。它结合了诸多领域中的理论和技术,包括应用数学、统计、模式识别、机器学习、数据可视化、数据仓库以及高性能计算。数据科学通过运用各种相关的数据来帮助非专业人士理解问题。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

文本分类技术

该技术可被用于理解、组织和分类结构化或非结构化文本文档。文本挖掘所使用的模型有词袋(BOW)模型、语言模型(ngram)和主题模型。隐马尔可夫模型通常用于词性标注(POS)。其涵盖的主要任务有句法分析、情绪分析和垃圾信息检测。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

元学习技术

元学习是机器学习的一个子领域,是将自动学习算法应用于机器学习实验的元数据上。现在的 AI 系统可以通过大量时间和经验从头学习一项复杂技能。但是,我们如果想使智能体掌握多种技能、适应多种环境,则不应该从头开始在每一个环境中训练每一项技能,而是需要智能体通过对以往经验的再利用来学习如何学习多项新任务,因此我们不应该独立地训练每一个新任务。这种学习如何学习的方法,又叫元学习(meta-learning),是通往可持续学习多项新任务的多面智能体的必经之路。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

张量技术

张量是一个可用来表示在一些矢量、标量和其他张量之间的线性关系的多线性函数,这些线性关系的基本例子有内积、外积、线性映射以及笛卡儿积。其坐标在 维空间内,有 个分量的一种量,其中每个分量都是坐标的函数,而在坐标变换时,这些分量也依照某些规则作线性变换。称为该张量的秩或阶(与矩阵的秩和阶均无关系)。 在数学里,张量是一种几何实体,或者说广义上的“数量”。张量概念包括标量、矢量和线性算子。张量可以用坐标系统来表达,记作标量的数组,但它是定义为“不依赖于参照系的选择的”。张量在物理和工程学中很重要。例如在扩散张量成像中,表达器官对于水的在各个方向的微分透性的张量可以用来产生大脑的扫描图。工程上最重要的例子可能就是应力张量和应变张量了,它们都是二阶张量,对于一般线性材料他们之间的关系由一个四阶弹性张量来决定。

机器翻译技术

机器翻译(MT)是利用机器的力量「自动将一种自然语言(源语言)的文本翻译成另一种语言(目标语言)」。机器翻译方法通常可分成三大类:基于规则的机器翻译(RBMT)、统计机器翻译(SMT)和神经机器翻译(NMT)。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

梯度下降技术

梯度下降是用于查找函数最小值的一阶迭代优化算法。 要使用梯度下降找到函数的局部最小值,可以采用与当前点的函数梯度(或近似梯度)的负值成比例的步骤。 如果采取的步骤与梯度的正值成比例,则接近该函数的局部最大值,被称为梯度上升。

特征工程技术

特征工程是利用数据所在领域的相关知识来构建特征,使得机器学习算法发挥其最佳的过程。它是机器学习中的一个基本应用,实现难度大且代价高。采用自动特征工程方法可以省去采用人工特征工程的需求。Andrew Ng 说“挖掘特征是困难、费时且需要专业知识的事,应用机器学习其实基本上是在做特征工程。”

云计算技术

云计算(英语:cloud computing),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给计算机各种终端和其他设备。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

迁移学习技术

迁移学习是一种机器学习方法,就是把为任务 A 开发的模型作为初始点,重新使用在为任务 B 开发模型的过程中。迁移学习是通过从已学习的相关任务中转移知识来改进学习的新任务,虽然大多数机器学习算法都是为了解决单个任务而设计的,但是促进迁移学习的算法的开发是机器学习社区持续关注的话题。 迁移学习对人类来说很常见,例如,我们可能会发现学习识别苹果可能有助于识别梨,或者学习弹奏电子琴可能有助于学习钢琴。

特征选择技术

在机器学习和统计学中,特征选择(英语:feature selection)也被称为变量选择、属性选择或变量子集选择。 它是指:为了构建模型而选择相关特征(即属性、指标)子集的过程。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

自动化机器学习技术

机器学习最近在许多应用领域取得了长足的进步,这促成了对机器学习系统的不断增长的需求,并希望机器学习系统可以被新手快速地熟悉并使用。相应地,越来越多的商业企业推出产品旨在满足这种需求。这些服务需要解决的核心问题是:在给定数据集上使用哪种机器学习算法、是否以及如何预处理其特征以及如何设置所有超参数。这即是自动化学习(AutoML)企图解决的问题。

推荐文章
暂无评论
暂无评论~