自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(196)
  • 资源 (29)
  • 收藏
  • 关注

原创 对 Relu激活函数导致 [ 神经元死亡 ] 的理解

Relu激活函数导致 [ 神经元死亡 ] 的原因relu函数和sigmoid函数相比,虽然能够避免反向传播过程中的梯度消失、屏蔽负值、防止梯度饱和;但是relu也有自身的缺陷,当学习率过大时会出现某些神经元永久死亡的现象,导致网络后期无法正常更新原因分析:上式是神经网络权重更新的公式,其中η表示学习吕,Δw表示通过求导得到的当前参数的梯度(一般为正值)当学习率过大时,会导致ηΔw 这一项很大,当ηΔw 大于w时,更新后的w’就会变为负值;当权重参数变为负值时,输入网络的正值会和权..

2021-07-17 20:05:26 3764 3

原创 #深入理解# 线性回归中的“线性”、以及最小二乘和梯度下降的理解

​1. 线性回归中的"线性"线性回归中的线性和我们通常理解的线性有着本质的区别,例如:X为自变量函数的次数指的是自变量的最高次项,线性函数表示自变量的最高次项为1;在高中和大学的学习中,我们往往要求解最优的x,因此我们认为x为变量,这时函数是否为线性函数我们要看自变量x指数位置的最大值是否为1;参数为自变量而在机器学习中,我们往往要求解最优的参数(上式中的a),因此,这时我们将a看做是自变量,x看作是常数,这时函数的次数就取决于参数a的最高次项;因此线性回归中如果参数的最高次项为1,

2021-07-14 14:36:43 1257

原创 #浅谈# 构造哈夫曼树

哈夫曼树又称最优二叉树,哈夫曼树中离根节点越近,节点的权重越大统计每个数据出现的次数,将每个数据出现的次数组成数组构造哈夫曼树:选择数据列表中最小的两个值,相加成为一个新的节点,并将两个节点较小的值作为左节点,较大的值作为右节点; 将上一步选择的两个节点在数据列表中删除,将想加得到的新节点的值加入到数据列表中 重复执行1、2步操作,直至数据列表为空构造哈夫曼编码将构造的哈夫曼树所有节点的左分支赋值为0,右分支赋值为1,然后将根节点到每个叶子节点路径上的值连起来作为每个叶子节点对应的数据

2021-07-12 21:39:12 361

原创 #深入理解# AdaBoost 集成学习方法

在AdaBoost算法中每个样本会被赋予一个权重,然后依次训练多个分类器,每训练完一个分类器都会根据当前分类器的结果对每个样本被选中的概率进行更新并得到当前分类器的权重参数,如果某个样本被算错则增加此样本被选中的概率,反之则降低概率;最后根据更新后的样本权重重新选择N个样本去训练下一个分类器;预测时,将每个分类器的结果加权得到预测的结果AdaBoost算法训练过程:将正样本标签置为1,负样本标签置为-1 初始化样本被选中的概率(均匀分布,每个样本被选中的概率为1/n) 根据样本权重选取N个样本训

2021-07-12 17:00:25 319

原创 #深入理解# 决策树综述(ID3、C4.5、CART)

目录1. 构造决策树的依据1.1 信息增益度1.2信息增益率1.3基尼系数2. ID3 vs C4.5 vs CART3. 剪枝操作3.1 预剪枝3.2 后剪枝4. 关于 ID3、C4.5、CART 的几个问题1. 构造决策树的依据决策树的构造,从本质上讲就是每次将样本分成几组,目标是让每一组中的类别尽可能单一(每组的熵加权相加后的值尽可能的小)ID3中使用最大化信息增益度对样本进行分组,C4.5中使用最大化信息增益率对样本进行分组,CART中使用最小化分..

2021-07-11 20:02:38 555

原创 Z检验、T检验下 P-value 和置信区间的计算

