深度学习
文章平均质量分 63
记录学习和开发过程中的点滴
西檬饭
这个作者很懒,什么都没留下…
展开
-
【transformer】自注意力源码解读和复杂度计算
自注意力和多头注意源码解析和复杂度分析原创 2023-09-05 16:04:11 · 3138 阅读 · 1 评论 -
查看和指定GPU服务器显卡训练模型
查看和指定GPU训练模型原创 2023-07-05 15:04:34 · 1711 阅读 · 0 评论 -
本地使用远程服务器jupyter notebook
在远程服务器安装jupyter notebook并在本地电脑使用下面的步骤中写了配置ssh,个人觉得没必要,因为浏览器可能不信任这个证书或者证书过去得更新。Python ssl socket server SSLV3_ALERT_CERTIFICATE_UNKNOWN issue具体步骤参考:https://www.cnblogs.com/thousfeet/p/10647102.html虚拟环境的切换没使用anaconda建虚拟环境,而是virtualenv。参考这里把这个环境中的kernel原创 2022-04-14 19:03:36 · 1997 阅读 · 0 评论 -
自注意力 self-attention 笔记
自注意力向量作为模型的输入模型的输出上下文和自注意力点积注意力计算过程实际中计算并行进行多头注意力自注意力的问题自注意力和CNN自注意力和RNN向量作为模型的输入机器翻译任务里,使用词嵌入的方式将每个词表示为一个向量。语音识别任务里,使用通过切分帧获取每一帧的MFCC系数,构建一个特征向量。其他任务也能构造相应的向量形式作为输入。模型的输出4中形式:多对一一对一多对多一对多上下文和自注意力在机器翻译任务中常常需要考虑上下文来判断一个词的词性,给出正确的翻译。自注意力机制考虑整个原创 2022-04-05 16:02:26 · 2039 阅读 · 0 评论 -
使用单机单机多卡的训练模型时复信号输入问题
项目场景:使用单机多卡的模式训练模型问题描述torch.complex类型数据为模型输入,单卡训练正常,多卡训练报错。原因分析:单机多卡训练过程:解决方案:提示:这里填写该问题的具体解决方案:例如:新建一个 Message 对象,并将读取到的数据存入 Message,然后 mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget();换成 mHandler.sendMessage()。...原创 2022-03-20 15:42:16 · 368 阅读 · 0 评论 -
AttributeError: module ‘torch.onnx‘ has no attribute ‘set_training‘
问题描述import torchimport tensorwatch as twresnet18 = models.resnet18(pretrained=True)tw.draw_model(resnet18, (1, 3, 224, 224))使用tensorwatch展示网络结构时报错。问题原因当前环境中Pytorch版本为1.8。高于1.6的版本中,模块’torch.onnx’去掉了 'set_training’这个属性。解决办法将Pytorch降到1.6以下。Conda 安原创 2021-06-23 10:23:13 · 3066 阅读 · 7 评论 -
Pytorch 轮子1 基本张量的处理
常用张量的定义全零矩阵、全一矩阵和对角矩阵:>>> torch.zeros([2, 4], dtype=torch.int32)tensor([[ 0, 0, 0, 0], [ 0, 0, 0, 0]], dtype=torch.int32)>>> cuda0 = torch.device('cuda:0')>>> torch.ones([2, 4], dtype=torch.float64, device=cuda原创 2021-06-20 18:03:40 · 768 阅读 · 0 评论 -
论文阅读:Cardiologist-Level Arrhythmia Detection with Convolutional Neural Networks
简介建立了一个病人数量是现有数据集500倍以上数据集;一个34层的卷积神经网络;在敏感度和准确度方面都超过了心脏病专家的平均表现。数据的不平衡问题是这么解决的:“We intentionally select patients exhibiting ab- normal rhythms in order to make the class balance of the dataset more even and thus the likelihood of observing un- usual原创 2020-07-27 18:20:23 · 954 阅读 · 0 评论 -
Keras中那些学习率衰减策略
神经网路的训练绕不开的调参,调参中学习率至为重要。下面聊聊Keras中提供的学习率策略。四种学习率衰减策略指数衰减原创 2020-07-26 13:30:44 · 12453 阅读 · 4 评论 -
站在巨人的肩膀上-keras迁移学习
通过本文聊聊怎么将别人用大量数据集训练好的模型、或者模型的权重为我们服务。迁移学习是什么?可以参考民间知乎大神的答案,我理解的就是借力。keras目前提供以下可以使用的模型,直接或者间接使用这些模型能省不少事。keras中applications的代码结构是这样的:其中两处的Functions是一样的,调用某个模型时,直接调用指定模块的函数,就能实例化一个模型。比如使用ResNet50from tensorflow.keras.applications.resnet50 import ResN原创 2020-07-23 17:54:12 · 741 阅读 · 0 评论 -
一维卷积处理时间序列
一维卷积在以下几个方面能取得很好的效果:Analysis of a time series of sensor data.Analysis of signal data over a fixed-length period, for example, an audio recording.一维卷积核二维卷积的区别从上图可以理解卷积核处理的顺序或者前进方向不相同。一维卷积提取固定长度信号的特征,一个卷积核通常覆盖一段完整的信号。上面左图中是使用1D CNN处理文本。这里的文本已经通过embedin原创 2020-07-11 10:35:22 · 6386 阅读 · 0 评论 -
重读经典神经网络-VGGNet
VGGNet网络结构VGGNet最大的特点就是反复使用3x3的卷积核和2x2的最大池化层不断探索更加深层的网络结构。可以将VGGNet分段,有5段卷积,每段包含几个卷积层,段末使用池化层缩小尺寸;每段卷积核大小一致,但是随着段增加,卷积核数量增加。使用反复使用3x3的卷积核和2x2的最大池化不断加深网络结构,得到了不同级别的网络:关于卷积核和视野域2个3x3卷积核等价于一层5x5卷积核3个3x3卷积核等价于一层7x7卷积核使用1x1卷积核是有效的,等价于非线性变换经验:经过poolin原创 2020-07-09 11:11:11 · 289 阅读 · 0 评论 -
INTERSPEECH计算机辅助语言学大赛
记录一下最近发现的一个比赛和一些资源。比赛的名称:The Interspeech Computational Paralinguistics ChallengE (ComParE) (INTERSPEECH计算机辅助语言学大赛)介绍(译文):Interspeech计算辅助语言学挑战(ComParE)系列是计算辅助语言学领域的一个开放性挑战,涉及说话人的状态和特征,表现在他们的语音信号的性质。自2009年以来,INTERSPEECH每年都会面临挑战。每年,我们都会引入新的任务,因为仍然存在大量尚未涵盖但原创 2020-07-07 16:43:45 · 1109 阅读 · 0 评论 -
关于词嵌入
词向量化将词向量化的一个很简单的思路:(1)统计语料中出现的每个单词,并按照词频由高到低排列,得到一个字典(2)根据字典将句子转为由整数表示的向量有了字典,给定一个词,就能找到它在字典中的位置。比如单词a,在字典中a的位置为3;评论中出现的词在字典中不存则为0。把每个词用其在字典中的index来表示。每句话都将会构造一个对应长度的词向量。举个栗子:评论为“I like this movie!”‘I’在字典中的index为9;‘like’在字典中的index为37;‘this’‘在字典中的i原创 2020-06-02 11:10:12 · 264 阅读 · 0 评论 -
语音识别中seq2seq的输入数据构建
很多seq2seq的实战都是翻译问题,如英语转法语等。给模型构建的特征都是先建立字母或者词的字典,然后构建向量作为输入。最终的输入是一个0,1组成的三维向量。但是如果想将这个模型运用到其他领域,要怎么预处理数据呢?下面先展示机器翻译中输入数据的格式化,然后介绍语音识别中输入数据的格式化。原创 2020-04-18 13:45:51 · 1028 阅读 · 0 评论 -
numpy.lib.stride_tricks.as_strided() 高效切分数组
Numpy的一个函数:np.lib.stride_tricks.as_strided()这个函数可以高效地切分一个数组为不同的shape块。可以参考官方文档或者这篇写得很好的博客。描述:numpy.lib.stride_tricks.as_strided(x, shape=None, strides=None, subok=False, writeable=True)其中:x为输入数组;...原创 2020-04-18 10:38:01 · 5630 阅读 · 2 评论 -
高斯-伯努利玻尔兹曼机
关于机器学习中的受限玻尔兹曼机(RBM)的非二值情况的推导http://blog.51cto.com/13345387/1971665限制Boltzmann机(Restricted Boltzmann Machine)http://www.cnblogs.com/neopenx/p/4399336.html1. 能量函数的区别2.代码实现原创 2018-07-13 22:50:01 · 4733 阅读 · 3 评论 -
受限玻尔兹曼机二
博主falao_beiliu写的一篇非常好的文章。 这里为方便自己以后速查,做个导航。 原文目录: 限制波尔兹曼机RBM使用方法 限制波尔兹曼机RBM能量模型 从能量模型到概率 求解极大似然 用到的抽样方法 马尔科夫蒙特卡罗简介 参考文献 原文链接: https://blog.csdn.net/mytestmy/article/det...原创 2018-07-06 10:16:39 · 536 阅读 · 0 评论 -
受限玻尔兹曼机一
转载文章 作者: peghoty 出处: http://blog.csdn.net/itplus/article/details/19168937 目录链接(一)预备知识(二)网络结构(三)能量函数和概率分布(四)对数似然函数(五)梯度计算公式(六)对比散度算法(七)RBM 训练算法(八)RBM 的评估...转载 2018-07-05 15:51:26 · 263 阅读 · 0 评论 -
深度置信网络(DBN)在Tensorflow中的实现以及它在MNIST中的应用实例
Deep Learning with TensorFlow IBM Cognitive Class ML0120EN Module 5 - Autoencoders使用DBN识别手写体 传统的多层感知机或者神经网络的一个问题: 反向传播可能总是导致局部最小值。 当误差表面(error surface)包含了多个凹槽,当你做梯度下降时,你找到的并不是最深的凹槽。 下面...翻译 2018-06-19 22:01:36 · 16707 阅读 · 149 评论 -
受限玻尔兹曼机(RBM)与其在Tensorflow的实现
Deep Learning with TensorFlow IBM Cognitive Class ML0120EN简介受限玻尔兹曼机是一种无监督,重构原始数据的一个简单的神经网络。 受限玻尔兹曼机先把输入转为可以表示它们的一系列输出;这些输出可以反向重构这些输入。通过前向和后向训练,训练好的网络能够提取出输入中最重要的特征。为什么RBM很重要?因为它能够自动地从输入中提取重...翻译 2018-06-14 16:29:50 · 13554 阅读 · 28 评论 -
常用神经网络的分类
KNN DNN SVM DL BP DBN RBF CNN RNN ANN概述本文主要介绍了当前常用的神经网络,这些神经网络主要有哪些用途,以及各种神经网络的优点和局限性。1 BP神经网络BP (Back Propagation)神经网络是一种神经网络学习算法。其由输入层、中间层、输出层组成的阶层型神经网络,中间层可...转载 2018-03-05 16:05:19 · 56606 阅读 · 5 评论 -
Courase Neural Networks for Machine Learning Lecture2 Note
Types of neural network architecturesfeed-forward neural network最常见的一种结构是前馈神经网络. 在该结构中,信息从输入层流入,沿着一个方向通过隐含层直到输出层.RRNN的连接图中包含了有向环路.这意味着如果从一个神经元开始,沿着箭头移动,有时候可能又回到了开始的神经元.RNN参数的动态变化非常复杂,很难训练.RNN...原创 2018-06-28 21:26:14 · 855 阅读 · 0 评论 -
Courase Neural Networks for Machine Learning Lecture1 Note
模仿神经元的信息传递,理想化抽象出神经元相互传递的实质。线性神经元对于简单的线性神经元,输出Y 是这个神经元的偏置 (bias) b 以及所有的输入连接与其对应的突触权值的乘积的函。 阈值神经元对于一个阈值型神经元, 你可以把它的输出看做取决于有的输入连接加权和是否高于阈值的函数。 如果是的话,则输出为1; 否则输出为0 。实际上有如下两种等价的方式来给出阈值型神经元的激活方...原创 2018-06-20 17:49:27 · 440 阅读 · 0 评论 -
softmax 分类器
没有时间总结,先记下来。 (1)CS231n课程笔记翻译:线性分类笔记(下) https://zhuanlan.zhihu.com/p/21102293?refer=intelligentunit (2)cs231n-assignment1-SVM/Softmax/two-layer-nets梯度求解 https://blog.csdn.net/pjia_1008/article/deta...原创 2018-07-17 21:45:10 · 7615 阅读 · 0 评论 -
深度学习调参经验
深度学习调参策略(一) 深度学习调参策略(二)原创 2018-07-26 17:11:49 · 1050 阅读 · 0 评论 -
零基础入门深度学习系列文章
极力推荐深度学习入门的文章,原文链接。零基础入门深度学习(1) - 感知器 零基础入门深度学习(2) - 线性单元和梯度下降 零基础入门深度学习(3) - 神经网络和反向传播算法 零基础入门深度学习(4) - 卷积神经网络 零基础入门深度学习(5) - 循环神经网络 零基础入门深度学习(6) - 长短时记忆网络(LSTM) 零基础入门深度学习(7) - 递归神经网络...原创 2018-09-04 16:21:18 · 1161 阅读 · 0 评论 -
tensorflow实现简单的softmat分类器
softmax分类器这篇文章介绍如何使用一个简单的多层感知机和softmax分类器对MNIST数据集进行分类。1. 使用内建的函数加载MNIST数据from tensorflow.examples.tutorials.mnist import input_datamnist = input_data.read_data_sets('MNIST_data', one_hot=Tru...翻译 2018-09-10 21:04:45 · 439 阅读 · 0 评论 -
使用Keras实战深度学习
这里记录四篇讲Keras在应用深度学习中的使用。与Keras官方给的example不同,这里也会讲数据的可视化和预处理,简单的模型。Part 1 - Artificial Neural NetworksPart 2 - Real World Case StudiesPart 3 - AutoencodersPart 4 - Convolutional Neural Networks对应...原创 2018-12-20 11:12:43 · 939 阅读 · 4 评论 -
一个TensorFlow 深度学习项目架构模板
github项目:https://github.com/MrGemy95/Tensorflow-Project-Template机器之心对上述文档的翻译:https://www.jiqizhixin.com/articles/2018-02-06-2美图云事业部的算法工程师基于上述项目做的模板:https://juejin.im/post/5ad6fe92518825556670384c对比...原创 2019-06-26 09:18:52 · 1900 阅读 · 0 评论 -
数据清洗、可视化工具
数据清洗、可视化工具数据清洗为什么需要清洗?数据来源不一导致出现(1)格式不同(2)数据冗余(3)没有统一标准,描述方式(4)数据合并方式不同数据清理工具:(1)IBM InfoSphere信息服务器分析、理解、清洗、监视、转换和传输数据。(2)Oracle的主数据管理(MDM)是处理大量数据,并且提供诸如合并、清洗、扩充和同步企业的关键业务数据对象等服务的解决方案。(3...原创 2019-07-02 20:24:58 · 5499 阅读 · 0 评论 -
手动/自动/交叉验证评估Keras深度学习模型的性能
Keras是Python中一个的强大而易用的库,主要用于深度学习。在设计和配置你的深度学习模型时,需要做很多决策。大多数决定必须通过反复试错的方法来解决,并在真实的数据上进行评估。因此,有一个可靠的方法来评估神经网络和深度学习模型的性能至关重要。在这篇文章中,你将学到使用Keras评估模型性能的几种方法。让我们开始吧。经验法评估网络配置在设计和配置你的深度学习模型时,你必须做出无数决...转载 2019-07-14 09:53:55 · 2652 阅读 · 3 评论 -
Win10 Nvidia GPU 深度学习环境
1. 安装显卡驱动(1) 查看显卡是否支持CUDA进入官网 https://developer.nvidia.com/cuda-gpus如果不支持先打开淘宝买一张 ,再进行下一步。(2)下载显卡驱动并安装官网: https://www.nvidia.com/Download/index.aspx?lang=en-us自动检测你电脑的显卡型号,按search后下载安装就行。2. C...原创 2019-07-14 17:23:56 · 1101 阅读 · 1 评论 -
keras快速开始序贯(Sequential)模型
快速开始序贯(Sequential)模型序贯模型是多个网络层的线性堆叠,也就是“一条路走到黑”。可以通过向Sequential模型传递一个layer的list来构造该模型:from keras.models import Sequentialfrom keras.layers import Dense, Activationmodel = Sequential([Dense(3...转载 2018-04-09 16:39:37 · 969 阅读 · 0 评论