• 为了保证你在浏览本网站时有着更好的体验,建议使用类似Chrome、Firefox之类的浏览器~~
    • 如果你喜欢本站的内容何不Ctrl+D收藏一下呢,与大家一起分享各种编程知识~
    • 本网站研究机器学习、计算机视觉、模式识别~当然不局限于此,生命在于折腾,何不年轻时多折腾一下

标签:深度学习

深度学习为什么需要大数据?

深度学习为什么需要大数据?

这个是一个朋友面试时遇到的问题,这个问题个人觉得算是一个开放性的问题,同时需要你对深度学习有着宏观的认识,并且有相关的实践经验。深度学习给人直观的感觉就是模型复杂,超多的参数需要去学习,如果训练的样本比较少,那么很容易过拟合。附带可以联系到 bias 和 variance 的讨论,也是可以从 VC 维去理解。模型论证角度知乎上有一个回答,这里引用一下……

关于keras多输入的一些问题

tf2.0 是要力推 keras,最近将之前的代码改造成 keras(挤时间自己改的,还在测试),这中间看着 keras 官方文档加上搜索,有些点其实还是存在一定的疑问。其实主要的问题就是在这模型输入输出这块,keras 在构造网络这块还是比较简单的,看着官网的例子关于函数式 api 提供的例子都是非常的简单。基本上套路就是一个 Input 然后 FC ……

word2vec到bert发展史

word2vec到bert发展史

Bert 最近很火,应该是最近最火爆的 AI 进展,网上的评价很高,那么 Bert 值得这么高的评价吗?我个人判断是值得。那为什么会有这么高的评价呢?是因为它有重大的理论或者模型创新吗?其实并没有,从模型创新角度看一般,创新不算大。但是架不住效果太好了,基本刷新了很多 NLP 的任务的最好性能,有些任务还被刷爆了,这个才是关键。另外一点是 Bert 具备广泛……

DCN网络浅析

DCN网络浅析

在 CTR 预估领域出现了很多模型,之前看过一篇微信文章讲述十大经典 CTR 模型,DCN 就是其中一个模型,估计很多公司都已经将其应用到自己的业务场景中了。最早的 wide&deep 网络,对 wide 部分特征的要求是很高的,超高维特征加上线性模型是可以去的不错的效果,主要是模型会简单并且可解释性会很好,对于 wide&deep 其实对……

TensorFlow timeline模块使用

现在 TensorFlow 是机器学习中最常用的库之一。有时,描述张量图可能是非常有用的,并且知道什么操作需要更多的时间和更少的时间。这可以用张量流timeline模块完成。如何执行张量流代码的分析。如何从多次会话运行合并时间轴。分析期间可能会出现什么问题,以及如何解决问题使用Timeline对象来获取图中每个节点的执行时间:你使用一个经典的……

ESMM模型CVR预估

ESMM模型CVR预估

这个文章阿里妈妈最近公开的,但是这个算法在 MTL 领域应该大家都已经使用,只是没人公布出来,如果你多看看 MTL 的文章就会发现这篇文章其实没有什么太大的创新,但是既然论文发表出来了并且在工业实践上取得了很好的成绩,所以还是值得肯定的。核心的要点两个方面:权值共享与完备空间这个网络的有一个很好的地方就是子网络可以自由的去定义,可以根据实际的调参情况确定……

Ring Allreduce并行计算优化

之前使用的 horovod 就是使用 ring allreduce 的方法实现深度学习并行计算优化,这篇文章主要来源于转载,部分加上自己的注释。当将神经网络的训练并行化到许多 GPU 上时,你必须选择如何将不同的操作分配到你可用的不同 GPU 上。在这里,我们关注一种称为数据并行随机梯度下降( SGD )的技术。与标准 SGD 一样,梯度下降是通过数据……

Tensorflow 分布式训练 horovod概念

