深度学习
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
和手写识别、战略游戏和机器人运用。
TF能做什么?
目前,有哪些公司用了TF?
TF能做什么?
1. 给黑白图像上色
github:https://github.com/307509256/Pix2Pix-Film An implementation of Pix2Pix in Tensorflow for use with colorizing and increasing the field of view in frames from classic films. For more information, see my Medium Post on the project. Pretrained model available here. It was trained using Alfred Hitchcock films, so it generalizes best to similar movies.
一 ·Tensorflow能做什么?
TF能做什么?
TensorFlow是Google研发的第二代人工智能学习系统,被广泛用于语音 识别或图像识别等多项机器深度学习领域。其命名来源于本身的运行原 理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的 计算。TensorFlow代表着张量从图象的一端流动到另一端计算过程,是将
而关注度机制的引入,使得模型可以在解码的时候动态计算对输入序列关注的位置。举个例子:你使用
RNN 来产生一个图片的描述,可能会选择图片的一个部分(可能是比较关注的那一部分),根据这部分 信息来产生输出的词。 这个框架在机器翻译领域取得了巨大的成功,被称为神经网络机器翻译技术(Neural Machine Translation, 简称 NMT)。
深度学习
业界有几大深度学习框架: 1)Tensorflow(简称TF),谷歌主推,时下最火,小型试验和大型计算都可以,基于python,缺点是上 手相对较难,速度一般; 2)Torch,facebook主推,用于小型试验,开源应用较多,基于lua,上手较快,网上文档较全,缺点 是lua语言相对冷门; 3)Mxnet,大公司主推,主要用于大型计算,基于python和R,缺点是网上开源项目较少; 4)Caffe,大公司主推,用于大型计算,基于c++、python,缺点是开发不是很方便 5)Theano,速度一般,基于python,评价很好
最成功的模型便是LSTM(Long Short-Term Memory,长短时记忆模型)
TF能做什么?
自然语言模型(NLP)
神经网络
基于自然语言理解就是把浅层分析加上句法分析、语义分析都融入进来做的补充和改进。
1. 长对话模型 vs. 短对话模型 短对话(Short Conversation)指的是一问一答式的单轮(single turn)对话。举例来说,当机器收到用户的一个提问时, 会返回一个合适的回答。 对应地,长对话(Long Conversation)指的是你来我往的多轮(multi-turn)对话,例如两个朋友对某个话题交流意见的
使用先前的信息。 2. 我生长在中国,我会讲流利的(中文) 这是相对更加复杂的场景,当前的信息建议下一个词可能是一种语言的名字,但是如果我们需要弄清楚 是什么语言,我们是需要先前提到的离当前位置很远的“中文”的上下文的。这说明相关信息和当前预 测位置之间的间隔就肯定变得相当的大。 不幸的是,在这个间隔不断增大时,RNN 会丧失学习到连接如此远的信息的能力。
二·神经网络
TF能做什么?
神经网络
深度学习
Q/A
Chatbot
语言模型
自然语言 处理
python 基础编程 开发环境 tensorflo w 计算机技 术 机器学习 算法库 scikitlearn caffe mx-net GPU 检索技术 概率论 回归分析 SIMD
机器学习
高性能计 算
概率论与 数理统计 深度学习 数学 线性代数 微积分 卷积神经 网络 图像处理
TF能做什么?
简单神经网络
神经网络
简单神经网络没有卷积功能,只有简单的三层:输入层,隐藏层和输出层。 数据从输入层输入,在隐藏层进行加权变换,最后在输出层进行输出。 输出的时候,我们可以使用softmax回归,输出属于每个类别的概率值。表示如下:
TF能做什么?
监督学习和无监督学习
神经网络
接下来,我们需要关心的是这个模型如何训练,也就是参数取什么值最合适。 深度学习有两类学习方法 1. 监督学习,它是说为了训练一个模型,我们要提供这样一堆训练样本:每个训练样本即包括输入 特征X,也包括对应的输出(也叫做标记,label)。 Eg. 我们要找到很多房子,我们既知道它们的特征(产权,面积,朝向...),也知道它们的价格。我们用 这样的样本去训练模型,让模型既看到我们提出的每个问题(输入特征X),也看到对应问题的答案(标 记Y)。当模型看到足够多的样本之后,它就能总结出其中的一些规律。然后,就可以预测那些它没看 过的输入所对应的答案了。
人工神经 网络
切词 自然语言 处理
ik/jiaba
语义分析
词向量 词表达 word2vec
one-hot
TF能做什么?
一个简单机器学习的算法
1. 模型:从输入特征预测输入的那个函数
神经网络
2. 目标函数:目标函数取最小(最大)值时所对应的参数值,就是模型的参数的最优值。很多时候我们只能获得目标函数的局 部最小(最大)值,因此也只能得到模型参数的局部最优值。 3. 函数y=f(x)
其实聊天机器人,写唐诗等等都是类似seq2seq模式,可以理解成机器翻译的模式。
TF能做什么?
举个例子
1. 我是中国(人)
神经网络
如果我们试着预测 “我是中国(人)” 最后的词,我们并不需要任何其他的上下文 —— 因此下一个词很
显然就应该是人。在这样的场景中,相关的信息和预测的词位置之间的间隔是非常小的,RNN 可以学会
TF能做什么?
TF能做什么?
2. 图象到图象翻译(pix2pix)
TF能做什么?
TF能做什么?
3. 快速生成艺术风格
TF能做什么?
快速生成艺术风格
TFHale Waihona Puke Baidu做什么?
4. 生成唐诗 5. 生成妹子图 6. 创作音乐 7. 图片生成文字,情绪等
8. 聊天机器人
TF能做什么?
9. 预测未来三年全球气候 10. 股票操盘手 11. 华尔街金融大师 12. 国际顶级癌症专家
TF能做什么?
LSTM
神经网络
3. 输出层门: 我们需要确定输出什么值。这个输出将会基于我们的细胞状态,但是也是一个过滤后的版
本。经过一系列计算和变换,最终我们仅仅会输出我们确定输出的那部分。
例如:上面的例子,当处理到“我”这个词的时候,可以预测下一个词,是动词的可能性较大,而且是 第一人称。 Note. 还有一些方法可以增加LSTM准确性,叫关注度(attention)机制的编码器-解码器框架。 基本思想是,把输入序列编码成一种稠密的向量表示形式,然后再通过解码器对向量表示进行解码,最 终得到目标输出序列。
一段聊天。在这个场景中,需要谈话双方(聊天机器人可能是其中一方)记得双方曾经谈论过什么,这是和短对话的场景的
区别之一。现下,机器人客服系统通常是长对话模型 2. 开放话题模型 vs. 封闭话题模型 开放话题(Open Domain)场景下,用户可以说任何内容,不需要是有特定的目的或是意图的询问。人们在Twitter、微信 等社交网络上的对话形式就是典型的开放话题情景。由于该场景下,可谈论的主题的数量不限,而且需要一些常识作为聊天 基础,使得搭建一个这样的聊天机器人变得相对困难。 举个例子: 三人对话,其中的两个人在谈论湖人和马刺的比赛,中间又有一大段话题转移到去哪吃饭,突然插进第三个人 问:太阳呢?这时候机器人就懵逼了,到底是哪个太阳?聊天者知道这是描述太阳队,但是机器人可能不知道。 封闭话题(Closed Domain)场景,简单说就是技术客服系统或是购物助手。
3. 如果问答模式(Q/A), 我喂给的是:男人:女人; 训练完,当你输入国王的时候,会给到王后的答案
这个就是自然语言中,匹配最短距离的模型。
TF能做什么?
GRU
神经网络
Gated Recurrent Unit (GRU)就是LSTM的一个变体,这是由 Cho, et al. (2014) 提出。
TF能做什么?
LSTM
神经网络
LSTM(Long Short Tem Memory)是一种特殊递归神经网络,
它的特殊性在于它的神经元的设计能够保存历史记忆, 这样可以解决自然语言处理的统计方法中只能考虑最近n个词语而忽略了更久之前的词语的问题。
TF能做什么?
LSTM
神经网络
LSTM 有通过精心设计的称作为“门”的结构来去除或者增加信息到细胞状态的能力。
TF能做什么?
CNN
卷积神经网络,Convolutional Neural Network。
主要用于图像识别领域 卷积简单来说,就是先打乱,再叠加。
神经网络
TF能做什么?
RNN
神经网络
循环神经网络(Recurrent Neural Networks),主要用于处理序列数据
在众多自然语言处理(Natural Language Processing, NLP)中取得了巨大成功以及广泛应用。
门是一种让信息选择式通过的方法。 LSTM 拥有三个门,来保护和控制细胞状态。
TF能做什么?
LSTM
1. 忘记门 作用是决定我们会从细胞状态中丢弃什么信息。
神经网络
例如,他今天有事,所以我。。。当处理到“我”的时候选择性的忘记前面的’他’,或者说减小这个
词对后面词的作用。 2. 输入层门: 确定什么样的新信息被存放在细胞状态中—(更新)。 例如:他今天有事,所以我。。。。当处理到“我”这个词的时候,就会把主语我更新到细胞中去。
复杂的数据结构传输至人工智能神经网中进行分析和处理的过程。
TF能做什么?
深度学习的几个重要的应用领域
1. 计算机视觉(Computer Vision) --图像识别 2. 语音识别(Speech Recognition) 3. 自然语言处理(NLP)
其它: 数据挖掘、生物特征识别、搜索引擎、医学诊断、检测信用卡欺诈、证券市场分析、DNA序列测序、语音
TF能做什么?
神经网络是啥
神经网络
神经元按照层来布局。『层』(Layer)成为了我们最核心的组件。 最左边的层叫做输入层,负责接收输入数据; 最右边的层叫输出层,我们可以从这层获取神经网络输出数据。 输入层和输出层之间的层叫做隐藏层,因为它们对于外部来说是不可见的。 同一层的神经元之间没有连接。 第N层的每个神经元和第N-1层的所有神经元相连(这就是full connected的含义), 第N-1层神经元的输出就是第N层神经元的输入。
每个连接都有一个权值。
TF能做什么?
反向神经算法(BP)
神经网络
在神经网络里,当输入信息由多层网络向前传播之后,将网络的输出结果与实际结果的误差,从输出层向 输入层反向传播。在整个 BP 过程,都是需要通过随机梯度下降的方式进行求解,以逐渐逼近最优值。
1. 将误差项传递到上一层。 2. 计算每个参数的梯度。 3. 更新所有的权重参数。
2. 无监督学习,这种方法的训练样本中只有输入而没有结果。 模型可以总结出特征的一些规律,但是无法知道其对应的答案。
TF能做什么?
深度学习和传统机器学习的区别
神经网络
深度学习同原来的机器学习相比,在模型能力上有非常大的提升。 从 A 到 B 去寻找一个拟合函数,实现一个最佳的拟合过程。在这个过程中如果选取的特征越多,拟 合的效果就会越好。但同时有一个问题,当特征太多的时候,计算能力就会出现问题。 在浅层模型中,如果要模拟出一个从 A 到 B 的完美拟合过程,它的数据能达到几亿甚至几十亿的规 模,当他达到这种规模的时候它的计算能力就会急剧下降,会通过一个非常复杂的复合函数去描述 数据。 但是深度学习的方式能够很好的解决这个问题,它通过深度学习神经网络的多层连接,其特征表达 是一个指数层倍的关系,如果说用一个全连接(fully connected)描述十亿的特征,可能我们只需要三层 一千个节点的连接,就能构建十亿个特征的权重出来。所以从本质来讲,模型上的提升也是深度学 习的一个突破。