查看原文
其他

微软AI Lab:助你从零开始成为AI开发者

微软亚洲研究院 微软研究院AI头条 2019-03-29



编者按:AI Lab是微软在Build 2018大会上发布的人工智能开放项目平台,向开发者展示微软最新AI技术的使用案例。微软希望AI Lab能帮助全球的开发者运用微软丰富的开放资源和平台来探索自己的人工智能项目。本文翻译自微软研究院机器学习博客“AI Lab: Learn to Code with the Cutting-Edge Microsoft AI Platform”,有删减。


在今年的Build大会上,微软推出了人工智能开放项目平台——AI Lab,旨在帮助规模庞大且正在快速增长的开发者队伍来探索、学习和使用微软AI平台的最新技术,探索自己的第一个人工智能项目。



AI Lab目前开放了五个人工智能项目,展示了微软自定义视觉服务(Custom Vision Service)、AttnGAN、Visual Studio Tools for AI、Cognitive Search、机器阅读理解等最新技术的使用。在每个项目中,开发人员都可以访问GitHub上的开源代码,尝试Demo演示,还可以观看清晰的介绍视频,从而获得对人工智能潜在的商业问题和解决方案的深入理解。


绘画机器人

绘画机器人(DrawingBot)是由微软研究院人工智能实验室的研究人员开发的,能根据文本信息绘制出相应图像的模型。DrawingBot的核心技术是GAN网络(Generative Adversarial Network),其中包含两个机器学习模型,一个模型根据文本描述生成图像,另一个模型用文本描述去鉴别生成图像的真实性。如果生成的图像和文字描述相差甚远,就无法通过鉴别模型的检测,因此GAN网络通过两个模型的合作,能够使生成的图像越来越接近本文所描述的内容。然而,GAN网络对“一只蓝色的鸟”、“一棵常青树”这样比较简单的文字描述能生成效果较好的图像,而对于“一只绿冠红腹、黄色翅膀的鸟”这样复杂的描述,生成的图像还不那么尽如人意。


想象一下,如果让我们来根据一段描述画一幅画,我们会怎么做?通常来说,我们会在这个过程中不断地参考文本描述,尤其是正在绘制的区域所对应的那部分文字。基于这个启发,研究人员将GAN网络改进为AttnGAN网络(attentional GAN),用数学表达来模拟人类的这种注意力特征,将输入的文本分解为单个的单词,将单个单词与待生成图像的特定区域相匹配。根据CVPR上的一篇研究论文的测试结果,这种方法使生成图像的质量提高了近三倍。



项目链接:

https://www.ailab.microsoft.com/experiments/1e9e1eef-2ab1-41f1-b341-0118f414bd78



JFK文件演示

为了帮助用户更好地了解美国总统肯尼迪被暗杀的整个事件,微软的研究人员利用Azure搜索服务和微软认知服务开发了一个应用程序,能够自动分析与暗杀有关的所有解密文件,并将原始文档整理成结构化的信息。


JFK文件演示背后的核心技术是Cognitive Search,这是微软在Build大会上发布的一项基于AI的内容理解技术,由内置认知服务功能的Azure搜索提供支持,能从任何内容资源中提取数据,并运用可组合的认知功能从数据中提取需要的知识。这些知识将被整理和存储在索引中,优化搜索数据的体验。Cognitive Search能方便快捷地利用云和AI的强大力量处理数据,当我们第一次将它应用于JFK文件演示系统时,效果令人惊叹,我们提出的许多有趣的问题不仅可以获得回答,还可以在原始文件中看到答案和问题之间的关系。JFK文件演示系统能使我们的客户轻松将其应用到自己的领域、回答他们所需要的问题。



项目链接:

https://www.ailab.microsoft.com/experiments/7d6b0652-51dc-440d-a12a-481f28525143


风格迁移

风格迁移(Style Transfer)是一种对图片风格进行转换的技术,能从一张图片中提取出风格并应用到另一张图片中,也就是我们常见的“滤镜”功能。这个项目展示了如何训练和部署深度学习模型,开发一个简单有趣的风格迁移应用。



