Keras缔造者:François Chollet专访

简介: François Chollet作为人工智能时代的先行者,为无数的开发者提供了开源深度学习框架Keras。时代需要这样的巨人,这样开发者才能站在巨人的肩膀上走的更远。文中可以下载他的新书《deep-learning-with-python》!

DataCampHugo Bowne-Anderson访Keras造者François CholletFrançois Chollet是一位人工智能和深度学习研究人员,Python深度学习框架Keras的创造者,并且出版了一本新书“ Python深度学习”

1.François,你是一名人工智能研究员,但是因为人工智能的概念太宽泛。你能否介绍一下你具体做的是什么事情。

这是一个敏锐的观察,通常作为一名人工智能研究员,我们只能研究某一个领域,这样就会导致每个人工智能研究员实际上在做的是有非常大的差异。就我而言,我做的事情可能就是创建深度学习框架Keras。除了开发Keras,我还将Keras集成到Google机器学习框架TensorFlow。在这方面,最近我在机器翻译,计算机视觉和深度学习方面进行了定理验证。我的主要研究兴趣是理解AI中的抽象和推理问题,既如何从感知到抽象再到高度概括成模型。

2.你是著名深度学习框架的Keras的作者,那么能否介绍一下什么是深度学习?

深度学习是一种机器学习的具体方法,与以前的方法相比,它更加强大和灵活。在大多数应用程序中,我们所说的“深度学习”可以被认为是将大量人类注释的数据转换成一种能够以与人类相似的方式自动注释新数据的软件。你可以通过这种方式自动完成很多不同的任务。深度学习尤其擅长理解“感知”数据,如图像,视频或声音。

比如:识别分类一大堆图片,一些标签与每张图片相关联(“狗”,“猫”等)。深度学习可以帮你自动将数据映射到标签的系统,只需从示例中学习,而无需任何手动调整或自定义工程。这样的系统可以被应用到新的数据,有效地自动化标记图片的任务。同样,你可以将深度学习应用于机器翻译,语音识别,文本到语音,光学字符识别等问题。

3.首先要祝贺你的新书“使用Python进行深度学习”出版,那你为什么写这本书?

这本书是我想拿出一个课程——去教那些没有机器学习背景的人,教他们深度学习与Python的编程能力。在我看来,深度学习应该是一个每个程序员的技术,不应该将其束之高阁,成为一些牛人的专属。

4.Python可以说是增长最快的编程语言,为什么你会选择Python?

我爱Python。无论你学习其他语言多长时间,学习使用它都很容易。与我之前使用的其他语言相比,它给我的感觉更直观和优雅。但是Python真正的杀手锏并不在于语言本身,而是周围的生态系统和社区。无论你需要做什么:解析特定的文件格式,与特定系统的接口,它的背后几乎肯定是一个Python库,所以你不必花时间去写大量代码。在数据科学和机器学习方面尤其如此,其中有许多很棒的工具:numpy,pandas,scikit-learn,plotting libraries等等,这使得Python成为一种非常高效的语言。

另外,我喜欢Python的另一个原因是:它不是一个领域特定的语言,而是位于从Web开发到数据科学到系统管理的多个领域的交叉点。这意味着你不必切换到新的语言来将Keras模型部署为Web API。无论你需要做什么,哪怕是启动一个web应用程序,查询一个REST API,解析一些文件,训练最先进的深度学习模型,Python通常都可以帮你完成。

5.对于那些想进入机器学习和人工智能领域的人来说,恐惧心理一直存在,你能提供一些入门的建议吗?

我个人认为,在过去的5年中,进入机器学习正在变得非常容易。当然,5年前这是非常艰难的,甚至最起码的要求是研究生。因为你需要自己编写大量的底层算法,通常使用C ++或Matlab。但是,现在不一样了。你只需要Python,你就有权访问高级API和易于使用的工具,如Keras。另外,你可以在网上找到很多非常高质量的学习资源,你可以在Kaggle上练习现实世界的问题。学习从未如此简单。

另外,你可以拿起我的书,安装Keras,挑战一些Kaggle的项目,几个月后,你将会发现深度学习一点都不难,一定要大胆的迈出第一步。

6.Keras和你的新书是基于什么样的目标诞生的?

