龙骑士 的blog

徒手实现CNN:综述论文详解卷积网络的数学本质

近日南洋理工大学研究者发布了一篇描述卷积网络数学原理的论文,该论文从数学的角度阐述整个卷积网络的运算与传播过程。该论文对理解卷积网络的数学本质非常有帮助,有助于读者「徒手」(不使用卷积API)实现卷积网络。

在该论文中,我们将从卷积架构、组成模块和传播过程等方面了解卷积网络的数学本质。读者可能对卷积网络具体的运算过程比较了解,入门读者也可先查看 Capsule 论文解读的第一部分了解详细的卷积过程,但其实我们一般并不会关注于卷积网络到底在数学上是如何实现的。因为各大深度学习框架都提供了简洁的卷积层API,所以我们不需要数学表达式也能构建各种各样的卷积层,我们最多只需要关注卷积运算输入与输出的张量维度是多少就行。这样虽然能完美地实现网络,但我们对卷积网络的数学本质和过程仍然不是太清楚,这也就是本论文的目的。

下面我们将简要介绍该论文的主体内容,并尝试理解卷积网络的数学过程。有基础的读者可以查阅原论文以实现更深的理解,此外我们也许能借助该论文的计算式在不使用层级 API 的情况下实现简单的卷积网络。

机器学习工具:Python 和 Numpy入门

写在前头

我们一般都是从C语言开始学起的,后来发现C语言不能满足我们快速开发的需求,因为它的API使用起来不很方便,还有就是有些功能亟待扩展,这时候我们很多人选择了C++或Java,C#,这些更高级的语言让我们开发软件时,使用起来更方便了。如今,随着人工智能时代的到来,Python迅速成为了机器学习,深度学习的必备语言,流行的机器学习库,sklearn,完全是基于Python开发的API,深度学习库tensorflow也是对Python的支持最好。

由此可见,随着时代的发展,各种语言不断迭代,顺应时代的需求。这样看来,作为开发者的我们除了要学习机器学习,深度学习的一些理论和算法的同时,还得去学各种语言,真的看起来很辛苦,有时候好不容易学会一门语言后,它已经又被新的语言迭代掉了。

实际上,当你深入了掌握一门语言后,再学起其他语言来就会相对更快,与那些从来没接触一门编程语言的来比起来。这是为什么呢?

原来,任何一门语言,本质上都是语言定义的内置类型和相关的API,及我们的扩展自己所需要的类型及定义的方法。

因此,我们只需要把握住两点就能很快入门这门语言:
• 基本数据类型及封装的API
• 库内定义通用API,如文件处理等

如何用70行Java代码实现深度神经网络算法

作者:彭渊

对于现在流行的深度学习,保持学习精神是必要的——程序员尤其是架构师永远都要对核心技术和关键算法保持关注和敏感,必要时要动手写一写掌握下来,先不用关心什么时候用到——用不用是政治问题,会不会写是技术问题,就像军人不关心打不打的问题,而要关心如何打赢的问题。

程序员如何学习机器学习

对程序员来说,机器学习是有一定门槛的(这个门槛也是其核心竞争力),相信很多人在学习机器学习时都会为满是数学公式的英文论文而头疼,甚至可能知难而退。但实际上机器学习算法落地程序并不难写,下面是70行代码实现的反向多层(BP)神经网络算法,也就是深度学习。其实不光是神经网络,逻辑回归、决策树C45/ID3、随机森林、贝叶斯、协同过滤、图计算、Kmeans、PageRank等大部分机器学习算法都能在100行单机程序内实现(以后考虑分享出来)。

一文读懂深度学习与机器学习的差异

如果你经常想让自己弄清楚机器学习和深度学习的区别,阅读该文章,我将用通俗易懂的语言为你介绍他们之间的差别。
机器学习和深度学习变得越来越火。突然之间,不管是了解的还是不了解的,所有人都在谈论机器学习和深度学习。无论你是否主动关注过数据科学,你应该已经听说过这两个名词了。