在写这篇文章之前,压根就没使用过 tensorflow 分布式学习,以前日常工作的数据量也不需要这么大的计算资源,现在需要面临处理数亿级别的数据,所以为了提升模型训练的效率,必须要使用分布式训练,所以还是需要去学习分布式模型训练,并且还要修改源码支持分布式训练。 为什么不选择传统分布式 TensorFlow?The primary motivatio……

TensorFlow SaveModel API 入门

最近换了新坑,组里的 tensorflow 版本基本上都赶到了最新的 1.13 版本了,我最近写的代码都是基于 1.13.1 了,其中有一个就是 tensorflow 保存模型这块,使用了 SavedModel。为什么不使用 checkpoint?Saver.restore()需要提前建立好计算图,这在理论上是可行的,但是对于模型跨平台来说,成本和效率……

Tensorflow中梯度裁剪

Tensorflow中梯度裁剪

本文简单介绍梯度裁剪(gradient clipping)的方法及其作用,不管在 RNN 或者在其他网络都是可以使用的,比如博主最最近训练的 DNN 网络中就在用。梯度裁剪一般用于解决 梯度爆炸(gradient explosion) 问题,而梯度爆炸问题在训练 RNN 过程中出现得尤为频繁,所以训练 RNN 基本都需要带上这个参数。常见的 gradien……

Tensorflow pipline 性能

输入管道性能指南GPU 和 TPU 可以从根本上缩短执行单个训练步骤所需的时间。为了实现最佳性能的目的,我们需要一个高效的输入管道用于在当前步骤完成前为下一步骤提供数据。tf.data API 有利于构建灵活高效的输入管道。本文档介绍了 tf.data 的特性以及在各种模型和加速器中构建高性能 TensorFlow 输入管道的最佳实践。本指南主要有以下内……

tf.GraphKeys简介

GraphKeystf.GraphKeys包含所有graph collection中的标准集合名,有点像 Python 里的 build-in fuction。首先要了解graph collection是什么。graph collection在官方教程——图和会话中,介绍什么是 tf.Graph是这么说的:tf.Graph包含两类相关信息:……

keras任意中间层结果输出

最近使用 keras 写了一点代码,输入是正负样本,loss 使用的是交叉熵,但是最终我只需要网络对给定的样本的预测分数就可以了,也就是输入只有一个样本,不存在正负样本对的情况。如果你的模型就一个输入一个输出,那么通过以下的方式你可以拿到你想要的输出from keras import backend as K# with a Sequenti……

Keras过拟合相关解决办法

这种过拟合的处理称为正则化。 我们来学习一些最常用的正则化技术,并将其应用于实践中。1.缩小神经网络的规模防止过拟合最简单的方法是缩小模型的规模:模型中的可学习的参数数量(由层数和每层节点数决定)。 在深度学习中,模型中参数的数量通常被称为模型的能力。 直观地说,拥有更多参数的模型具有更强的记忆能力,甚至可以可以轻松地学习训练样本与其目标之间的类似字典的……

神经网络训练11条新手最容易犯的错误

根据自己工作中失败的教训,整理了一份神经网络出错原因清单,一共 11 条。量子位搬运过来,各位被神经网络虐待的时候,可以按图索骥。当然,也祝你们看了这 11 条之后,功力大进,炼丹顺利。1. 忘了数据规范化What?在使用神经网络的过程中,非常重要的一点是要考虑好怎样规范化(normalize)你的数据。这一步不能马虎,不正确、仔细完成规范化的……

Tensorflow exceeds 10% of system memory解决方法

在训练一个模型的时候遇到这样的问题在 tensorflow 的 github 上面也发现有人遇到类似的问题,贴上链接https://github.com/tensorflow/tensorflow/issues/18736解决方法Try reducing batch_size attribute to a small number减小 ……

tensorflow中指定GPU设置

 最近开始用 pair-wise ranknet 实现排序,开始写一写 tensorflow 代码查看机器上 GPU 情况命令: nvidia-smi功能:显示机器上 gpu 的情况命令: nvidia-smi -l功能:定时更新显示机器上 gpu 的情况 其中左上侧有 0、1、2、3 的编号,表示 GPU 的编号,在……