当我最初开源Keras时,我并不是特别想让深度学习平民化。但是随着时间的流逝,我看到无数人通过keras掌握了深度学习,并以我没有想到的方式来解决各种各样的问题,这确实让人兴奋。我意识到,深度学习可以通过变革性的方式部署到更多的领域。那里有很多人,他们可以从使用深度学习中受益。因此,我越来越关心的是如何让尽可能多的人使用这些技术。

我的这本书目标是为了让尽可能多的人进入深度学习,所以他们可以开始使用它来解决他们所碰到的问题。仅仅提供简单易用的工具是不够的,我还应该提供学习材料,教会人们如何使用这些工具。

7.对于初学者入门最重要的事情是什么?他们怎么才能做到这一点?

我个人觉得最重要的是要深刻了解深度学习能做什么,不能做什么。这需要感受一下关键的实践过程,比如如何正确评估模型,以及如何战胜过拟合。这需要结合扎实的理论基础和对现实世界问题的广泛的实践。

8.人工智能是一个术语,对很多人来说,让人想起有感知力的机器人。不知道你能否为我们揭开AI的神秘面纱?

当然,这个领域有很多炒作,大多数媒体关于人工智能和深度学习的报道都与现实脱节。至于AI今天能做什么,这是一个难题。我个人认为有三类可以做的事情:

1.在我们执行的任务中,明确指定AI需要遵循的规则。这实质上就是所谓的“符号型AI”或者更实用的“软件开发”。任何编程人员都知道,这种方法很脆弱,只能在每个人都受控制的设置中工作,这在现实世界中很少出现。

2.在我们不能明确指定规则的地方进行简单的感知任务,但是我们能够提供许多任务的例子,例如分类图片,转录语音等。我们在这方面的能力的一个重要限制是我们的模型只能处理非常接近他们以前看到的输入,不能得到离你的训练数据很远的结果,我们这里所做的基本上是高维曲线拟合。

3.上述两种类型的组合。例如,你可以想象一个具有深度学习模块的机器人,它可以提取周围许多对象的类型和位置,训练它们,加上一个硬编码高级规则来处理这些对象的模块。另一个例子是AlphaGo/AlphaZero,它基本上是蛮力搜索(显式编程)和深度学习模块的组合,可以“直观地”评估每个选择的价值。

如果能够很好的组合现有的技术,你可以在许多任务上获得超人的表现,但只有在特定的领域内才有可能。但,对于大多数行业来说,擅长特定任务也是有巨大潜力的。所以你可以看到AI在未来的20年里带来很多经济上的冲击,你可以把AI看作是我们这个时代的蒸汽机,它将成为一个非常强大的人类手中的工具,它将在几十年内重塑经济格局。

9.你能解释一下,什么是非人工智能能力?

在所有我们想要自动化的东西中,AI今天只能处理一个非常小的子集。除了我们能做的事,还有更多的事情是我们做不到的。一般来说,我们在下列方面尤其糟糕:

1.任何需要“深度理解”的东西。例如,AI不能理解自然语言的含义,而是用统计依赖关系或硬编码处理规则来对待语言。“含义”,就像人类思维中存在的那样,来源于我们人工智能模型无法获得的具体的人类经验。所以今天没有人工智能系统能以一种对人类有意义的方式“理解”自己的任务,模型只是绘制出他们训练数据的统计图。

2.任何处理与AI之前没有见过的数据。人工智能只能应用你明确编码的规则,或者识别非常非常接近它所训练的东西。你在任务中引入的不确定性或变异越多,AI的能力就会越来越弱。

3.任何涉及推理和抽象的事情。我们可以将明显的推理规则硬编码到机器中,目前人工智能无法根据自己的情况抽象模型。可以说这是今天AI发展的主要瓶颈。如果你解决了这个问题,你很快就能解决前两个。

10.你觉得目前深度学习社区面临的主要挑战是什么?

炒作,发展道德意识,保持科学严谨。

1.炒作:这是困扰我们的领域最大的问题。有些人正在以荒谬的方式夸大最近的进展,大大超过了我们目前的能力,但事实并非如此。如果我们设定了天高的期望,然后又不能实现,这将会给科学带来很大的负面影响。

2.道德规范:现在开发人工智能系统的人员并不是具备非常多样性的背景,他们往往没有意识到他们构建的系统中有违反道德规范的地方。我们需要更多地讨论这个问题,并提高人们对AI可能存在的不道德应用的认识。

