dnn

Investigating Neural Network based Query-by-Example Keyword Spotting Approach for Personalized Wake-

最后都变了- 提交于 2020-01-30 18:57:39
Investigating Neural Network based Query-by-Example Keyword Spotting Approach for Personalized Wake-up Word Detection in Mandarin Chinese 基于神经网络的示例查询关键词识别方法在普通话个性化唤醒词检测中的研究 Abstract 我们使用示例查询关键字查找(QbyE-KWS)方法来解决针对占地空间小,计算成本低的设备应用的个性化唤醒单词检测问题。 QbyE-KWS将关键字作为模板,并通过DTW在音频流中匹配模板,以查看是否包含关键字。在本文中,我们使用神经网络作为声学模型来提取DNN / LSTM音素的后验特征和LSTM嵌入特征。具体来说,我们研究了LSTM嵌入特征提取器,用于普通话中不同的建模单元,从音素到单词。我们还研究了两种流行的DTW方法的性能:S-DTW和SLN-DTW。 SLN-DTW无需在S-DTW方法中使用分段过程,就可以准确有效地搜索长音频流中的关键字。我们的研究表明,与S-DTW方法相比,DNN音素后验加SLN-DTW方法实现了最高的计算效率和最新性能,相对丢失率降低了78%。字级LSTM嵌入功能显示出比其他嵌入单元更高的性能。 索引词:关键字发现,唤醒词检测,DTW,示例查询,DNN,LSTM 1. Introduction

推荐算法—ctr预估

妖精的绣舞 提交于 2020-01-27 07:54:16
文章目录 总览 传统CTR模型演化的关系图 深度学习CTR模型的演化图谱 算法比对与总结 LR——CTR模型的核心和基础 FM模型——因子分解和特征交叉 LR+GBDT——特征工程模型化的开端 FTRL——在线实时训练模型 LS-PLM(MLR)——阿里曾经的主流CTR模型 Deep Neural Network (DNN) ——多层感知机器模拟特征组合 Deep Crossing(2016年)——DNN中deep加了resnet FNN(2016年)——用FM的隐向量完成Embedding初始化 PNN (2016年)——丰富特征交叉的方式 Google Wide&Deep(2016年)——记忆能力和泛化能力的综合权衡 华为 DeepFM (2017年)——用FM代替Wide部分 Google Deep&Cross(2017年)——使用Cross网络代替Wide部分 NFM(2017年)——对Deep部分的改进 AFM(2017年)——引入Attention机制的FM 阿里DIN(2018年)——阿里加入Attention机制的深度学习网络 阿里DIEN(2018年)——DIN的“进化” 参考 总览 传统CTR模型演化的关系图 向下为了解决特征交叉的问题,演化出PLOY2,FM,FFM等模型; 向右为了使用模型化、自动化的手段解决之前特征工程的难题

什么限制了你的神经网络执行的速度

末鹿安然 提交于 2020-01-17 23:43:44
这周拜读了大神Forrest Iandola的一篇博客,大开眼界,忍不住翻译过来,供大家分享。原文链接如下: https://medium.com/analytics-vidhya/not-all-tops-are-created-equal-e1911ffb4a82 摘要 限制了DNN在计算平台上的执行速度的六个常见原因。 1)内存访问过多 2)没有足够的并行 3)等待输入数据加载 4)糟糕的I/O ,内存和计算机制的重叠机制(overlap) 5)在专用的平台上没有使用专用的操作(不是所有的TOPs都是一样的,不同产品在某些运算上做了特殊优化) 6)未优化代码 深度学习处理器公司经常高调宣称他们的产品有惊人的处理速度。他们通常使用的度量标准有 TOPS(Tera Operations per Second), TMACS(Tera Multiply-Accumulate Instructions per Second)。这些指标的意义在哪,这些指标是否真的有用? 首先,看一下这些指标在深度学习中是怎么用的? 让我们思考一下,一个卷积层有尺寸为3x3x100的过滤器和100个输出通道。 1)假设这个卷基层的input grid 的尺寸是50x50x100. 所以,一次前向操作需要3 3 100 100 50*50 = 225,000,000 MACs, 相当于450,000

【Paper】Deep & Cross Network for Ad Click Predictions