为了展示他们的火热程度,我在 Google trend 上搜索了这些关键字:

一文读懂深度学习与机器学习的差异

如果你想让自己弄清楚机器学习和深度学习的区别,请阅读本篇文章,我将用通俗易懂的语言为你介绍他们之间的差别。下文详细解释了机器学习和深度学习中的术语。并且,我比较了他们两者的不同,别说明了他们各自的使用场景。

什么是机器学习和深度学习?

让我们从基础知识开始:什么是机器学习?和什么是深度学习?如果你对此已有所了解,随时可以跳过本部分。

什么是机器学习?

语音识别的下一攀登高峰是“人文境界”?

自从深度学习大热,广泛应用于语音识别以来,字幕中的单词错误率急剧下降。尽管如此,语音识别并没有达到人文水平,它仍会出现一些故障。承认这些然后采取措施来解决这些问题对于语音识别的进步至关重要。这是唯一的从可以识别一些人的ASR到识别任何时间任何人的ASR的方式。

语音识别的下一攀登高峰是“人文境界”?

在近期的Switchboard语音识别基准测试中,单词的错误率得到改进。Switchboard集其实是在2000年收集的,它是由两个随机的以英语为母语的人之间的40个电话对话组成。

可以说目前我们已经在会话式语音识别上达到“人类”水平,但仅仅只是在Switchboard方面。这个结果就像是在一个阳光灿烂的日子里的某城市中,只有一个人驾驶着自动驾驶汽车进行测试。最近在这方面取得的进步令人惊讶,但是,关于达到“人类”水平的说法还是太过宽泛,以下是一些仍需要改进的几个方面。

口音和噪音

细看世界各国的人工智能布局

人工智能是引领未来的战略性技术,世界主要发达国家把发展人工智能都作为提升其国家竞争力、维护国家安全的重大战略,加紧出台规划和政策,围绕核心技术、顶尖人才、标准规范等强化部署,力图在新一轮国际科技竞争中掌握主导权,从而引领世界,引领潮流。

美国

美国在人工智能发展方面具有明显的优势,从政府到企业对人工智能带来的变革都极为重视,科研机构对人工智能重视程度也在不断加强,相关创新型产品迭代迅速。

战略层面高度重视,成立国家专家委员会机构

2015年以来,美国白宫科技政策办公室连续发布的《为人工智能的未来做好准备》、《国家人工智能研究和发展战略计划》和《人工智能、自动化与经济报告》3份重量级报告。2016年5月,美国白宫推动成立了机器学习与人工智能分委会(MLAI),专门负责跨部门协调人工智能的研究与发展工作,并就人工智能相关问题提出技术和政策建议,同时监督各行业、研究机构以及政府的人工智能技术研发。

资本与政策共同发力,挖掘最具潜力的创业企业

大话人工智能:机器学习的优与劣

从 20 世纪 60 年代开始,人们就在期待像哈尔(HAL)这样的科幻级别的 AI,然而直到最近,PC 和机器人还是非常愚笨。现在,科技巨头和创业公司宣告了 AI 革命的到来:无人驾驶汽车、机器人医生、机器投资者等等。普华永道认为,到 2030 年,AI 将会向世界经济贡献 15.7 万亿美元。“AI”是 2017 年的热词,就像“.com”是 1999 年的时髦用语那样,每一个人都宣称自己对 AI 感兴趣。不要被有关 AI 的炒作所迷惑,它是泡沫还是真实?和旧有的 AI 潮流相比,它现在有什么新颖之处?

