Skip to main content

标 题: 胡扯几句什么叫Deep Learning入门

发信人: CRH1235 (江左没狼), 信区: Programming
标  题: 胡扯几句什么叫Deep Learning入门
发信站: BBS 未名空间站 (Sat Jul  8 22:23:36 2017, 美东)

今天有空瞎扯几句,版上的大神们不要见笑。其实今天很多人所谓的ML入门,其实是DL
入门,或者叫神经网络入门。我觉得可以分三步。

第一,把Goodfellow等著的deep learning书Part I and Park II都看懂,包括第一章数
学基础都查漏补缺完成,基本的理论基础就具备了。看不懂的youtube,Coursera,
udacity找资源帮助理解。

第二,自己实现几个简单的神经网络,我个人建议是用numpy手撕一个MLP,一个
vanilla的CNN和一个vanilla的RNN,重点是了解matrix(或者叫tensor)在层之间怎么流
动,forward(比如convolution),backward(尤其是RNN的backpropagation
through time)怎么实现。这些都不难,但是需要一些耐心。虽然耗时间,但是对彻底
摸清神经网络的工作细节很有帮助。所有的三个网络都可以用mnist数据集。

第三,学习一两个主流的libraries。个人推荐先学pytorch,后学tensorflow。因为这
两个是DL libraries的两种风格,imperative programming vs symbolic programming
的代表。symbolic programming一开始会不习惯,不如先把pytorch学好再开始
tensorflow。这两个反正都得学会,先学哪个都一样。从pytorch开始learning curve
比较平缓。

学习libraries的顺序是先看tutorial,依葫芦画瓢做几个图像识别(比如 not hotdog
)和简单的语言模型,这就算CNN和RNN都算是“会了”。下一步可以做些复杂的图像应
用比如style transfer,object detection,对RNN有兴趣的可以用pytorch自己
写个LSTM什么的。

能做到以上三点个人觉得可以算DL入门了。再往下的更深入的研究就要看个人的兴趣。

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...