AI 技术讲座精选:深度学习和人工智能技术是如何加速领域驱动设计的

【AI100 导读】你的代码库与企业模型是否匹配?深度学习和其他人工智能技术正在帮助领域驱动设计与组织业务目标进行匹配,这是如何做到的呢?

当下,人工智能技术得到了广泛地应用,用于提高各种应用的性能。ThoughtWorks 总部位于芝加哥,是一家应用开发咨询公司,Steven Lowe 是其首席咨询师。Steven Lowe 在 San Francisco 的 DeveloperWeek 上表示:现在的软件开发工程者开始考虑类似深度学习的人工智能技术如何能提高理解复杂软件的能力。Lowe 正在致力于使用深度学习,来分析软件架构快速从旧代码库中获得见解的新方法。

Lowe 表示,或许在短期内深度学习最大的用途是探测软件编码方式和公司现行业务模型之间的差距。他认为,对于一个现代软件组织来说,应用领域驱动设计是一个最重要的工具,可以利用其构建员工理解公司现行业务流程的模型。这个模型提供了一个验证假设的假说。深度学习的真正价值源于其底层模型能被现实世界中的部署所验证。将企业代码库与域模型匹配使其能以较少的努力而更容易对新的业务想法进行迭代。

深度学习需要付出的代价更小

当下总共有上百种人工智能技术,它们大多都是相互依赖的。深度学习是一种很有意思的形式,它允许开发者用最小的代价定制算法。开发者可以简单地从一个大的数据集训练算法开始,并且不需要监督过程。在华盛顿 Jeopardy 挑战中,读唇术和教计算机从图片中识别猫等都已经证明了 Google 的 AlphaGo 项目的能力。

Lowe 表示,他想开发一个深度学习算法集以使大代码库更容易实现可视化过程。有一天,一个同事请他帮忙看一个超过两百万行代码的相当大的遗留系统。于是,他便开始使用各种代码分析工具来对这些代码进行度量,这样可以更方便的看到可疑的地方。

Lowe 猜想,很可能存在某种方法实现复杂代码的可视化。于是,他便利用各种可视化工具做实验。这使得力图的创造成为可能,力图可以表现出各节点之间的权重,也就是代码相互作用的力图。但这毫无意义,因为它仅仅能够显示出巨大的泥球而已。

使代码可视化变得有用

软件可视化方面还有很多其他的有发展前景的技术。Adrian Kuhn 大约在8年前为软件制图开发了一款工具。Primitive.io 为代码结构可视化展示了一个虚拟现实工具。这些工具使得代码结构的理解变得非常容易,但是对开发者寻找下一步正确的方向来说,仍然有很多挑战。

令人沮丧的是,想要找到 bug 和坏的数据模型之间的差异是非常困难的。想在代码中识别出任何形式深层的继承层次也是非常困难的。Lowe 认为给事物贴标签是有可能实现的,但那可能会与强大的可视化背道而驰。

大数据可视化与业务设计的结合

有前景的技术能够应用于潜在语义的检索,深度学习技术能通过分析文档来挖掘其中所含单词的语义或意思。潜在语义分析运用深度学习为单词建模生成矢量图形,这些单词有些是语料库的文档,有些甚至是应用代码。Word2vec 是一个有前景的工具,运行于 Google 的 TensorFlow 之上,它能表示出:王后(Queen)=国王(King)-男人(man)+女人(woman)。

Lowe 应用 Word2vec 来为软件项目处理用户故事和代码。他表示,在比较应用代码与业务领域模型的匹配的紧密度上,这可能是一个非常有前景的技术。领域驱动设计利用用户故事和领域专业知识来快速生成业务模型。该初始模型仅仅代表业务运作方面的假说,假说的基础是企业领域专家。它必须通过实际的工作代码来检验的,查验假说与现实的紧密程度。

随着组织将该模型在其软件中的逐步实现过程,有偏差的假设和错误的假设等均可以被检测出来。随后,业务团队能够调整其模型来观察哪些功能可以提高其业务流程和目标。但是,当应用代码不能显示可行的业务模式的时候,调整模型的过程将会极具挑战性。开发者需要花费大量的时间来填补其中的空白。

深度学习只是个开始

