深度学习-用PYTHON开发你的智能应用今年最激动人心的事件?2016.1.28“MasteringthegameofGowithdeepneuralnetworksandtreesearch”今年最激动人心的事件?2016年3月Alphago4:1击败李世石九段人工智能VS.机器学习VS.深度学习人工智能发展的历史四大宗师YannLecun,GeoffHinton,YoshuaBengio,AndrewNg机器学习机器学习是一门人工智能的科学。机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法机器学习计算机能够分辨出来他/她是谁吗?机器学习机器学习基于过去的事实和数据,用来发现趋势和模式机器学习模型提供了对于结果的洞察力,机器学习帮助揭示未来的一个结果的概率而不仅仅是过去发生的事情历史的数据和统计建模被用于概率进行预测传统的数据分析旨在回答关于过去的事实,机器学习的目的是回答关于未来事件的可能性的问题!机器学习的应用场景个性化–提供个性化的电子商务体验文档聚类–按照文档上下文自动分类欺诈检测–发现异常的规律行为,识别和标记欺诈交易推荐引擎客户流失预测...机器学习-学习方式监督学习-人工干预和验证的要求,算法:LogisticRegression,BackPropagationNeuralNetwork等。例如:照片分类和标签无监督学习-无人工干预的要求,算法:Apriori算法以及k-Means。例如:对于文档的基于上下文的自动分类半监督学习-介于监督学习和无监督学习之间,算法:GraphInference或者LaplacianSVM强化学习-通过观察来学习做成如何的动作,算法:Q-Learning以及时间差学习机器学习-方法及流程输入特征选择–基于什么进行预测目标–预测什么预测功能–回归、聚类、降维...Xn-F(xn)-T(x)机器学习-举例机器学习-举例如何让机器分辨出来他/她是谁?图像分析–输入特征选择-面部特征、发型、裙子、身高、手势…机器学习-何时使用你不需要机器学习,如果-使用简单的规则和计算,你可以预测答案你能够预先了解到所需要的步骤不需要任何数据驱动的学习你需要机器学习,如果-简单的聚类规则是不充分的面对大量的数据集的可伸缩性的问题机器学习-总结由已知答案的数据开始明确目标–从数据中希望可以预测什么选择可以被用来预测目标的模式所需要的变量/特性使用已知目标答案的数据训练机器学习模型对于未知答案的数据,使用训练过的模型预测目标评估模型的准确性提高模型精度什么是深度学习?深度学习是机器学习的一个分支,是一组在多个层次上学习的算法,分别对应不同级别的抽象深度学习VS.机器学习ML的算法包括监督学习和无监督学习适用非线性处理单元的多层次的特征提取和转换基于对多个层的特征或者表象的学习,形成一个由低级到高级的层次结构特征传统的机器学习关注于特征工程,深度学习关注于端到端的基于原始数据的学习为什么需要深度学习?深度学习-举例深度学习-神经网络是一种模仿生物神经网络(例如大脑)的结构和功能的计算模型是一种非线性统计性数据建模工具,对输入和输出间复杂的关系进行建模一组简单可以训练的数学单元集合,共同学习复杂的功能深度学习-训练深度学习-部署深度学习-数据表现表现层次图片–像素、主题、部分、轮廓、边缘等等视频–图像帧、每帧的像素、每一帧的deltas值等等文本–字符、词、从句、句子等等语音–音频、频段、波长、调制等等...深度学习的优势特性自动推导和预期结果的优化调整可变的自动学习的健壮性重用性-相同的神经网络的方法可用于许多应用和数据类型通过利用GPU的大规模并行计算-可扩展的大容量数据深度学习的开发框架Torch(NYU,2002),FacebookAI,GoogleDeepmindTheano(UniversityofMontreal,~2010),学院派Kersa,“DeepLearninglibraryforTheanoandTensorFlow”Caffe(Berkeley),卷积神经网络,贾扬清TensorFlow(Google)SparkMLLib深度学习中的开发框架框架THEANO学院派血统,MontrealUniversity非常灵活,非常复杂通过底层借口可以做到大量的定制衍生了大量的丰富的项目Keras,PyLearn2,Lasagne...PythonicAPI,非常好的文档THEANO实践THEANO实践THEANO中的卷积极神经网络为什么是PYTHON?最好的胶水代码用于研究、快速开发iPython,数据可视化丰富的框架资源Theano,Kersa,TensorFlow海量的社区、开源的支持为什么需要GPU?为什么需要GPU?CPU-指令并行执行,数据并行运算GPU-矩阵类型的数值计算,尤其浮点运算建立自己的深度学习的应用环境适用于深度学习的AWSG2实例–4个NVIDIAGRIDGPUs,每1个包括了1,536CUDAcores以及4GBofvideo32vCPUs60GB内存240GB(2x120)ofSSD存储深度学习的应用环境深度学习的应用环境-安装和配置sudoyumupdatsudoyuminstallgitpython-nosegccgcc-gfortrangcc-c++blas-devellapack-develatlas-develpython34-develpython3.4lapack64-develpython34-pippython34-virtualenvpip-3.4installTheanonumpyscipynosekeraspycuda深度学习的应用环境-检查GPU深度学习的应用环境-THEANO~/.theanorc深度学习的应用环境-THEANO我的第一个Theano程序深度学习的应用环境-THEANO我的第一个Theano程序深度学习的应用环境-THEANOGPUvs.CPUTENSORFLOW的新进展分布式的深度学习框架TENSORFLOW的新进展分布式的深度学习框架工程化思维VS.科学化思维THINKGREATTHOUGHTSANDYOUWILLBEGREAT.心怀伟大,你将会变得伟大!