有哪些优秀的深度学习入门书籍?需要先学习机器学习吗

深度学习入门必看的书和论文?有哪些必备的技能需学习?
我的图书馆
深度学习入门必看的书和论文?有哪些必备的技能需学习?
欢迎关注我的专栏「欲穷千里目」…
511&人赞同
一些推荐文献:1. DL非常好的科普文章,可快速浅显了解Deep Learning:2. 深度学习大牛Bengio(下图右2)最近出版的一本书:, 3. DL在视觉中打响的第一枪:NIPS‘12 paper:4. Andrew Ng(右1)的tutorial: 5. 最后是LI Fei-Fei的几个必备的DL库:1. 2. 3. 每种工具的网站都有对应的manual甚至是tutorial,手把手教你搭建深度网络。****************************************************************************************************** 更新:一个按照编程语言整理的深度学习库列表:******************************************************************************************************++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 更新:利用闲暇,收集、总结、整理了一份CNN实现细节——“”++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++最后祭出DL四大“金刚”合照:从左至右依次为Yann Lecun, Geoffrey Hinton, Yoshua Bengio, Andrew Ng.阿门
挖掘机到底哪家强
推荐Stanford Lifeifei的CNN课(cs231n) + Ng的ML(cs229) + Deep Learning for NLP(cs224d)
喜爱玩数据的人
114&人赞同
转自:Free Online Books by Yoshua Bengio, Ian Goodfellow and Aaron Courville by Michael Nielsen by Microsoft Research by LISA lab, University of MontrealCourses by Andrew Ng in Coursera by Geoffrey Hinton in Coursera by Hugo Larochelle from Université de Sherbrooke by CILVR lab @ NYU On-Going Going to startVideo and Lectures By Ray Kurzweil - Is a inspiring talk By Andrew Ng By Geoff Hinton by Yann LeCun by Yoshua bengio by Jeff Hawkins by Adam Coates By Adam Coates By Adam Coates By Yann LeCunPapersTutorialsWebSitesDatasets Handwritten digits from street view 80 Million tiny images 100 Million Yahoo datasetFrameworksMiscellaneous My personal favourite. Also check out
苦逼养汪员还要兼职科研←_←
基础的前面答案都说的挺好了,不再累述。说点儿干货当然,我是做RBM的。。。所以呢。。。关于模型算法的文章,我当然是推荐RBM的了。An Introduction to Restricted Boltzmann Machines这一篇,基础中的基础,搞明白了,RBM算是入门了。A Practical Guide to Training Restricted Boltzmann MachinesHinton老爷子的文章,有很多训练的技巧。当然如果你只需要对RBM有所了解,会用,这两篇差不多了。如果想进一步研究一下。Deep Boltzmann MachinesHow to Pretrain Deep Boltzmann Machines in Two StagesA BetterWay to Pretrain Deep Boltzmann Machines这三篇可以对DBM有个比较初步的了解。再想深入的话,建议把图模型好好搞一下。
【框架】:深度学习十大顶级框架:不同语言的深度学习库:基于spark的异构分布式平台:深度学习框架比较:【算法】:广义递归线性模型:自由编码器和自由能:可微分编程:记忆和核方法CNN反向求导:深度信任网络:【书单】:机器学习+深度学习书单:前沿深度学习论文+书单+著名IT公司资料:【案例】:京东DNN Lab深度学习实验室:多伦多大学用GPU+深度学习识别癌症阿里巴巴深度学习与NLP实例:腾讯深度学习实验室:【硬件】深度学习硬件指南:
知乎用户我强迫自己改掉了强迫症
推荐个中文入门的资料,
Data Mining 弱鸡 / PhD@NTU
这个总结的挺全的,看完足矣。入门的话推荐看Bengio的书,基本知识都涵盖到了:实践的话,跟着tensorflow的tutorials是个很好的选择:
各种喜闻乐见
ufldlAndrew Ng的机器学习视频
知乎用户帝国理工 / 关注人工智能
我觉得要先学会Autoencoder, CNN, LSTM 这3样东西,然后再深入每样东西来探索,比如Autoencoder 有 Denoising Autoencoder, CNN 有 ResNet 等等,LSTM有很多变种如 GRU 等。如果你想直接动手,边编程边学的话,我建议直接看 TensorLayer ,官网有DL 和RL 的教程以及配套的代码。它是基于Google TensorFlow 开发的,是现在工业界和学术界比较火的框架。它的好处是每个教程里除了自己的教程外,还会推荐一些很好的博客、论文、视频,方便读者在不明白的情况下进一步阅读。英文网站首页:此外它也有中文版网站。====================================================================增强学习 Reinforcement Learning:RL 教程:配套代码:抗噪自编码器 Denoising Autoencoder:DAE 教程:配套代码:卷积神经网络 Convolutional Neural Network:CNN 教程:配套代码:递归神经网络 LSTM:LSTM 教程:配套代码:Word Embedding 之 Word2vec:Word2vec 教程:配套代码:Machine Translation - Seq2seq:Seq2seq 教程:配套代码:
卧槽,话题经验是什么鬼,王婆卖瓜么!
现在是资料一大堆,你得选着读。原则是你看哪个顺眼就去看哪个。技能就是调参,你得搞清楚为什么这么调会好而那么调会差,结果不好需要加数据,还是换结构,还是结构还参数,还是试试其他优化方法,怎样去验证你的想法?这些书上都没有,需要你自己去踩坑。
我的建议如下:1、学习一个DL的工具:例如Google开源的Tensorflow2、学习一些基础的算法:例如随机梯度下降SGD,逻辑回归Softmax等3、在Tensorflow里跑一个图像识别的Demo并研究其代码。
深度学习工程师
分享一个51CTO学院上新出的一个不错的深度学习视频课程
吴恩达到神经网络的前几章,然后读ufldl的教程并把例程都跑一遍,并尝试改改参数,自己感受一下各个参数对结果的影响。然后结合自己的研究方向读论文,看看有什么可以做的。专栏有我学习的一些路线和记录,可参考:CSDN
TA的最新馆藏
喜欢该文的人也喜欢您正在使用IE低版浏览器,为了您的雷锋网账号安全和更好的产品体验,强烈建议使用更快更安全的浏览器
发私信给李尊
导语:关于机器学习,你需要知道的十个基础算法。
同步到新浪微博
当月热门文章
为了您的账户安全,请
您的邮箱还未验证,完成可获20积分哟!
您的账号已经绑定,现在您可以以方便用邮箱登录
请填写申请人资料点击阅读原文
深度学习入门实战(一)
4月18日 发布,来源:
最新腾讯云技术公开课直播,提问腾讯W3C代表,如何从小白成为技术专家?。
作者 |董超编辑 | 顾乡
现在人工智能是个大热点,而人工智能离不开机器学习,机器学习中深度学习又是比较热门的方向,本系列文章就从实战出发,介绍下如何使用MXnet进行深度学习~
既然是实战而且本文是入门级别的我们就不讲那么多大家都听不懂的数学公式啦~
0x00 深度学习简介
虽然吧,我们不讲哪些深奥的数学原理,但是基本的原理还是要掌握下的~
在介绍深度学习之前我们要先了解两个概念,和神经网络。
机器学习:
在介绍深度学习之前,我们先简单介绍下机器学习,我们引用下维基百科上机器学习的定义:
机器学习是人工智能的一个分支。人工智能的研究是从以“推理”为重点到以“知识”为重点,再到以“学习”为重点,一条自然、清晰的脉络。显然,机器学习是实现人工智能的一个途径,即以机器学习为手段解决人工智能中的问题。机器学习在近30多年已发展为一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。
机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。很多推论问题属于无程序可循难度,所以部分的机器学习研究是开发容易处理的近似算法。
简单的说机器学习就是让机器去分析数据找规律,并通过找到的规律对新的数据进行处理。
神经网络:
以图像为例子,每个数据或者输入就是一张图片,而里面的每个x可以是图片中的每个像素。对于每个像素我们都赋予一个权重,然后经过转换函数(Transfer Function, 这里是线性叠加)得到一个数值。简单来说,我们对所有像素做个线性加权叠加。得到的数值会经过激活函数得到新的数值。这个激活函数(Activation Function)往往是那几个符合某些特性的非线性函数。为什么需要非线性的转换呢?举个简单的例子,在同一个平面你和你的影子是重叠是分不开的,在立体的空间你们却能分开了。非线性的转换有类似的作用。常用的激活函数有relu, softmax, tanh。
简单的说一个神经元是一个简单的分类器,你输入一个
比如我们有一大堆猫、狗照片,把每一张照片送进一个机器里,机器需要判断这幅照片里的东西是猫还是狗。我们把猫狗图片处理一下,左边是狗的特征向量,右边是猫的
大家想想,最简单地把这两组特征向量分开的方法是啥?当然是在两组数据中间画一条竖直线,直线左边是狗,右边是猫,分类器就完成了。以后来了新的向量,凡是落在直线左边的都是狗,落在右边的都是猫。
一条直线把平面一分为二,一个平面把三维空间一分为二,一个n-1维超平面把n维空间一分为二,两边分属不同的两类,这种分类器就叫做神经元。
当然,上面那幅图我们是开了上帝视角才知道“一条竖直线能分开两类”,在实际训练神经元时,我们并不知道特征是怎么抱团的。神经元模型的一种学习方法称为Hebb算法:
先随机选一条直线/平面/超平面,然后把样本一个个拿过来,如果这条直线分错了,说明这个点分错边了,就稍微把直线移动一点,让它靠近这个样本,争取跨过这个样本,让它跑到直线正确的一侧;如果直线分对了,它就暂时停下不动。因此训练神经元的过程就是这条直线不断在跳舞,最终跳到两个类之间的竖直线位置。
神经网络:
神经网络简单点将就是由好多个神经元组成的系统。
神经元一个缺点是:它只能切一刀!你给我说说一刀怎么能把下面这两类分开吧。
解决办法是多层神经网络,底层神经元的输出是高层神经元的输入。我们可以在中间横着砍一刀,竖着砍一刀,然后把左上和右下的部分合在一起,与右上的左下部分分开;也可以围着左上角的边沿砍10刀把这一部分先挖出来,然后和右下角合并。
每砍一刀,其实就是使用了一个神经元,把不同砍下的半平面做交、并等运算,就是把这些神经元的输出当作输入,后面再连接一个神经元。这个例子中特征的形状称为异或,这种情况一个神经元搞不定,但是两层神经元就能正确对其进行分类。
只要你能砍足够多刀,把结果拼在一起,什么奇怪形状的边界神经网络都能够表示,所以说神经网络在理论上可以表示很复杂的函数/空间分布。但是真实的神经网络是否能摆动到正确的位置还要看网络初始值设置、样本容量和分布。
深度学习:
那什么是深度学习呢?深度学习简单点说就是一种为了让层数较多的多层神经网络可以训练,能够运行起来而演化出来的一系列的新的结构和新的方法。
普通的神经网络可能只有几层,深度学习可以达到十几层。深度学习中的深度二字也代表了神经网络的层数。现在流行的深度学习网络结构有"CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的等。
当然我们是以实战为主,可以直接使用现在市面上的一些现有深度学习框架,现在流行的深度学习框架有MXnet,tensorflow,caffe等,本文主要介绍MXnet这个开源的优秀深度学习框架。
0x01 安装MXnet
这里我们安装的是CPU版的MXnet,为什么不安装GPU版?因为偶的Macbook是AMD的卡啊,MXnet只支持CUDA
1.下载源码
新建一个目录,到那个目录下执行
git clone --recursive https:///dmlc/mxnet
2.编译安装
运行setup-utils目录下的install-mxnet-osx.sh脚本,中间要编译些东西,要多等会,再输入个密码,就自动编译安装完成啦。
注意一下:
1.因为要读取make目录下的文件,所以这里要在MXnet源码的根目录执行安装脚本~
比如在mxnet的源码根目录执行
sh ./setup-utils/install-mxnet-osx.sh
2.以后运行脚本可能需要一些python模块,建议安装下pip
mac下安装的方法也很简单: sudo easy_install pip
0x02 样例运行
我们可以试着运行下MXnet自带的一些样例,这里我们试下Neural art这个样例
Neural art是个让机器模仿已有画作的绘画风格来把一张照片重新绘画的算法。
比如我们输入和最终生成
1.首先打开example/neural-style目录,大部分样例都是有README的,大家在运行之前可以先看看
这个样例的README有说
First use download.shto download pre-trained model and sample inputs
Then run python nstyle.py, use-h to see more options
那我们就要运行这个目录下的download.sh
脚本会自动下载训练模型vgg19.params到Model目录,输入的素材到input目录
2.运行Demo
因为我们运行的是CPU版,所以要这么输入
python nstyle.py --gpu -1 --max-num-epochs 150 --output_dir ~/Desktop/
--gpu:使用哪个一个GPU,-1代表使用CPU
--max-num-epochs:最大迭代次数,这里我们迭代150次
--output_dir:结果输出路径
可能大家一次运行不起来,会出现No module named for xxx的提示,一般是相应的python模块没有安装,在google搜下No module named for xxx一般都能找到安装方法,大部分都能通过pip安装~
我们看下不同迭代次数时的结果是什么样的
10次:50次:100次:150次:可以看出迭代次数越多效果越好~当然由于深度学习是有很多层神经网络组成,需要的运算量巨大,使用CPU即使是i7,150次迭代也需要好几十分钟了,有条件的看官可以尝试使用GPU版,可以将时间缩短到几分钟,甚至在云平台上跑。
样例的具体原理可以参考参考附录的第二个链接。
参考附录:
明天提醒我
我要该,理由是:
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)雷锋网按:本文作者为&Jeffries Consulting 创始人&Daniel Jeffries,他以自己的阅读体验,对当前含金量极高的几本深度学习书籍进行点评;对每本书的内容重点、所适合的读者群进行了总结。非常适合学习者在购书前进行参考,以免白费时间。雷锋网编译。Daniel Jeffries:多年来,由于实验室研究和现实应用效果之间的鸿沟,少有人持续研究人工智能,AI在很多领域停滞不前。但近两年,AI 在一些领域陆续有了重大突破,比如:图像识别;自动驾驶;Alpha Go等。许多八九十年代的算法,由于硬件慢和缺乏数据等原因束之高阁。而现在,有众多大数据集和大规模并行芯片的支持,这些算法终于初见成效。在过去的一年多时间里,研究人员奋笔疾书,竞相出版专著,以满足读者对深度学习知识的渴求。第一本关于深度学习的书已经上架,更多的将会在夏天或者明年年初陆续上架。我有幸提前拜读了若干专著的初稿,这些书的最终出版让人期待万分。接下来给大家推荐一些深度学习书籍,这些书可以引导大家如何学习人工智能,对深度学习的快速理解有很大帮助。理论和实践相互兼顾我父亲常说“凡事均衡最好。”对此我深信不疑,且奉为圭臬。当然,我承认在周末或者维加斯的时候,偶尔也会将其抛诸脑后。我赞成理论与实践要相互均衡。比如针对某个问题,给一个明确的背景信息,然后根据实例让我自己动手实践。书本不要过多阐述理论知识,应该让读者边学习边查漏补缺。设想有一本书,非常抽象,或者罗列大量的实例,却不解释问题的来龙去脉,你还能看下去吗?每个人都有自己的学习习惯,应该清楚地知道怎么学,才能卓有成效。我始终认为花时间去买那些与我无用的书,特别容易错过真正适合的。如果你喜欢通篇理论,那就不必继续看我的推荐了。如果你喜欢看那些理论与实践结合相宜得章的书,相信我推荐的书单会让你会喜欢。书单《Deep Learning》第一本书是Ian Goodfellow的《Deep Learning》。作者在Google Brain和OpenAI上做出了突出贡献。不少人认为这本书是深度学习领域的圣经,因为它是迄今为止唯一一本融合了前几十年研究工作的鸿篇巨著。不过,除非你有较好的数学基础,否则不建议你从本书入门,因为读起来挫败感十足。书中不仅有大量的公式,同时写得比较枯燥、干巴。尽管Goodfellow希望能给读者传授更多的知识,但事与愿违,该书读起来不能引人入胜,比较乏味。确实会做和会教是两码事。我估计明年首次参加大学深度学习课程的学生手中会拥有这本书,而其中的许多人会因为这本书难懂而坚持不下去。这本书比较适合那些经过几年相关工作后,仍想进一步掌握深度学习的从业者。对于拥有较多专业领域知识且正准备初次进军AI行业的专业程序员而言,这也是一本比较全面的指南。本书免费中文版请点此。《Hands-On Machine Learning with Scikit-Learn and Tensorflow》第二本是刚出版的《Hands-On Machine Learning with Scikit-Learn and Tensorflow》。虽然这本书也有大量的公式,不过作者Aurélien Géron用简单的方式诠释了复杂的概念。全书写得通俗易懂,可读性很强,不过我也不强烈推荐。《数学不好还学AI》系列文章,是本书很好的补充,尤其是该系列的第五篇《用卷积神经网络进行图像识别》和第七篇《自然语言处理》。在我的印象里,这本书有详尽的实例和相应代码,两者完美结合。在的在线丛书中我读过初稿,当时许多部分没有写完,而且网站将一些公式转换的莫名其妙,这并不影响我对内容的理解。和其他优秀的修改稿一样,最终版本相比初稿有了质的飞跃,完美诠释了作者的观点和采用的实例。本书内容的组织非常自然流畅,各种观点都有清晰的实例证明,雷锋网建议读者看第一遍的时候,不要去管那些公式,以后根据需要再去深入推敲。《Deep Learning with Python》第三本是《Deep Learning with Python》。作者是Keras框架的构建者Francois Chollet。不过这本书还得过段时间才能出版,通过Manning的MEAP系统可以阅读前三章的内容,写得很好,我极力推荐此书。正如Chollet在编写Keras框架时一样,神奇地将复杂概念简单化,文中措词巧妙,可读性强。即使是AI和深度学习中最有挑战性的概念,同样也解释的通俗易懂。读了这本书我才真正理解什么是张量。书中有大量不错的实例,大家可以在他的 Github 上看看代码。随着正式出版的临近,这本书也越来越完整,请关注并支持作者。同时,尽量能先在MEAP上跟进阅读,并通过给作者留言,完善这本书。《Deep Learning: A Practitioner's Approach》第四本是《Deep Learning: A Practitioner's Approach》。该书主要使用Java的深度学习框架DL4J。目前AI领域的研究大多数使用Python语言实现,不过随着越来越多企业涌入机器学习领域,可能Java的使用会逐渐增多。由于Java庞大的生态系统,现在的大公司里,它仍然是主要的开发工具。本书的作者之一Josh Patterson,邀请我出席五月第一周举办的Red Hat Summit(红帽峰会),到时我有机会通读本书的发行版。先说明这本书是面向深度学习初学者的。雷锋网建议,如果你已经有一些深度学习的基本知识并想进一步深入研究如何用Java实现深度学习,请直接跳过前面的例子。但是如果你没什么深度学习经验,Java也没那么熟悉,那么这本书值得你手不释卷,反复研读。尤其是“第 4 章:出色的深度学习架构”,本章提供了一个可以帮你解决现实应用中架构问题的关键方法。虽然我不熟悉Java语言,但我把它分享给我的几个以程序为生的同事后,他们非常喜欢。在介绍深度学习上,书中的实例和书本的总体结构显得非常专业,期待夏天能够出版。《TensorFlow Machine Learning Cookbook》最后推荐的是《TensorFlow Machine Learning Cookbook》。虽然书中的内容和代码有一些错别字,不过像自然语言处理等内容上,还是列举了许多不错的实例。和其他手册书一样,本书也偏重代码,如果你不太了解卷积神经网络的输入输出,你会被许多基本概念搞晕,买书前如果你已经看过其它的书,并且对书中的例子进行了实战,那么这本书可以给你提供更多的练习与实践。雷锋网提醒,请不要以此书入门,也不建议单独购买此书。结语肯定有些书正在编写中,还有些书已经出版,不过我没机会去拜读过,将来有机会读到的话,我会继续推荐的。还等什么呢,抓紧开始吧,深度学习的魔力尽在你的掌握中!via&hackernoon由浅入深,清华大学邓志东教授的神经网络培训!该课程将系统介绍人工智能中的神经网络,特别是深度学习的发展现状、基本原理和主要方法。包括:人工智能综述,生物神经系统,人工神经元模型,BP网络,Hopfield网络,深度卷积神经网络(CNN),长短期记忆网络(LSTM)和深度强化学习等。重点分析若干典型CNN模型,并结合具体应用案例,进行编程实操剖析。课程将补充介绍最新的科研成果与前沿领域(提供50篇以上最原始与最新的人工神经网络代表性英文论文,包括深度学习2016年的最新论文),强调各种理论方法在解决实际问题中的综合应用。雷锋网倾情推荐!视频地址:http://www.mooc.ai/course/65&

我要回帖

 

随机推荐