3.科学严谨性:每天都有大量的深度学习文件被发布,其中大多数并没有真正产生任何有意义的新知识,因为它们不遵循科学的方法。他们以模糊的方式“评估”模型,或者在他们的训练数据上测试过度训练模型(尤其是生成模型和强化学习,这是深度学习研究中增长最快的两个主题),人为地使用弱基线调整超参数,导致过度适应特定任务。深度学习是一个科学的灾难地带,同行评审通常不会以任何有意义的方式解决这些问题,部分原因可能是因为大多数同行评议者最多在这个领域工作了一两年。如果我们想要取得更快的进展,那么当涉及研究的可重复性,基线,模型评估和统计显着性时,我们需要在这个领域注入更严格的期望。

11.你能说一下深度学习的未来是怎样的?

其实我写了一篇关于这个问题的博客文章。总之,我期望AI越来越多地将“直观的”模式识别模块与正式的推理模块相结合。我也希望AI能够演变成更像自动化软件开发的形式,借用了当今软件工程中的很多模式和实践。

12.你不仅是一个开发人员,在keras博客,你的书和twitter上,你总是深思熟虑并且发表关于深度学习,人工智能技术的道德问题。你认为开发者有义务围绕他们所做的工作进行道德考虑吗?

当然。我认为近年来一般科技领域一直欠缺这一点,例如,大多数智能手机游戏,它到底是丰富了我们的生活,还是迫害了我们的生活。技术从来都不是中立的,因为它是强大的,它可以影响我们的生活。所以你不妨仔细考虑一下,如果你建立一个社交媒体平台,尽量使“参与”最大化,那么这是一个有道德的决定,具有重要的意义。要么我们关心,要把道德建设成为我们建立的技术和权力结构的明确设计目标,或者放弃我们的价值观。如果你在科技领域,你不能选择“在场边”,这是一个错觉。

本文由北邮@爱可可-爱生活老师推荐,阿里云云栖社区组织翻译。

文章原标题《An Interview with François Cholle

作者 :Hugo Bowne-Anderson

译者:虎说八道,审校:

文章为简译,更为详细的内容,请查看原文

相关文章
|
12月前
|
机器学习/深度学习 算法 TensorFlow
【数据科学】Keras
【数据科学】Keras
|
机器学习/深度学习 人工智能 PyTorch
OpenAI高调站队Pytorch,怎样学Pyorch?
OpenAI高调站队Pytorch,怎样学Pyorch?
OpenAI高调站队Pytorch,怎样学Pyorch?
|
机器学习/深度学习 人工智能 自然语言处理
AI开发者大会:2020年7月3日10:30--10:50李双峰《TensorFlow的最新进展》
AI开发者大会:2020年7月3日10:30--10:50李双峰《TensorFlow的最新进展》
AI开发者大会:2020年7月3日10:30--10:50李双峰《TensorFlow的最新进展》
|
机器学习/深度学习 人工智能 PyTorch
Reddit引爆框架决战!TensorFlow遭疯狂吐槽,PyTorch被捧上神坛
PyTorch还是tensorflow更好?这个没有答案的问题最近登上了Reddit的热榜第一,「甜咸之争」你更中意哪个?
145 0
Reddit引爆框架决战!TensorFlow遭疯狂吐槽,PyTorch被捧上神坛
|
机器学习/深度学习 算法 TensorFlow
|
机器学习/深度学习 算法框架/工具
DeepMind重磅:神经算术逻辑单元,Keras实现
DeepMind最新提出“神经算术逻辑单元”,旨在解决神经网络数值模拟能力不足的问题。与传统架构相比,NALU在训练期间的数值范围内和范围外都得到了更好的泛化。论文引起大量关注,本文附上大神的Keras实现。
1575 0
|
机器学习/深度学习 人工智能 算法
|
机器学习/深度学习 TensorFlow 算法框架/工具
用PyTorch还是TensorFlow?斯坦福大学CS博士生带来全面解答
关于深度学习的框架之争一直没有停止过。PyTorch,TensorFlow,Caffe还是Keras ?近日, 斯坦福大学计算机科学博士生Awni Hannun就发表了一篇文章,对比当前两个主流框架PyTorch和TensorFlow。
3667 0