AI 并不会轻易或迅速地被应用。最令人兴奋的 AI 实例往往来自大学或者科技巨头。任何许诺用最新的 AI 技术让公司发生革命性变革的自封的 AI 专家,都只是在传递错误的 AI 信息,其中某些人只是重塑旧有技术的形象,把它们包装成 AI。每个人都已经通过使用 Google、微软、亚马逊的服务,来体验了最新的 AI 技术。但是,“深度学习”不会迅速地被大企业所掌握,用来定制内部项目。大多数人都缺乏足够的相关数字数据,不足以可靠地用来训练 AI。结果就是,AI 并不会杀死所有的工作机会,尤其因为它在训练和测试每个 AI 的时候还是需要人类。

什么比深度学习更好?由此引出深度学习的三大局限性:缺乏解释性、缺乏迁移能力以及巨大的计算资源消耗。什么比深度学习更好?脉冲神经网络和哥德尔机器算吗?

本文选自Quora上的提问,“什么比深度学习更好?”(What is better than deep learning?)

以下是来自用户Sridhar Mahadevan的回答。

(Sridhar Mahadevan 1990年毕业于罗格斯大学,获得计算机科学博士学位;是AAAI Fellow;是SRI International的执行主任)

在回答这个问题之前,必须先搞清楚“更好”是什么意思。有以下几种解读“更好”的方式。

• “更好”=标签数据集的精确度。在这种情况下,目前来看没有优于机器学习的。例如,深度学习在Imagenet或者言语/语言翻译等领域的大型标签数据集上表现最好。但是,根据我在机器学习30多年的研究经验,世事无常。正如一切奥运纪录都将被打破,总会有更新更好的事物出现。但目前为止,深度学习仍然拔得头筹。

每个人都应该知道的3种机器学习算法

译者注:决策树 & 聚类算法 & 线性回归:应该使用哪种机器学习算法?使用它的原因是什么?作者在本文中详细介绍了这些内容。以下为译文。

假设有一些跟数据相关的难题需要你去解决。之前你已经听过机器学习算法的厉害之处了,因此你自己也想借此机会尝试一番——但是你在这个领域并没有经验或知识。于是你开始用谷歌搜索一些术语,比如“机器学习模型”和“机器学习方法”,但一段时间后,你发现自己在不同算法之间已经完全迷失了,所以便开始放弃了。

坚持才能胜利!

幸运的是,我将在本文介绍三个主要的机器学习算法,了解了这些内容后,我相信针对于大多数的数据科学难题,你都可以满怀自信去解决。

在下面的文章中,我们将讨论决策树、聚类算法和回归,指出它们之间的差异,并找出如何根据不同的案例选择最合适的模型。

有监督学习 VS 无监督学习

理解机器学习的基础就是如何对有监督学习和无监督学习这两个大类进行分类的问题,因为机器学习问题中的任何一个问题最终都是这两个大类中的某一个。

在有监督学习的情况下,我们有数据集,某些算法会将这些数据集作为输入。前提是我们已经知道正确的输出格式应该是什么样子(假设输入和输出之间存在某种关系)。

稍后我们看到的回归和分类问题都是属于这一类。

5分钟了解你不知道的人工智能热门词汇

大数据和人工智能的浪潮正在席卷全球,众多热门词汇蜂拥而至:人工智能(Artificial Intelligence)、大数据(Big Data)、云计算(Cloud Computing)、机器学习(Machine Learning)、数据挖掘(Data Mining)、深度学习(Deep Learning)、强化学习(Reinforcement Learning)和数据库(Databases)。不少人对这些高频词汇的含义及其背后的关系总是似懂非懂、一知半解。

为了帮助大家更好地理解人工智能,我们邀请到微软亚洲研究院资深研究员郑宇博士用最简单的语言来解释这些词汇的含义,理清它们之间的关系,希望对刚入门的同学们有所帮助。

人工智能、机器学习、深度学习和强化学习

首先来看一下人工智能、机器学习和深度学习之间的关系。如图一所示,我们可以大致认为深度学习是机器学习中的一种学习方法,而机器学习则可以被认为是人工智能的一个分支。

同步内容
--电子创新网--
粤ICP备12070055号