二次信任 提交于 2020-01-14 02:20:56
目录 背景 相关工作 主要贡献 核心思想 Embedding和Stacking层 交叉网络(Cross Network) 深度网络(Deep Network) 组合层(Combination Layer) 理论分析 多项式近似 FM的泛化 高效映射 总结及思考 背景 探索具有预测能力的组合特征对提高CTR模型的性能十分重要,这也是大量人工特征工程存在的原因。但是数据高维稀疏(大量离散特征one-hot之后)的性质,对特征探索带来了巨大挑战,进而限制了许多大型系统只能使用线性模型(比如逻辑回归)。线性模型简单易理解并且容易扩展,但是表达能力有限,对模型表达能力有巨大作用的组合特征通常需要人工不断的探索。深度学习的成功激发了大量针对它的表达能力的理论分析,研究显示给定足够多隐藏层或者隐藏单元,DNN能够在特定平滑假设下以任意的精度逼近任意函数。实践中大多数函数并不是任意的,所以DNN能够利用可行的参数量达到很好的效果。DNN凭借Embedding向量以及非线性激活函数能够学习高阶的特征组合,并且残差网络的成功使得我们能够训练很深的网络。 相关工作 由于数据集规模和维度的急剧增加,为了避免针对特定任务的大规模特征工程,涌现了很多方法,这些方法主要是基于Embedding和神经网络技术。 FM将稀疏特征映射到低维稠密向量上,通过向量内积学习特征组合,也就是通过隐向量的内积来建模组合特征。

人工智能实验四:深度学习算法及应用(DNN&CNN)

走远了吗. 提交于 2020-01-12 08:43:37
人工智能实验四报告:深度学习算法及应用 文章目录 人工智能实验四报告:深度学习算法及应用 实验目的 实验要求 实验硬件 实验软件 实验内容与步骤 MNIST数据集 具体实现 DNN(深度神经网络) 概述 具体设计 代码实现 结果输出 结果分析 为啥我又用了CNN(卷积神经网络)? CNN(卷积神经网络) 概述 具体设计 代码实现 结果输出 结果分析 思考题 实验目的 了解深度学习的基本原理 能够使用深度学习开源工具识别图像中的数字 了解图像识别的基本原理 实验要求 解释深度学习原理 对实验性能进行分析 回答思考题 实验硬件 计算机 实验软件 软件:windows操作系统 应用软件:TensorFlow、PyCharm、Python、Google Colab 实验内容与步骤 安装开源深度学习工具设计并实现一个深度学习模型,它能够学习识别图像中的数字序列。使用数据训练它,可以使用人工合成的数据(推荐),或直接使用现实数据。 MNIST数据集 通过下面的代码我们可以对其中的图片有一个大致的把握: import matplotlib . pyplot as plt # 训练集 train_images = mnist . train . images train_labels = mnist . train . labels # 验证集 validation_images = mnist

词嵌入的那些事儿(一)

二次信任 提交于 2020-01-06 05:18:07
1. DeepFM算法的提出 由于DeepFM算法有效的结合了因子分解机与神经网络在特征学习中的优点:同时提取到低阶组合特征与高阶组合特征,所以越来越被广泛使用。 在DeepFM中,FM算法负责对一阶特征以及由一阶特征两两组合而成的二阶特征进行特征的提取;DNN算法负责对由输入的一阶特征进行全连接等操作形成的高阶特征进行特征的提取。 具有以下特点: 结合了广度和深度模型的优点,联合训练FM模型和DNN模型,同时学习低阶特征组合和高阶特征组合。 端到端模型,无需特征工程。 DeepFM 共享相同的输入和 embedding vector,训练更高效。 评估模型时,用到了一个新的指标“Gini Normalization” DeepFM里关于“Field”和“Feature”的理解: 可参考我的文章 FFM算法解析及Python实现 中对Field和Feature的描述。 2. DeepFM算法结构图 算法整体结构图如下所示: 其中,DeepFM的输入可由连续型变量和类别型变量共同组成,且类别型变量需要进行One-Hot编码。而正由于One-Hot编码,导致了输入特征变得高维且稀疏。 应对的措施是:针对高维稀疏的输入特征,采用Word2Vec的词嵌入(WordEmbedding)思想,把高维稀疏的向量映射到相对低维且向量元素都不为零的空间向量中。 实际上

给DNN网站加速

限于喜欢 提交于 2019-12-30 23:55:07
接触DNN已经有好几年了,用它做项目也有好几年了。用DNN做网站的最大好处就是快,方便调整页面布局样式,方便扩充功能。但是它也有一个致命的弱点就是访问速度慢。 根据项目实践经验我发现影响访问速度的瓶颈其实不在web服务器上而是在数据库服务器上。在大并发访问量的情况下,数据库服务器的压力很大,CPU的占用率都在80%以上。有大量的请求都被阻塞,往往一个请求都需要等待1-2秒中才会被执行。知道了瓶颈问题,我们就可以从以下几个方面入手修改了。 1、优化数据量在20万条上的表结构的索引,加快单个select的查询速度 2、优化sql语句的写法。 3、对超大数据量的表,有必要的要进行分表处理。 进行了以上调整后对sql执行这一块就会加快不少了。但是对于sql的请求并没有减少。浏览一个dnn页面往往要执行很多sql语句。有模块级有框架级的,要减少这方面的sql请求量,我们就需要从dnn的缓存下手了。 1、首先在“主机管理-->主机设置”中的缓存置中 基本上用默认设置就可以了,这样就可以解决框架级sql请求量,主要是tabinfo等。 2、在模块的模块设置中,设置合理的缓存时间就可以减少模块级的sql请求 只要是不经常变更的模块都可以设置这个缓存时间。它的原理是将这个模块生成的html缓存到一个文件或内存中去。 这样在页面载入的时候系统就会直接将这段缓存中的html展现出来而不会去调用具体的模块