Lowe 表示,他相信将来会有更好的工具,实现代码和业务模型偏差的快速可视化过程,这个工具能使决定在哪投放资源来提高业务灵活性变得更容易。把代码和用户故事的潜在语义分析的结果绘制到同一个可视化模型中,能使寻找这些偏差变得更容易。

对于开发者来说,使用深度学习来分析软件架构只是其中的一个例子。其他的研究着眼于利用深度学习以及其他人工智能技术实现代码开发的自动化过程。 Lowe 表示,这种类型的研究尚且处于初级阶段。同时,他也鼓励其他开发者开始他们自己的研究项目。

Lowe 说:“我们不能否认深度学习和其他相关技术是相当强大的工具,但是我们还没有使用过它们。问题不在于软件,而是我们的大脑有限,我们读代码是为了了解并理解代码的基本情况和意义。如果我们能用机器学习来加速这个过程,将是一个巨大的进步。可视化和虚拟现实可以帮我们更多的利用理解能力。”

接下来

  • 使用认知分析(cognitive analytics)来揭露数据的隐藏模式
  • 认知计算(cognitive computing)和它在真实世界中的位置
  • 深度学习驱动 Loop AI quests

本文作者 George Lawton 是一位位于加利福尼亚州旧金山附近的记者。在过去的15年里,他为关于计算机,通信,知识管理,商业,健康和其他感兴趣的领域的出版物撰写了超过2000个故事。

本文由 AI100 编译,转载需得到本公众号同意。


编译:AI100

原文链接:http://www.theserverside.com/news/450413273/How-deep-learning-and-AI-techniques-accelerate-domain-driven-design


原文发布于微信公众号 - AI科技大本营(rgznai100)

原文发表时间:2017-02-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏赵永飞的专栏

基于视频内容的 VR 片源识别算法研究

本文用了从数学层面和代码层面,再结合一些通俗易懂的例子,详细地描述了回归主要涉及的原理和知识,希望对于机器学习的初学者或者有兴趣研究模型具体实现的同学带来一点帮...

7321
来自专栏ATYUN订阅号

fast.ai推出全新的7周实用深度学习课程

深度学习入门课程第1部分,为编码人员提供实用的深度学习入门课程,由Jeremy Howard (Enlitic创始人)授课。深度学习入门课程不需要研究生水平的数...

984
来自专栏新智元

【开发者的2018】GAN、AutoML、统一框架、语音等十大趋势

来源:medium 作者:Alex Honchar 翻译:刘小芹 【新智元导读】本文从开发者的角度,总结了GAN、AutoML、语音识别、NLP等已经可以用...

3466
来自专栏量子位

像人一样脑补世界!DeepMind历时一年半搞出GQN,登上Science

1905
来自专栏智能算法

推荐算法概览

原文:Overview of Recommender Algorithms 作者: MAYA.HRISTAKEVA 译者: 孙薇 推荐算法概览(一) 为推...

4197
来自专栏QQ大数据团队的专栏

用户增长分析——用户流失预警

1 前言 针对用户增长分析这个课题,本文主要从用户防流失的角度,阐述如何基于QQ社交网络数据构建用户流失预警模型,找出高潜流失用户,用于定向开展运营激活,从而...

7K3
来自专栏大数据文摘

干货:从相关性到RNN,一家线上“租碟店”的视频推荐算法演进 | 公开课实录

2492
来自专栏数据的力量

用户增长分析系列:用户流失预警

针对用户增长分析这个课题,本文主要从用户防流失的角度,阐述如何基于QQ社交网络数据构建用户流失预警模型,找出高潜流失用户,用于定向开展运营激活,从而有效控制用户...

2043
来自专栏AI科技大本营的专栏

周末漫谈|XGBoost与深度学习到底孰优孰劣?都说XGBoost好用,为什么名气总不如深度学习?

来源|Quora 整理|AI100 AlphaGo大战柯洁、李世石后,所有人都能谈上几句深度学习。人工智能在围棋上的这场突破,最终还要归功于机器学习三巨头三十年...

4548
来自专栏大数据挖掘DT机器学习

机器学习工程师31门课程(视频):从新手到专业

机器学习不仅仅是模型 产生这个问题的原因就是所有人都以为机器学习的模型就是机器学习本身,以为对那些个算法理解了就是机器学习的大牛了,但实际上完全不是这样的。 ...

38618

扫码关注云+社区