Deep Learning是机器学习中一个非常接近AI的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,最近研究了机器学习中一些深度学习的相关知识,本文给出一些很有用的资料和心得。

Key Words:有监督学习与无监督学习,分类、回归,密度估计、聚类,深度学习,Sparse DBN,

1. 有监督学习和无监督学习

给定一组数据(input,target)为Z=(X,Y)。

有监督学习:最常见的是regression & classification。

regression:Y是实数vector。回归问题,就是拟合(X,Y)的一条曲线,使得下式cost function L最小。

classification:Y是一个finite number,可以看做类标号。分类问题需要首先给定有label的数据训练分类器,故属于有监督学习过程。分类问题中,cost function L(X,Y)是X属于类Y的概率的负对数。

,其中fi(X)=P(Y=i | X);

无监督学习:无监督学习的目的是学习一个function f,使它可以描述给定数据的位置分布P(Z)。 包括两种:density estimation & clustering.

density estimation就是密度估计,估计该数据在任意位置的分布密度

clustering就是聚类,将Z聚集几类(如K-Means),或者给出一个样本属于每一类的概率。由于不需要事先根据训练数据去train聚类器,故属于无监督学习。

PCA和很多deep learning算法都属于无监督学习。

2. 深度学习Deep Learning介绍

Depth 概念:depth: the length of the longest path from an input to an output.

Deep Architecture 的三个特点:深度不足会出现问题;人脑具有一个深度结构(每深入一层进行一次abstraction,由lower-layer的features描述而成的feature构成,就是上篇中提到的feature hierarchy问题,而且该hierarchy是一个稀疏矩阵);认知过程逐层进行,逐步抽象

3篇文章介绍Deep Belief Networks,作为DBN的breakthrough

3.Deep Learning Algorithm 的核心思想:

把learning hierarchy 看做一个network,则

①无监督学习用于每一层网络的pre-train;

②每次用无监督学习只训练一层,将其训练结果作为其higher一层的输入;

③用监督学习去调整所有层

这里不负责任地理解下,举个例子在Autoencoder中,无监督学习学的是feature,有监督学习用在fine-tuning. 比如每一个neural network 学出的hidden layer就是feature,作为下一次神经网络无监督学习的input……这样一次次就学出了一个deep的网络,每一层都是上一次学习的hidden layer。再用softmax classifier去fine-tuning这个deep network的系数。

这三个点是Deep Learning Algorithm的精髓,我在上一篇文章中也有讲到,其中第三部分:Learning Features Hierachy & Sparse DBN就讲了如何运用Sparse DBN进行feature学习。

4. Deep Learning 经典阅读材料:

  • The monograph or review paper Learning Deep Architectures for AI (Foundations & Trends in Machine Learning, 2009).
  • The ICML 2009 Workshop on Learning Feature Hierarchies webpage has a list of references.
  • The LISA public wiki has a reading list and a bibliography.
  • Geoff Hinton has readings from last year’s NIPS tutorial.
阐述Deep learning主要思想的三篇文章:
  • Hinton, G. E., Osindero, S. and Teh, Y., A fast learning algorithm for deep belief netsNeural Computation 18:1527-1554, 2006
  • Yoshua Bengio, Pascal Lamblin, Dan Popovici and Hugo Larochelle, Greedy Layer-Wise Training of Deep Networks, in J. Platt et al. (Eds), Advances in Neural Information Processing Systems 19 (NIPS 2006), pp. 153-160, MIT Press, 2007<比较了RBM和Auto-encoder>
  • Marc’Aurelio Ranzato, Christopher Poultney, Sumit Chopra and Yann LeCun Efficient Learning of Sparse Representations with an Energy-Based Model, in J. Platt et al. (Eds), Advances in Neural Information Processing Systems (NIPS 2006), MIT Press, 2007<将稀疏自编码用于回旋结构(convolutional architecture)>
06年后,大批deep learning文章涌现,感兴趣的可以看下大牛Yoshua Bengio的综述Learning deep architectures for {AI},不过本文很长,很长……

5. Deep Learning工具—— Theano

Theano是deep learning的Python库,要求首先熟悉Python语言和numpy,建议读者先看Theano basic tutorial,然后按照Getting Started 下载相关数据并用gradient descent的方法进行学习。

学习了Theano的基本方法后,可以练习写以下几个算法:

有监督学习:

  1. Logistic Regression - using Theano for something simple
  2. Multilayer perceptron - introduction to layers
  3. Deep Convolutional Network - a simplified version of LeNet5

无监督学习:

  • Auto Encoders, Denoising Autoencoders - description of autoencoders
  • Stacked Denoising Auto-Encoders - easy steps into unsupervised pre-training for deep nets
  • Restricted Boltzmann Machines - single layer generative RBM model
  • Deep Belief Networks - unsupervised generative pre-training of stacked RBMs followed by supervised fine-tuning