OpenCV4.2 版本 DNN模块使用CUDA加速教程 VS2017 Window10

白昼怎懂夜的黑 提交于 2019-12-29 20:24:49
目录 CUDA安装与配置 cuDNN CMake编译 运行测试 总结 本文转载: OpenCV学堂 CUDA安装与配置 根据自己的GPU 选择合适的版本,我的是RTX2080Ti,选择CUDA10.0版本,按照默认地址安装就好,安装完之后看是否有环境变量。没有的话自己加上。 以及, cuDNN cuDNN一定要7.5版本以上,否则CMake将无法识别出cuDNN路径。 打开下载好的cuDNN,如下图 将cuDNN中bin、include、lib文件夹中的文件放入对应CUDA路径下的文件夹中 CMake编译 打开CMake,选择源码路径,以及生成路径,选择对应VS版本。开始第一次Configue。 其中会下载一些第三方文件,可以自行下载,否则速度较慢。第一次configure完成之后,勾选BUILD_opencv_world. 以及,勾选OPENCV_DNN_CUDA,选择解压好的opencv_contrib中modules路径添加进来。 勾选WITH_CUDA。 进行第二次Configure,Configure完成之后可能会报错,此时不管他,根据GPU算力表选择合适的CUDA_ARCH_BIN值,如我的是RTX2080Ti,则将CUDA_ARCH_BIN其余值删除,只留下7.5。然后勾选CUDA_FAST_MATH,点击Configure。 等待Configure完成之后

TensorFlow人工智能引擎入门教程所有目录

╄→尐↘猪︶ㄣ 提交于 2019-12-07 21:12:55
TensorFlow 人工智能引擎 入门教程之一 基本概念以及理解 TensorFlow人工智能引擎入门教程之二 CNN卷积神经网络的基本定义理解。 TensorFlow人工智能引擎入门教程之三 实现一个自创的CNN卷积神经网络 TensorFlow人工智能引擎入门教程之四 TensorBoard面板可视化管理 TensorFlow人工智能引擎入门教程之五 AlphaGo 的策略网络(CNN)简单的实现 TensorFlow人工智能引擎入门教程之六 训练的模型Model 保存 文件 并使用 TensorFlow人工智能引擎入门教程之七 DNN深度神经网络 的原理 以及 使用 TensorFlow人工智能引擎入门教程之八 接着补充一章MLP多层感知器网络原理以及 使用 TensorFlow人工智能引擎入门教程之九 RNN循环网络原理以及 使用 TensorFlow人工智能引擎入门教程之十 最强网络 RSNN深度残差网络 平均准确率96-99% TensorFlow人工智能入门教程之十一 最强网络DLSTM 双向长短期记忆网络(阿里小AI实现) TensorFlow人工智能引擎入门教程之十二 Tensorflow Caffe相互转换 TensorFlow人工智能引擎入门教程之十三 Tensorflow RCNN区域卷积神经网络 Tensorflow 人工智能引擎之 十四

<转载>用c++去访问tensorflow模型

≡放荡痞女 提交于 2019-12-06 14:19:39
原创 OpenCV调用TensorFlow预训练模型 置顶 2018-06-07 12:27:31 pan_jinquan 阅读数 20053 收藏 文章标签: OpenCV调用TesorFlow训练好的模型 OpenCV调用TesorFlow模型 readNetFromTensorflow opencv调用pb模型 OpenCV dnn 更多 分类专栏: OpenCV TensoFlow 深度学习 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/guyuealian/article/details/80570120 OpenCV调用TensorFlow预训练模型 【 尊重原创,转载请注明出处 】 https://blog.csdn.net/guyuealian/article/details/80570120 强大OpenCV从自OpenCV 3.1版以来,dnn模块一直是opencv_contrib库的一部分,在3.3版中,它被提到了主仓库中。新版OpenCV dnn模块目前支持Caffe、TensorFlow、Torch、PyTorch等深度学习框架。另外,新版本中使用预训练深度学习模型的API同时兼容C++和Python OpenCV 3