
深度学习实战演练
深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。
专题主编:https://www.jianshu.com/u/895ee8999eb9
两只橙
全球AI挑战赛百强选手,曾任职于腾讯微信事业部,魅族flyme事业部,中国平安人工智能团队。《深度学习500问》作译者,优快云博客专家及签约讲师,指弹吉他爱好者,简书专栏作家。
展开
-
【自然语言实战】·第二章(1.1)——获取词语首字字母
一、maven依赖 <dependency> <groupId>net.sourceforge.pinyin4j</groupId> <artifactId>pinyin4j</artifactId> <version>2.5.0</...原创 2019-11-17 14:09:56 · 904 阅读 · 0 评论 -
第七章·深度学习实战(1.5)——深度学习几大难点
一、局部最优问题深度学习算法的目标函数,几乎全都是非凸的。而目前寻找最优解的方法,都是基于梯度下降的。稍微有点背景知识的人都知道,梯度下降方法不能解决是解决非凸问题的。因此,如果找到最优解,将是深度学习领域,非常值得研究的课题。andrew在google的工作,也就是那只猫,其实训练过程是让人很费解的。为了缩短训练时间,项目组采用了分布式训练的方式。采用了1000 台计算机,在不同的计算机上存...原创 2019-10-24 23:43:54 · 768 阅读 · 0 评论 -
第六章(1.8)深度学习实战——深度学习模型训练痛点及解决方法
一 模型训练基本步骤进入了AI领域,学习了手写字识别等几个demo后,就会发现深度学习模型训练是十分关键和有挑战性的。选定了网络结构后,深度学习训练过程基本大同小异,一般分为如下几个步骤定义算法公式,也就是神经网络的前向算法。我们一般使用现成的网络,如inceptionV4,mobilenet等。定义loss,选择优化器,来让loss最小对数据进行迭代训练,使loss到达最小在测试集或者...原创 2019-10-20 19:02:39 · 2606 阅读 · 0 评论 -
第一章(1.1)人工智能简介
一、人工智能——历史二、人工智能——内涵和外延三、人工智能——应用领域原创 2017-10-18 10:03:26 · 2730 阅读 · 0 评论 -
第一章(1.2) 机器学习算法工程师技能树
一、机器学习算法工程师需要掌握的技能机器学习算法工程师需要掌握的技能包括(1)基础数据结构与算法树与相关算法图与相关算法哈希表与相关算法矩阵与相关算法(2)概率和统计基础大数定理中心极限定理常用概率分布假设校验理论最大后验理论最大似然理论EM算法贝叶斯理论贝叶斯分类错误率(3)机器学习理论3.1 无监督学习混合高斯模型层次聚类...原创 2018-02-19 23:51:22 · 4235 阅读 · 0 评论 -
第一章(1.3)机器学习概念图谱
一、机器学习概念图谱二、什么是机器学习机器学习(machine learning)是最近非常火的一个领域,关于其一些基本定义百度百科、维基百科或者网上随便都可以找到很多资料,所以这里不做过多解释。我们解决一个问题有两种模式:一种叫做模型驱动(model driven),通过研究对象的物理、化学等机理模型,对对象进行建模,从而解决问题,比如我们熟知的牛顿三定律,对于上面那个公式...原创 2018-02-22 16:22:45 · 932 阅读 · 0 评论 -
第二章(1.2)windows下python安装教程
一、简介Python是是一种面向对象、解释型计算机程序设计语言。它支持多平台,可以在Windows、Mac和各种Linux/Unix系统上运行。Python有2.x版,也有3.x版,这两个版本是不兼容的,因为现在Python正在朝着3.x版本进化,在进化过程中,大量的针对2.x版本的代码要修改后才能运行,所以,为了保证程序能用到大量的第三方库,建议选择2.7版本。如果选择3.x版本也行,毕...原创 2018-02-28 15:10:19 · 1209 阅读 · 0 评论 -
第二章(1.3)Python基础知识(输入输出)
一、 输出用print加上字符串,就可以向屏幕上输出指定的文字print 'hello, world'print也可以打印整数。>>> print 300300二、 输入Python提供了一个raw_inpu,可以让用户输入字符串,并存放到一个变量里。比如输入用户的名字:>>> name = raw_input()test,test三、 数据类型整数:1,2,3...原创 2017-09-06 09:41:31 · 660 阅读 · 0 评论 -
第二章(1.4)Python基础知识(流程控制)
Python流程控制一、条件判断语句基本形式(注意不要少写了冒号:)if <条件判断1>: <执行1>elif <条件判断2>: <执行2>elif <条件判断3>: <执行3>else: <执行4>示例原创 2018-03-01 11:12:52 · 364 阅读 · 0 评论 -
第二章(1.5)Python基础知识(数据类型)
Pyhton 四种常用数据类型一、list(列表)list是一种有序的集合,可以随时添加和删除其中的元素用len()函数可以获得list元素的个数列表操作包含以下函数:cmp(list1, list2):比较两个列表的元素 len(list):列表元素个数 max(list):返回列表元素最大值 min(list):返回列表元素最小值 list(seq):将元组转换为列表 列表操作包含以下方法:l...原创 2017-09-06 09:59:26 · 279 阅读 · 0 评论 -
第二章(1.6)Python基础知识(高阶函数)
Python函数一、定义函数定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。示例:def my_abs(x): if x >= 0: return x else: return -x函数体内部的语句在执行时,一旦执行到return时...原创 2018-03-01 11:42:06 · 388 阅读 · 0 评论 -
第三章(1.2)windows下安装Anaconda+TensorFlow+配置PyCharm
一、下载官网 https://www.continuum.io/downloads Anaconda 安装包也可以到 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 下载打开,找到4.2版本 二、安装Anaconda安装过程中,Anaconda会提示是否添加到环境变量,选择“是”;(其实不用太看,基本...原创 2017-07-12 09:28:59 · 1234 阅读 · 0 评论 -
第三章(1.3)linux下部署tensorflow环境
一、linux下部署anaconda1、下载anaconda下载链接 https://repo.continuum.io/archive/index.htmlwget https://repo.continuum.io/archive/Anaconda3-4.2.0-Linux-x86_64.sh2、安装anacondabash Anaconda3-4.2.0-...原创 2017-12-02 17:40:31 · 954 阅读 · 0 评论 -
第三章(1.4)linux下部署tensorflow环境
一、在安装好 anaconda后,即可通过anaconda安装tensorflowanaconda安装请参考:http://blog.youkuaiyun.com/lzc4869/article/details/78697223为Anaconda创建一个python3.5(或者3.6都行,随便)的环境,环境名称为tensorflow,输入下面命令:conda create -n tensor...原创 2017-12-02 17:53:20 · 2699 阅读 · 0 评论 -
第三章(1.5)关于tensorflow优化器 optimizer 的选择
一、简介在很多机器学习和深度学习的应用中,我们发现用的最多的优化器是Adam,为什么呢?下面是 TensorFlow 中的优化器: 详情参见:https://www.tensorflow.org/api_guides/python/train在keras中也有SGD,RMSprop,Adagrad,Adadelta,Adam等,详情:https://keras.io/optimi...原创 2017-10-26 16:11:01 · 1684 阅读 · 0 评论 -
第三章(1.6)tensorflow cross_entropy 四种交叉熵计算函数
一、Tensorflow交叉熵函数:cross_entropy以下交叉熵计算函数输入中的logits都不是softmax或sigmoid的输出,因为它在函数内部进行了sigmoid或softmax操作1、tf.nn.sigmoid_cross_entropy_with_logits(_sentinel=None, labels=None, logits=None, name=None)...原创 2017-10-10 21:12:22 · 677 阅读 · 0 评论 -
第四章(1.1)机器学习——RF(随机森林)、GBDT、XGBoost算法
一、概念RF、GBDT和XGBoost都属于集成学习(Ensemble Learning),集成学习的目的是通过结合多个基学习器的预测结果来改善单个学习器的泛化能力和鲁棒性。二、关系根据个体学习器的生成方式,目前的集成学习方法大致分为两大类:即个体学习器之间存在强依赖关系、必须串行生成的序列化方法,以及个体学习器间不存在强依赖关系、可同时生成的并行化方法;前者的代表就是Boosting,后者的代表是原创 2018-02-08 09:46:06 · 2422 阅读 · 0 评论 -
第五章(1.1)深度学习——神经网络相关名词解释
一、前言很多人认为深度学习很枯燥,大部分情况是因为对深度学习的学术词语,特别是专有名词很困惑,即便对相关从业者,亦很难深入浅出地解释这些词语的含义。人工智能,深度学习,机器学习—无论你在做什么,如果你对它不是很了解的话—去学习它。否则的话不用三年你就跟不上时代的潮流了。 ...原创 2017-10-24 18:40:37 · 5382 阅读 · 0 评论 -
第五章(1.4)深度学习——神经网络架构和原理
一、为什么需要机器学习有些任务直接编码较为复杂,我们不能处理所有的细微之处和简单编码,因此,机器学习很有必要。相反,我们向机器学习算法提供大量数据,让算法不断探索数据并构建模型来解决问题。比如:在新的杂乱照明场景内,从新的角度识别三维物体;编写一个计算信用卡交易诈骗概率的程序。机器学习方法如下:它没有为每个特定的任务编写相应的程序,而是收集大量事例,为给定输入指定正确输出。算法利用这些事例...原创 2018-01-18 09:47:46 · 822 阅读 · 0 评论 -
第五章(1.5)深度学习——卷积神经网络简介
卷积神经网络(Convolutional Neural Network, CNN)是一种前馈神经网络, 在计算机视觉等领域被广泛应用. 本文将简单介绍其原理并分析Tensorflow官方提供的示例.一、工作原理卷积是图像处理中一种基本方法. 卷积核是一个nxn的矩阵通常n取奇数, 这样矩阵就有了中心点和半径的概念.对图像中每个点取以其为中心的n阶方阵, 将该方阵与卷积核中对应位置的值相...原创 2017-10-19 19:37:47 · 1020 阅读 · 0 评论 -
第五章(1.6)深度学习——循环神经网络简介
循环神经网络的神经网络体系结构,它针对的不是自然语言数据,而是处理连续的时间数据,如股票市场价格。在本文结束之时,你将能够对时间序列数据中的模式进行建模,以对未来的值进行预测。1.上下文信息回到学校,我的一个期中考试仅由真的或假的问题组成时。假设一半的答案是“真的”,而另一半则是“假的”。我想出了大部分问题的答案,剩下的是靠随机猜测。我做了一件聪明的事情,也许你也可以尝试一下这个策略。在计数了我的“原创 2019-05-19 00:19:40 · 1736 阅读 · 0 评论 -
第五章(1.7)深度学习——常用的八种神经网络性能调优方案
一、神经网络性能调优主要方法数据增广图像预处理网络初始化训练过程中的技巧激活函数的选择不同正则化方法来自于数据的洞察集成多个深度网络1. 数据增广在不改变图像类别的情况下,增加数据量,能提高模型的泛化能力。 自然图像的数据增广方式包括很多,如常用的水平翻转(horizontally flipping),一定程度的位移或者裁剪和颜色抖动(color jittering...原创 2018-02-23 10:57:27 · 9259 阅读 · 0 评论 -
第五章(1.8)金典网络解读—LeNet5、AlexNet、VGGNet
1 LeNet5一种典型的用来识别数字的卷积网络是LeNet-5。1.1 模型结构LeNet-5共有7层(不包含输入层),每层都包含可训练参数;每个层有多个Feature Map,每个FeatureMap通过一种卷积滤波器提取输入的一种特征,然后每个FeatureMap有多个神经元。• C1层是一个卷积层 输入图片:32 * 32 卷积核大小:5 * 5 卷积核种类:6 输...原创 2019-07-20 10:47:19 · 778 阅读 · 1 评论 -
第六章(1.1)自然语言处理实战——TF-IDF算法原理
一、什么是TF-IDFTF-IDF(Term Frequency-Inverse Document Frequency, 词频-逆文件频率).是一种用于资讯检索与资讯探勘的常用加权技术。TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。词频 (ter...原创 2018-03-30 15:09:43 · 1092 阅读 · 0 评论 -
第六章(1.2)自然语言处理实战——打造属于自己的中文word2vector工具
一、环境python3.6安装anaconda安装jieba安装gensim安装IDEA 编辑器安装 二、实战演练训练语料source.txt9月12日随着颁奖典礼的结束,我院获得了商委系统运动会系列活动之一——足球比赛的季军,本次比赛立时十天,十二只球队分成两个小组比赛。我院代表队以小组第二名的成绩出现,在和另一小组第二名石油公司争夺三四名的比赛中,教师们超水...原创 2018-03-09 10:37:33 · 3967 阅读 · 6 评论 -
第六章(1.5)深度学习实战——利用RNN和LSTM生成小说题记
一、选取素材本文选取的小说素材来自17k小说网的一篇小说,手工复制小说中的题记。小说网址:http://www.17k.com/list/2793873.html训练语料如下: 语料格式题记:此情可待成追忆,只是当时已惘然。二、开发环境tensorflowancondeidea编辑器三、实战代码#!/bash/bin# -*-coding:utf-8-*...原创 2018-03-16 19:24:28 · 2423 阅读 · 0 评论 -
第六章(1.6)机器学习实战——打造属于自己的贝叶斯分类器
github项目地址:https://github.com/liangzhicheng120/bayes一、简介项目使用SpringBoot做了一层web封装项目使用的分词工具hanlp项目使用JDK8贝叶斯法则 事件A在事件B(发生)的条件下的概率,与事件B在事件A的条件下的概率是不一样的;然而,这两者是有确定的关系,贝叶斯法则就是这种关系的陈述。贝叶斯术语 其中L(A...原创 2018-03-13 17:49:30 · 2013 阅读 · 0 评论 -
第六章(1.7)深度学习实战——用lstm做小说预测
一、简介长短期记忆网络LSTM(Long-Short Term Memory)是递归神经网络(RNN:Recurrent Neutral Network)的一种。 RNNs也叫递归神经网络序列,它是一种根据时间序列或字符序列(具体看应用场景)自我调用的特殊神经网络。将它按序列展开后,就成为常见的三层神经网络。常应用于语音识别。虽然前馈神经网络取得很大成功,但它无法明确模拟时间关系,并且...原创 2018-03-21 16:09:05 · 2752 阅读 · 0 评论 -
第七章(1.2)图像处理——人脸识别技术发展及实用方案设计
人脸识别技术不但吸引了Google、Facebook、阿里、腾讯、百度等国内外互联网巨头的大量研发投入,也催生了Face++、商汤科技、Linkface、中科云从、依图等一大波明星创业公司,在视频监控、刑事侦破、互联网金融身份核验、自助通关系统等方向创造了诸多成功应用案例。本文试图梳理人脸识别技术发展,并根据作者在相关领域的实践给出一些实用方案设计,期待能对感兴趣的读者有所裨益。一、概述通俗地讲,任原创 2018-01-10 22:01:05 · 1397 阅读 · 0 评论 -
第七章(1.3)图像处理—— 深度学习PK传统机器学习
原文:Image Classification in 5 Methods https://medium.com/towards-data-science/image-classification-in-5-methods-83742aeb3645图像分类,顾名思义,是一个输入图像,输出对该图像内容分类的描述的问题。它是计算机视觉的核心,实际应用广泛。图像分类的传统方法是特征描述及检测,这类传统方法翻译 2017-12-29 17:54:49 · 3451 阅读 · 0 评论 -
第八章(1.1)总结与展望——AI 领域最稀缺的人才:人工智能架构师
这里,就不卖关子了。AI领域最最最最最稀缺的人才应该为人工智能架构师。有过4次技术创业经历,如今做AI投资的星瀚资本创始合伙人杨歌如是说。在杨歌的身上,传奇的经历多得是。清华学霸,技术男,四次技术创业经历,创建青年精英商业联合会,投身PE,创办星瀚资本,圈内最懂AI技术的投资人之一……然而,最打动我的,并非这些光鲜的字眼,而是他身上强大的势能,他眼里的平静和坚定,以及他完全不Care年原创 2018-01-08 17:53:26 · 2229 阅读 · 0 评论