Code Monkey home page Code Monkey logo

deeplearning's Introduction

Deep Learning

深度学习》是深度学习领域唯一的综合性图书,全称也叫做深度学习 AI圣经(Deep Learning),由三位全球知名专家IanGoodfellow、YoshuaBengio、AaronCourville编著,全书囊括了数学及相关概念的背景知识,包括线性代数、概率论、信息论、数值优化以及机器学习中的相关内容。同时,它还介绍了工业界中实践者用到的深度学习技术,包括深度前馈网络、正则化、优化算法、卷积网络、序列建模和实践方法等,并且调研了诸如自然语言处理、语音识别、计算机视觉、在线推荐系统、生物信息学以及视频游戏方面的应用。最后,深度学习全书还提供了一些研究方向,涵盖的理论主题包括线性因子模型、自编码器、表示学习、结构化概率模型、蒙特卡罗方法、配分函数、近似推断以及深度生成模型,适用于相关专业的大学生或研究生使用。

深度学习封面

可以下载《深度学习》的中文版 pdf 和英文版 pdf 直接阅读。

对于本项目的工作,你可以直接下载 深度学习_原理与代码实现.pdf (后面会对该书不断更新)


《深度学习》可以说是深度学习与人工智能的入门宝典,许多算法爱好者、机器学习培训班、互联网企业的面试,很多都参考这本书。但本书晦涩,加上官方没有提供代码实现,因此某些地方较难理解。本项目基于数学推导和产生原理重新描述了书中的概念,并用Python (numpy 库为主) 复现了书本内容 ( 源码级代码实现。推导过程和代码实现均放在了下载区的 pdf 文件中,重要部分的实现代码也放入 code 文件夹中 )。

然而我水平有限,但我真诚地希望这项工作可以帮助到更多人学习深度学习算法。我需要大家的建议和帮助。如果你在阅读中遇到有误或解释不清的地方,希望可以汇总你的建议,在 Issues 提出。如果你也想加入这项工作书写中或有其他问题,可以联系我的邮箱。如果你在你的工作或博客中用到了本书,还请可以注明引用链接。

写的过程中参考了较多网上优秀的工作,所有参考资源保存在了reference.txt文件中。

留言

这份工作就是在写这一本 深度学习_原理与代码实现.pdf。正如你在 pdf 文件中所见到的,《深度学习》涉及到的每一个概念,都会去给它详细的描述、原理层面的推导,以及用代码的实现。代码实现不会调用 Tensorflow、PyTorch、MXNet 等任何深度学习框架,甚至包括 sklearn (pdf 里用到 sklearn 的部分都是用来验证代码无误),一切代码都是从原理层面实现 (Python 的基础库 NumPy),并有详细注释,与代码区上方的原理描述区一致,你可以结合原理和代码一起理解。

这份工作的起因是我自身的热爱,但为完成这份工作我需要投入大量的时间精力,一般会写到凌晨两三点。推导、代码、作图都是慢慢打磨的,我会保证这份工作的质量。这份工作会一直更新完,已经上传的章节也会继续补充内容。如果你在阅读过程中遇到有想要描述的概念点或者错误点,请发邮件告知我。

真的很感谢你的认可与推广。最后,请等待下一次更新。

我是 朱明超,我的邮箱是:[email protected]

更新说明

2020/3/:

1. 修改第五章决策树部分补充 ID3  CART 的原理代码实现以 CART 为主2. 第七章添加 L1  L2 正则化最优解的推导 ( L1稀疏解的原理)。
3. 第七章添加集成学习方法的推导与代码实现包括 Bagging (随机森林)、Boosting (AdaboostGBDTXGBoost)。
4. 第八章添加牛顿法与拟牛顿法 (DFPBFGSL-BFGS) 的推导5. 第十一章节添加贝叶斯线性回归高斯过程回归 (GPR) 与贝叶斯优化的推导与代码实现

后面每次的更新内容会统一放在 update.txt 文件中。

章节目录与文件下载