风格迁移项目使用Visual Studio Tools for AI来训练和部署深度学习模型。Visual Studio Tools for AI能让开发者在本地开发机器上轻松部署Keras + Tensorflow模型的训练代码,然后上传到Azure VM上,利用强大的Nvidia GPU来训练模型,大大提高工作效率。我们在提高模型训练速度的同时,在生成图像中保留了与原始图像的语义相似性。此外,Visual Studio Tools for AI还能直接从训练好的TensorFlow模型生成C#代码,无需再手动重新编写。使用全新的Microsoft.ML.Scoring库,开发者可以便捷地在应用中使用TensorFlow或ONNX模型,在设备端或者云端运行。



风格迁移只是采用训练机器学习模型方法的应用之一,在应用中使用机器学习技术的过程本质上是相同的。开发者可以使用Tensorflow或CNTK等框架自行训练模型,也可以使用Azure认知服务等预先训练的AI模型。


项目链接:

https://www.ailab.microsoft.com/experiments/99907c05-d487-450b-9ee9-901b40205e81


机器阅读理解

机器阅读理解(MRC)是让计算机根据给定的上下文来回答问题,需要对上下文和问题之间的复杂交互进行建模。微软的研究人员采用新的神经网络ReasoNet(Reasoning Network)来模仿人类阅读时的推理过程:ReasoNets会带着问题反复阅读文档,每次关注文档的不同部分,直到给出令人满意的答案。



同时,微软亚洲研究院的研究人员也提出一种独特的R-NET算法,使机器阅读理解能力在SQUAD数据集上超越了人类平均水平。R-NET是一个端到端的深度学习模型。模型分为四层,最下面一层给问题和文本中的每一个词做一个表示,即深度学习里的向量;第二步,将问题中的向量和文本中的向量做一个比对,找出与问题接近的文字部分。接下来,将结果放在全局中进行比对。这些都是通过注意力机制(attention)达到的。最后一步,针对挑出的答案候选区中的每一个词汇进行预测,哪一个词是答案的开始,到哪个词是答案的结束。这样,系统会挑出可能性最高的一段文本,最后将答案输出出来。


当我们将这些机器阅读理解算法用于由沈向洋和Brad Smith撰写的《未来计算:人工智能及社会角色》一书时,机器阅读理解回答了大量有趣的问题。机器阅读理解技术能够应用于企业级数据处理,帮助客户回答特定领域的问题。



项目链接:

https://www.ailab.microsoft.com/experiments/ef90706b-e822-4686-bbc4-94fd0bca5fc5


Drones + AirSim

Drones + AirSim是一项有趣的模拟“搜索与拯救”的任务。我们先在AirSim中创建了一个3D环境来模拟微软园区中的足球场,将各种动物放置在球场中;创建了一个Python脚本模拟无人机,它可以在球场中自由拍摄照片。然后我们将无人机拍摄的图像上传至Azure自定义视觉(Custom Vision)服务,训练模型来识别图像中的动物,利用Azure IoT Edge将训练好的模型部署到无人机上。于是,无人机能够在足球场中飞行、拍照,并实时识别出画面中的动物。这一项目能够让用户了解实时自定义的AI如何在无人机这样的边缘设备上运行。



项目链接:

https://www.ailab.microsoft.com/experiments/92262b36-de2e-444e-86ca-8bcb8bd02454

 


AI Lab即将开放社区申请,我们希望更多的开发者能够参与进来,学习和使用微软最新的AI服务和平台。点击阅读原文即可访问AI Lab。


欢迎在留言区写下你对微软AI平台的想法!



你也许还想看


 微软更新AirSim,支持自动驾驶汽车研究

 普通程序员要如何开发AI应用?

 DA-GAN技术:计算机帮你创造奇妙“新物种”


感谢你关注“微软研究院AI头条”,我们期待你的留言和投稿,共建交流平台。来稿请寄:msraai@microsoft.com。



    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存