目录1.置信区间的计算1.1 总体方差已知1.2总体方差未知2.计算 P-Value2.1 总体方差已知2.2总体方差未知1.置信区间的计算根据总体分布(T分布或者Z分布)和规定的置信度计算总体均值在指定置信度下的置信区间,然后将实验值和置信区间比较,若在置信区间之外(小概率事件发生)则表示实验统计量和总体统计量存在显著差异1.1 总体方差已知总体方差已知时,根据总体均值和方差,使用Z分布计算置信区间,公式如下:其中: 表示样本均值 表...

2021-07-07 17:22:19 15022

原创 #深入理解# DNN+HMM 语音识别模型

上一篇文章详细解析了 GMM+HMM语音识别模型,在这篇文章中,我们将重点介绍DNN+HMM语音识别模型将DNN应用在语音识别有两种方式:1. 令DNN取代GMM+HMM中的GMM,但是首先要训练一个GMM+HMM的语音识别模型,得到初始状态概率训练一个分类器,输入一个特征帧能够得到一个这个特征属于每一个状态的概率...

2021-07-07 10:43:39 942

原创 #详细解读# 线性回归、逻辑回归及其损失函数

1. 线性回归线性回归输入如果是连续的,输出必然也是连续的,形式是损失函数一般使用 MSE、RMSE、MAE等,因为逻辑回归输出值是0~1本身给出的就是一个该概率值,而线性回归没有激活函数需要使用某种方式构造一种损失,那么最容易想到的便是最小二乘或RMSE,MAE等2. 逻辑回归(LR)逻辑回归在线性回归的基础上增加了激活函数(sigmoid)将输出限制在0到1,因此我们用交叉熵作为逻辑回归的损失函数,这里简述以下交叉熵和sigmoid激活函数:2.1 交叉熵1. 熵的定义:.

2021-07-05 16:43:46 2302

原创 #透彻理解# GMM+HMM 语音识别模型 [识别+训练] 过程

1.识别过程:对于每一帧的特征,根据状态转移矩阵A,2. 训练过程:使用k-means等方法初始化每个状态对应GMM中每个高斯分布的权重参数

2021-07-02 22:11:39 1756 1

原创 通俗理解隐马尔可夫模型(HMM)