除了《深度学习》书中的概念点,本项目也在各章节添加一些补充知识,例如第七章集成学习部分的 随机森林、Adaboost、GBDT、XGBoost 的原理剖析和代码实现等,又或者第十二章对当前一些主流方法的描述。大的章节目录和 pdf 文件下载链接可以详见下表,而具体 pdf 文件中的实际目录请参考 contents.txt。你可以在下面的 pdf 链接中下载对应章节,也可以在 releases 界面直接下载所有文件。

中文章节 英文章节 下载
(含推导与代码实现)
第一章 前言 1 Introduction
第二章 线性代数 2 Linear Algebra pdf
第三章 概率与信息论 3 Probability and Information Theory pdf
第四章 数值计算 4 Numerical Computation pdf
第五章 机器学习基础 5 Machine Learning Basics pdf
第六章 深度前馈网络 6 Deep Feedforward Networks pdf
第七章 深度学习中的正则化 7 Regularization for Deep Learning pdf
第八章 深度模型中的优化 8 Optimization for Training Deep Models pdf
第九章 卷积网络 9 Convolutional Networks pdf
第十章 序列建模:循环和递归网络 10 Sequence Modeling: Recurrent and Recursive Nets
第十一章 实践方法论 11 Practical Methodology pdf
第十二章 应用 12 Applications
第十三章 线性因子模型 13 Linear Factor Models
第十四章 自编码器 14 Autoencoders
第十五章 表示学习 15 Representation Learning
第十六章 深度学习中的结构化概率模型 16 Structured Probabilistic Models for Deep Learning
第十七章 蒙特卡罗方法 17 Monte Carlo Methods
第十八章 直面配分函数 18 Confronting the Partition Function
第十九章 近似推断 19 Approximate Inference
第二十章 深度生成模型 20 Deep Generative Models

尚未上传的章节会在后续陆续上传。

致谢

感谢对本项目的认可和推广。

赞助

本项目书写耗费时间精力。如果本项目对你有帮助,可以请作者吃份冰淇淋:

支付

deeplearning's People

Contributors

mingchaozhu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deeplearning's Issues

寻求关于xgboost的帮助

您好,我是一名学生。我在github上找到了您的项目,并参考其中的代码实现了xgboost,但是效果很差,模型几乎没有学到任何东西。希望能够得到您的帮助!感谢!

第七章中关于xgboost的实现可能不准确

您好,在/code/chapter7.py中,第695行-699行

def _gain(self, y, y_pred):
# 计算信息
nominator = np.power((y * self.loss.grad(y, y_pred)).sum(), 2)
denominator = self.loss.hess(y, y_pred).sum()
return nominator / (denominator + self.lambd)

其中np.power((y*.......),这个乘以y是否是多余的呢?印象中似乎不需要这么做。

此外,我自己实现的xgboost和另外两个xgboost的开源实现都没有这个乘以y

以下是三个xgboost实现的链接。

https://github.com/bufuchangfeng/DecisionTree/blob/master/XGBoost.ipynb
https://github.com/RRdmlearning/Machine-Learning-From-Scratch/blob/master/xgboost/xgboost_model.py
https://github.com/RudreshVeerkhare/CustomXGBoost/blob/master/CustomXGBoost.py

感谢您提供了如此有帮助的代码。
期待您的回复。

README.md错误

可以下载《深入学习》的中文版pdf和中文版pdf阅读。这一文字后面的中文版应为英文版

第7章式18后结论的严谨性问题

在式18后,原文中有一句话,“从这个式⼦也可以明显看出 w波浪 和 w* 是同号的。”

实际上上面这句话仅在
image
时成立,当小于等于时,需要另外考虑

下面和书中一样只讨论w*>0的情况,负数同理可证
image
当w波浪>0时,导数为正
当w波浪<0时,导数为负
所以当w波浪=0时取到最小值
这样才能解释为什么最后会有一个max

勘误

【2 线性代数.pdf】第2页公式(3)中:
$A_{i,j}^T = A_{i,j}$
应为
$A_{i,j}^T = A_{j,i}$

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.