最后呢,推荐给大家基本ML的书籍:

  • Chris Bishop, “Pattern Recognition and Machine Learning”, 2007
  • Simon Haykin, “Neural Networks: a Comprehensive Foundation”, 2009 (3rd edition)
  • Richard O. Duda, Peter E. Hart and David G. Stork, “Pattern Classification”, 2001 (2nd edition)

关于Machine Learning更多的学习资料将继续更新,敬请关注本博客和新浪微博Sophia_qing。

References:

1. Brief Introduction to ML for AI

2.Deep Learning Tutorial

3.A tutorial on deep learning - Video

机器学习——深度学习(Deep Learning)经典资料相关推荐

  1. 机器学习——深度学习(Deep Learning)

    Deep Learning是机器学习中一个非常接近AI的领域,其动机在于建立.模拟人脑进行分析学习的神经网络,近期研究了机器学习中一些深度学习的相关知识,本文给出一些非常实用的资料和心得. Key W ...

  2. 【深度学习Deep Learning】资料大全

    感谢关注天善智能,走好数据之路↑↑↑ 欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答.求职一站式搞定! 对商业智能BI.大数据分析挖掘.机器学习, ...

  3. 深度学习Deep Learning 资料大全

    转自:http://www.cnblogs.com/charlotte77/ [深度学习Deep Learning]资料大全 最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: ...

  4. [深度学习]DEEP LEARNING(深度学习)学习笔记整理

    转载于博客http://blog.csdn.net/zouxy09 一.概述 Artificial Intelligence,也就是人工智能,就像长生不老和星际漫游一样,是人类最美好的梦想之中的一个. ...

  5. 机器学习(Machine Learning)深度学习(Deep Learning)资料(Chapter 2)

    机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2) - tony的专栏 - 博客频道 - CSDN.NET 注:机器学习资料篇目一共 ...

  6. 机器学习(Machine Learning)深度学习(Deep Learning)资料汇总

    本文来源:https://github.com/ty4z2008/Qix/blob/master/dl.md 机器学习(Machine Learning)&深度学习(Deep Learning ...

  7. 机器学习(Machine Learning)深度学习(Deep Learning)资料【转】

    转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...

  8. 机器学习(Machine Learning)深度学习(Deep Learning)资料集合

    机器学习(Machine Learning)&深度学习(Deep Learning)资料 原文链接:https://github.com/ty4z2008/Qix/blob/master/dl ...

  9. 机器学习 Machine Learning 深度学习 Deep Learning 资料

    机器学习(Machine Learning)&深度学习(Deep Learning)资料 機器學習.深度學習方面不錯的資料,轉載. 原作:https://github.com/ty4z2008 ...

最新文章

  1. BeanShell变量的基本范围
  2. OpenCV实现幻灯片模糊slides blur的实例(附完整代码)
  3. QML模拟示波器界面。
  4. python数据科学-多变量数据分析
  5. Max retries exceeded with url 解决方案
  6. 有了这份程序员面试指南,你离大厂Offer还远吗?| 附推荐书籍
  7. 理解之软件需求说明书
  8. 【python】小游戏程序——弹跳小球
  9. 融云集成一个聊天室页面(vue版本)
  10. 溯源供应链引擎APS的历史(蔡颖)
  11. sFlow的安装和使用
  12. 关于怎么解决java.lang.NoClassDefFoundError错误
  13. 已解决TypeError: Descriptors cannot not be created directly.
  14. 华擎主板bios设置图解_华擎主板bios设置_华擎主板bios设置图解_asrock主板bios设置...
  15. 关于链表的逆序排列!
  16. 服务器显示器如何更换,笔记本怎么换显示器_笔记本换显示器教程-win7之家
  17. miniui页面移动的时候透明_PPT中「透明度」功能,根本想不到还能这样用
  18. ABC161 E - Yutori
  19. Photon——Introduction 介绍
  20. 爱数oracle备份软件,爱数备份软件相比于数据库自带备份功能的优势

热门文章

  1. 体系化认识RPC--转
  2. rsync+inotify实现实时同步案例--转
  3. Linux中常用头文件的作用--转
  4. 年终盘点:2015年人工智能的五大关键词
  5. Cluster 注册表操作方法
  6. jvm性能调优 - 16案例实战_每日上亿请求量的电商系统 年轻代垃圾回收参数如何优化
  7. html仿命令行界面,实战:vue仿dos命令界面
  8. java进入编程界面_java – 编程到界面是什么意思?
  9. 学习笔记Spark(六)—— Spark SQL应用(1)—— Spark SQL简介、环境配置
  10. vs调试c语言检查内存泄露,VisualStudio中检查内存泄露方法