HMM(隐马尔可夫模型)对于一个观测序列,我们认为这个观测序列是由另一个状态序列输出的,而这个状态序列我们称之为隐马尔可夫链隐马尔可夫链每次可以输出一个观测值,但是一个观测值一次只能被一个状态输出;HMM 的每一个状态输出完一个观测值后会根据概率转换到其他状态(其他状态也包括自身状态)然后在下一个状态下在输出下一个观测值,直到输出所有观测值时结束一个HMM包含三组参数(π,A,B\pi,A,Bπ,A,B):数组π\piπ:表示初始化时每种状态被选择的概率(初始概率分布);矩阵A(N * N,N=

2021-06-28 23:35:24 1530 2

原创 #通俗理解# 从极大似然估计(MLE)到最大期望(EM)算法

顾名思义,最大期望算法就是让某个函数的期望最大化从而得到最优参数,首先我们先要了解期望的公式:期望本质上就是根据随机变量的分布对函数值的加权求和,平均值是期望的一种特殊形式,平均值假设随机变量取到每种值得概率相同(均分分布)EM算法一般用来求解混合模型的参数,因为混合模型一般是多个不同参数模型的加权和,这种形式很难通过导数为零的方法得到每个参数的解析解;EM算法思想是让多个模型对应的似然函数同时最大化;在进一步说,EM算法有两部分参数:一部分是混合模型中各模型的权重参数,我们这里称之为隐变量Z;一

2021-06-24 23:10:58 3000 2

原创 语音识别(Speech Recognition)综述

1. 语音识别的基本单位1.1 Phonemea unit of sound 是声音的最基本单位,每个词语token的声音由多个 phoneme 组成1.2 Graphemesmallest unot of a writing system 每个单词书写最基本的单位,简单来说:英文的grapheme可以认为是词缀, 由 [26个英文字母 + 空格 + 标点符号]组成中文的grapheme是汉字1.3 Word英文可以用单词作为语音识别的最基本单位,但包括中文在内的很多语言无法使用word作为

2021-06-18 16:31:42 6999 4

原创 全面理解哈希函数及其应用

1. 哈希函数哈希函数是指一种能够讲任意数据转换为固定长度编码的一种函数,因为不同数据得到的哈希值可能相同,因此哈希过程一般是不可逆的,哈希函数可以应用的密码加密,哈希存储等方面。好的哈西函数应该具备以下特点:相同的数据得到的哈希值唯一通过哈希值无法通过反向推导得到源数据源数据发生微小改变,得到的哈希值完全不同,长的字符也能快速的计算出哈希值要尽量避免冲突(不同的数据得到的编码要尽量不同)2. 哈希加密算法比如对用户密码的加密,如果使用明文来存储用户密码,那么管理员很容易就能在后台获取

2021-06-09 22:40:18 7618

原创 #深入探究# Adam和SGDM优化器的对比

1. Adma 和 MSGDAdam和MSGD作为当今最优秀的两种深度学习优化器,分别在效率和精度上有着各自的优势,下面我们将分析两种优化器各自优势的原因,两边的两张图分别是 几种常见的优化器在猫狗分类数据集上的分类准确率曲线,第一个是训练集,第二个是测试集以下两张图是某个NLP任务中,几种模型的准确率和困惑度指标变换曲线通过上边两幅图片可知:Adma在训练集上的准确率较高,MSGD在测试集上的准确率较高Adma的速度更快,但MSGD能够得到好的效果第一个结论可以用下边这个图来解释:

2021-06-07 16:55:19 10613

原创 对极大似然估计(MLE)和极大后验估计(MAP)的通俗理解

概率与统计对于这个函数:P ( x ∣ θ )输入有两个:x表示某一个具体的数据;θ表示模型的参数。如果 θ 是已知确定的,x是变量,这个函数叫做概率函数(probability function),它描述对于不同的样本点x,其出现概率是多少,求解x的过程属于概率学范畴。如果x是已知确定的,θ是变量,这个函数叫做似然函数(likelihood function), 它描述对于不同的模型参数,出现x这个样本点的概率是多少,求解θ的过程属于统计学范畴。也有人上上述两种问题称之为描述统计学(

2021-06-01 17:22:51 268

原创 #透彻理解# 机器学习中,正则化如何防止过拟合

简单来说,正则化就是对损失函数增加额外一种约束的方法,主要用来进行特征选择和改善模型的过拟合现象常用的正则化方法有L0正则、L1正则、L2正则、随机正则L0正则:在损失函数后增加一个惩罚项,这个惩罚项计算参数的L0范数L1正则:在损失函数后增加一个惩罚项,这个惩罚项计算参数的L1范数L2正则:在损失函数后增加一个惩罚项,这个惩罚项计算参数的L2范数随机正则:随机让某些权重系数为零,在神经网络中表现为让某些神经元失活范数的概念如下:范数是一种用来度量某个向量空间(或矩阵)中的每个向量的长度或

2021-05-28 23:21:48 836

原创 #手写代码# 用Bert+CNN解决文本分类问题

文章目录1 配置文件2 定义模型2.1 __init__(self,config)函数2.1 conv_and_pool()函数2.3 forward(self,x)函数1 配置文件首先定义一个配置文件类,类里边存放Bert和CNN的一些超参数class Config(object): ''' 配置参数 ''' def __init__(self,dataset): # 模型名称 self.model_name='Bert CNN Mo

2021-05-25 10:04:42 3560 5

原创 #手写代码# 用Bert+LSTM解决文本分类问题

1 配置文件首先定义一个配置文件类,类里边存放Bert和LSTM的一些超参数class Config(object): ''' 配置参数 ''' def __init__(self,dataset): self.model_name='Bert RNN Model' # 训练集,测试集,检验集,类别,模型训练结果保存路径 # self.train_path=dataset+'/data/dev.txt' #

2021-05-24 22:57:03 3966 7

原创 深入理解 PyTorch 的一维卷积和二维卷积,一维池化和二维池化

PyTorch 的一维卷积和二维卷积的输入都可以是多维的默认情况下,一维卷积只对输入的最后一维进行操作,二维卷积只对输入的最后两维进行操作;如果想要对输入的倒数第二维度进行一维卷积,那么必须使用二维卷积进行操作,同时卷积核的第二个维度保持和输入数据的最后一个维度保持一致,这样就能保证卷积核在输入数据的倒数第二个维度上进行滑动了;经过这样的卷积以后,输出数据的最后一个维度会变成1,这时一般会使用 unsqueeze() 函数删除数据的最后一个维度上述思想对PyTroch中的一维池化和二维池化同样适用

2021-05-24 14:12:08 3221 1

原创 通俗理解 TextCNN网络结构

TextCNN和图像CNN最大的区别就在于TextCNN是一维卷积,而图像CNN是二维卷积有些人认为一维卷积核二维卷积的区别在于输入数据的维度,认为一维卷积的输入是一维数据,二维卷积的输入是二维数据;其实不然,两个最大的区别是卷积滑动的方向:一维卷积只在一个唯独上进行滑动二维卷积先在第一个维度上滑动,然后在第二个维度上滑动,比如对于图像来说,卷积核先在第一行像素上横向活动,然后再在第二行上横向滑动…textCNN过程如下图所示:对于一个 n*k 的文本序列,n代表文本序列的长度,k代表embe

2021-05-21 14:46:12 667

原创 #手写代码# 使用Bert进行文本分类(包含文本预处理、自定义分类器、模型训练与评估)

用预训练的Bert模型进行文本分类,主要的工作有两个,分别是:文本预处理自定义全连接层分类网络并将分类网络连接到 预训练好的Bert网络之后1 配置文件首先,我们需要定义一个配置文件,定义一系列要使用到的参数class Config(object): ''' 配置参数 ''' def __init__(self,dataset): self.model_name='LiChenhao Bert Model' # 训练集,测试集,检

2021-05-20 11:02:18 4538 5

原创 通俗理解 Adam 优化器

Adma的公式如下,这里我们主要分析红色的标记的这4行公式:公式1、2分别计算 历史梯度的一阶指数平均 和 历史梯度平方的一阶指数平均 ,公式3是计算变量更新值,由公式3可知,变量更新值正比于历史梯度的一阶指数平均值,反比于历史梯度平方的一阶指数平均值;历史梯度的一阶指数平均值历史梯度的一阶指数平均可以理解为求历史梯度的加权平均,距离当前时刻距离越远权重越小如果变量在某一维度更新时,梯度存在较大震荡(梯度更新值正负交替),那么得到的历史梯度的一阶指数平均值通过正负抵消会得到一个较小的值;如果变量

2021-05-17 16:04:55 9779 1

原创 从源码解析 Bert 的 BertPooler 模块

前文链接:energy百分百:从源码解析 Bert 的 Embedding 模块​energy百分百:从源码解析 Bert 的 BertEncoder 模块以上两篇文章解析了Bert的BertEmbedding、BertEncoder模块,接下来分析bert的第三个重要模块 BertPoolerBertPooler模块本质上就是一个全连接层网络,或者说一个分类器;BertPooler模块接在bert的堆叠encoder层后,主要用于解决序列级的NLP任务BertPooler模块源码class

2021-05-07 23:44:31 4822 3

原创 从源码解析 Bert 的 BertEncoder 模块

前文链接->从源码解析 Bert 的 Embedding 模块上一篇文章解析了 Bert 的 BertEmbedding 模块,接下来分析 bert的第二个重要模块 BertEncoderBertEncoder源码class BertEncoder(nn.Module): def __init__(self, config): super(BertEncoder, self).__init__() layer = BertLayer(config)

2021-05-07 22:53:22 4181 3

原创 从源码解析 Bert 的 Embedding 模块

前边从源码层面对BertModel类进行了一个深入的解析,接下来从云源码层面对 BertModel 类中的BertEmbeddings模块进行解析1. BertEmbeddings 类源码class BertEmbeddings(nn.Module): """Construct the embeddings from word, position and token_type embeddings. """ def __init__(self, config):

2021-05-07 21:50:10 3418 2

原创 #深入探究# PyTorch中的 forward() 方法详解

在PyTorch的很多函数中都会包含 forward() 函数,但是也没见哪里调用过forward() 函数,不免让人产生疑惑想要了解 forward() 函数的作用,首先要了解 Python 中的 __ call __ 函数,__ call __ 函数的作用是能够让python中的类能够像方法一样被调用,通过下边的例子来理解一下:class X(object): def __init__(self, a, b, range): self.a = a self

2021-05-06 22:57:42 7862 7

原创 从源码层面,深入理解 Bert 框架

看了好多 Bert 的介绍文章,少有从源码层面理解Bert模型的,本文章将根据一行一行源码来深入理解Bert模型BertBertModel 类的源码如下(删除注释)class BertModel(BertPreTrainedModel): def __init__(self, config): super(BertModel, self).__init__(config) self.embeddings = BertEmbeddings(config)

2021-04-29 23:11:55 2577 4

原创 #彻底理解# pytorch 中的 squeeze() 和 unsqueeze()函数

在网上找了很多关于 torch.squeeze() 和 torch.unsqueeze()函数的讲解,但是讲的都不是很明白,尤其是维度增加的位置部分,这里分享一下我自己的理解:torch.squeeze(A,N)torch.unsqueeze()函数的作用减少数组A指定位置N的维度,如果不指定位置参数N,如果数组A的维度为(1,1,3)那么执行 torch.squeeze(A,1) 后A的维度变为 (1,3),中间的维度被删除注:如果指定的维度大于1,那么将操作无效如果不指定维度N,那么将删除所

2021-04-29 21:52:23 726

原创 使用虚拟Python环境 C++调用Python脚本出现 Py_Initialize : unable to load the file system codec 错误

问题Fatal Python error : Py_Initialize : unable to load the file system codecModuleNotFoundError: No module named ‘encodings’如果你出现上述错误,且具备以下条件,请往下看:使用的是虚拟Python环境,且VS里配置的lib、include 两个文件夹是从虚拟环境中复制过来的,DLLs、libs两个文件夹和 Python.XXdll文件是从虚拟环境依赖的Python目录复制过来

2021-04-27 22:19:17 2801

原创 #通俗理解# 测试集、训练集、开发集的区别

训练集train:用于训练模型开发集dev: 用于优化模型的超参数测试集test:用于最终测试模型性能实际场景中,需要进行不断调整模型的超参数(例如学习率)进行多次训练,每次训练使用训练集训练模型,使用开发集评估模型的性能;最终将超参数最优的模型放在测试集上评估模型的最终性能。...

2021-04-26 16:19:06 790

原创 #深入理解# Python的多进程与多线程

文章目录知识补充1. 并发与并行2. CPU密集型与I/O密集型2.1 CPU密集型(CPU bound)2.2 IO密集型(I/O bound)1. 多进程与多线程的区别2. 多线程、多进程、CPU核心的关系3. 多进程与多线程如何选择3.1 一般情况3.2 Python语言下的选择知识补充想要学习多进程与多线程,首先要理解以下概念:1. 并发与并行一个cpu同时执行多个线程的过程叫做并发;虽然叫做并发,但在底层CPU每次只能执行一个线程,具体方法是将cpu分成多个时间片段,然后让CPU以这些时

2021-04-23 17:01:22 219

原创 #最全面# 使用 Bert 解决下游 NLP 实际任务

文章目录1 四大NLP下游任务1 句子对分类任务1.1 MNLI1.2 QQP1.3 QNLI1.4 STS-B1.5 MRPC1.6 RTE1.7 SWAG2 单句子分类任务2.1 SST-22.2 CoLA3 问答任务3.1 SQuAD v1.14 单句子标注任务2 使用Bert实现自动文本摘要1 四大NLP下游任务BERT在概念上很简单,在经验上也很强大。它推动了11项自然语言处理任务的最新技术成果,而这11项NLP任务可分类为四大自然语言处理下游任务。这四类任务分别是:句子对分类任务、单句子分类

2021-04-16 14:03:28 3423

原创 #深入理解# Bert框架原理

Bert 全称 Bidirectional Encoder Representations from Transformers ,从全称可知,Bert内部使用的是一个双向的transformer的encoder结构。此前将预训练的语言模型应用到NLP任务主要有两种策略,一种是基于特征的语言模型,如ELMo模型;另一种是基于微调的语言模型,如OpenAI GPT。这两类语言模型各有其优缺点,而BERT的出现,似乎融合了它们所有的优点,因此才可以在诸多后续特定任务上取得最优的效果。1. Bert 的网络结构

2021-04-16 11:11:12 1216

原创 #由浅入深# 从 Seq2seq 到 Transformer

1 seq2seq模型传统的seq2seq模型,本质上就是一个自编码器,由编码器和解码器两部分组成,中间通过语义变量相连接;但是传统seq2seq模型中的编码器会将序列中所有时刻的序列数据转换成一个固定长度的语义变量;然后对于不同时刻的输出解码器共用这个语义变量,这就导致以下问题:对于不同长度的序列数据全部有损压缩为固定长度的语义变量,对于较长的序列数据,压缩必然会损失大量信息将不同时刻的序列数据转化为一个语义变量,对于编码器和解码器来说,无法进行并行计算编码器将不同时刻的序列数据转化为一个语义变

2021-04-07 21:43:09 926

原创 #最全面# NLP获取词向量的方法(Glove、n-gram、word2vec、fastText、ELMo 对比分析)

自然语言处理的第一步就是获取词向量,获取词向量的方法总体可以分为两种两种,一个是基于统计方法的,一种是基于语言模型的基于统计的方法基于统计的方法就是:用一个词语周边其他词语出现的次数来表示每一个词语,此时每个词向量的维度等于词库容量,每一维存储着词库对应序号的词语出现在当前词语周围的次数,所有这些词向量组成的矩阵就是共现矩阵我们也可以换一个角度来理解共现矩阵,共现矩阵就是两个词同时出现的次数,共现矩阵的i行j列的数值表示词库中第i个词和第j个词同时出现的次数,同时共现矩阵是对角线为零的斜对称矩阵大家

2021-04-06 14:17:13 2332 1

原创 #深入理解# NLP 中的 Feature-based 和 Fine-tune 两种学习方法

基于神经网络的语言模型根据学习方法不同大体可以分为两大类,分别是Feature-based和Fine-tuneFeature-based 方法是通过训练神经网络从而得到词语的embedding,换句话说就是通过神经网络得到更恰当的向量来表示词库中的每一个词语,Feature-based 方法不使用模型本身,而是使用模型训练得到的参数作为词语的 embeddingFine-tune 方法会根据下游特定的任务,在原来的模型上面进行一些修改,使得最后输出是当前任务需要的。这些修改一般是在模型的最后一层,或者

2021-04-01 23:02:46 1284 1

原创 #深入解读# 机器学习中的指数函数和对数函数的作用

在学习机器学习相关理论时,我们常常会会在公式中遇到指数函数和对数函数,但是很时候我们并不理解这些函数的的真正作用,这里结合几个机器学习中的公式来具体分析一下指数函数和对数函数的作用指数函数由上图可知:指数函数的自变量范围是(-∞,+∞),因变量范围是(0,+∞)当指数函数自变量范围在(-∞,0)时,因变量输出范围为(0,1)因此,在神经网络中我们可以用指数函数的这两个性质对数据进行(-∞,+∞)到(0,+∞)或者(-∞,0)到(0,1)的映射softmax函数就是一个使用指数函数将神经网络

2021-03-14 20:08:47 1891 1

原创 #深度解析# GAN(生成对抗神经网络)

生成对抗神经网络借鉴了零和博弈的思想,主要用于样本的生成,属于非监督学习简单总结一下 GAN 的基本思想:GAN由两部分网络组成,一个是生成网络,一个是判别网络生成网络部分类似VAE(变分自编码器)网络,用于生成新样本判别网络网络本质上是一个二分类分类器,用于识别输入的样本是真实样本还是生成的假样本;训练GAN网络时,判别网络会不断提高识别能力,而生成网络会不断提高生成能力从而降低判别网络的判别能力;这两种网络相互竞争从而提高网络生成新样本的能力:...

2021-03-11 16:54:28 2201

原创 计算机视觉领域使用 transformer(Vision Transformer)

计算机视觉领域一般使用CNN网络进行特征提取,但是为了增大CNN卷积核的视野,需要不断增加CNN网络的深度;不断增加网络深度会导致CNN网络训练效率变差、训练过程复杂且不稳定;将transformer网络和CNN网络相结合,用的transformer的self-attention机制代替CNN中卷积层叠加策略,便能在扩大CNN视野的同时增加网络的训练效率;transformer网络和CNN网络相结合通常有两种方式 :Attention Augmented Convolutional Networks 和

2021-03-09 23:54:40 1035

原创 #彻底理解# NLP中的word2vec

首先简单概括一下 word2vec 的思想:word2vec的目的是用指定维度的向量来表示词库中的每一个词,这些向量更利于后期进行各种NLP任务;每个词语对应的词向量本质上是语言模型中的一些权重参数,因此我们需要通过训练网络的方式得到这些权重的最优值,换句话说,我们通过预测未知词的方式训练网络,目的并不是真的要去使用模型预测未知词,而是提取网络的网络的权重参数 进而得到词向量,然后拿这些词向量作为词语的另一种表示形式去进行别的模型里完成NLP任务word2vec的目的是通过训练语言模型得到词向量,而早在

2021-03-08 23:43:10 424

tensorflow使用一维卷积对序列数据进行训练

tensorflow使用一维卷积对序列数据进行训练

2021-02-22

PaperRetrievalDownload.rar

主开发的英文论文下载软件V4.0,软件集论文关键词检索,检索关键词过滤,论文下载,文章文字识别,论文全文译功能于一身。程序在下载论文时会自动测试所有可用的线路,并按连接速度依次下载直到所有下载线路失败。 V4.0 增加翻译本地pdf的功能

2021-02-17

kares下的 fashion-mnist 和 mnist 离线数据集打包下载

下载完成后,将两个文件拷贝到 C:\Users\XXXX(windows账户名)\.keras\datasets目录下 如果没有datasets文件夹请手动创建 在python环境下使用tf.keras.datasets.fashion_mnist.load_data() 加载数据集即可

2021-01-06

外文检索&下载&翻译&管理软件V3.3

主开发的英文论文下载软件V3.0,软件集论文关键词检索,检索关键词过滤,论文下载,文章文字识别,论文全文译功能于一身。程序在下载论文时会自动测试所有可用的线路,并按连接速度依次下载直到所有下载线路失败。

2020-11-27

外文检索&下载&翻译&管理软件V3.2

自主开发的英文论文下载软件V3.0,软件集论文关键词检索,检索关键词过滤,论文下载,文章文字识别,论文全文译功能于一身。程序在下载论文时会自动测试所有可用的线路,并按连接速度依次下载直到所有下载线路失败。

2020-11-25

外文检索&下载&翻译&管理软件V3.1

自主开发的英文论文下载软件V3.0,软件集论文关键词检索,检索关键词过滤,论文下载,文章文字识别,论文全文译功能于一身。程序在下载论文时会自动测试所有可用的线路,并按连接速度依次下载直到所有下载线路失败。

2020-11-25

外文检索&下载&翻译&管理软件V3.0

自主开发的英文论文下载软件V3.0,软件集论文关键词检索,检索关键词过滤,论文下载,文章文字识别,论文全文译功能于一身。程序在下载论文时会自动测试所有可用的线路,并按连接速度依次下载直到所有下载线路失败。

2020-11-25

PaperRetrievalDownload.rar

自主开发的英文论文下载软件V2.0,软件集论文关键词检索,检索关键词过滤,论文下载,文章文字识别,论文全文译功能于一身。程序在下载论文时会自动测试所有可用的线路,并按连接速度依次下载直到所有下载线路失败。

2020-09-02

论文检索&下载&文字提取&翻译&管理软件

自主开发的英文论文下载软件,软件集论文关键词检索,检索关键词过滤,论文下载,文章文字识别,论文全文翻译功能于一身。程序在下载论文时会自动测试所有可用的线路,并按连接速度依次下载直到所有下载线路失败。

2020-07-28

Xftp-6.0.0191p.zip

xftp免费版下载,此版本为官方提供的教育免费版,打开窗口数目不能超过2个,如有更高需求请购买专业版

2020-06-29

iOS_14_DP_Beta_Profile.zip

适用于iphone6s以上机型的ios14描述文件,请确认设备是iphonei并且phone6s以后的设备,

2020-06-29

redis.conf

自定义的 redis.conf 文件用于调试docker下的redis 3.2 版本,并将端口绑定注销

2020-03-21

docker redis 3.2 配置文件

自定义的 redis.conf 文件用于调试docker下的redis 3.2 版本,并将端口绑定注销

2020-03-21

TotalUninstaller.zip

TotalUninstaller--VS,完全卸载工具,用于对VS软件的完全卸载,请正常卸载完VS后hi使用本程序

2020-02-16

matlab所依赖的boost_*****.dll文件文件打包.zip

matlab由于不明原因缺失部分 dll 文件 这里把以boost开头的dll文件打包,供大家下载!

2020-02-13

boost_log_setup-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_log_setup-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_locale-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_locale-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_iostreams-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_iostreams-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_graph-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_graph-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_filesystem-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_filesystem-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_coroutine-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_coroutine-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_context-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_context-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_container-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_container-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_chrono-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_chrono-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_atomic-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_atomic-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

boost_date_time-vc120-mt-1_56.dll

matlab 2016a 由于找不到 boost_date_time-vc120-mt-1_56.dll,无法继续执行代码。重新安装程序可能会解决此问题。

2020-02-13

脑电数据批量绘图算法v3.0.zip

#3.0版本#调用eeglab批量读取excel文件中的脑电数据并绘制脑电拓扑图,算法可以根据用户输入读取指定列的特征,指定列的数据,并将数据特征映射到图片保存的文件名中

2020-01-04

脑电数据批量绘图算法V2.0.zip

#2.0版本#调用eeglab批量读取excel文件中的脑电数据并绘制脑电拓扑图,算法可以根据用户输入读取指定列的特征,指定列的数据,并将数据特征映射到图片保存的文件名中

2020-01-03

脑电批处理算法.zip

调用eeglab批量读取excel文件中的脑电数据并绘制脑电拓扑图,算法可以根据用户输入读取指定列的特征,指定列的数据,并将数据特征映射到图片保存的文件名中。

2020-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除