
ML
文章平均质量分 77
sherlock31415931
这个作者很懒,什么都没留下…
展开
-
手把手教你搭建seq2seq实现法语向英语的翻译
基于Seq2Seq模型实现法语向英语的翻译章节简介Seq2Seq模型文本预处理辅助函数模型训练评估函数硬train一发结果模型保存与加载参考文献简介本文基于PyTorch实现seq2seq模型来实现法语向英语的翻译,会带你了解从seq2seq模型的主要原理,在实战中需要对文本的预处理,到训练和可视化一个完整的过程。读完本文,不仅可以通过这个项目来了解PyTorch的语法以及RNN(GRU)的操作,而且可以真正明白seq2seq模型的内涵。同时,你也可以实现自己的一个翻译器,效原创 2021-05-28 13:06:35 · 790 阅读 · 0 评论 -
普通人也能看懂的Transformer源代码解释(PyTorch)
Transformer源代码解释之PyTorch篇章节词嵌入位置编码多头注意力搭建Transformer在这里插入图片描述词嵌入Transformer本质上是一种Encoder,以翻译任务为例,原始数据集是以两种语言组成一行的,在应用时,应是Encoder输入源语言序列,Decoder里面输入需要被转换的语言序列(训练时)。一个文本常有许多序列组成,常见操作为将序列进行一些预处理(如词切分等)变成列表,一个序列的列表的元素通常为词表中不可切分的最小词,整个文本就是一个大列表,元素为一个一原创 2021-05-28 13:01:28 · 3553 阅读 · 0 评论 -
一篇看懂所有关于Transformer在翻译任务中的细节
Transformer之翻译篇章节MASK机制Encoder模型搭建训练函数MASK机制源码在colab上,数据集若要自己下载data原始的句子首先需要转换为词表中的索引,然后进入词嵌入层。举个例子,假如某个时间步长上输入句子为"I love u",src_vocab(源语言词表)为{"SOS":0,"EOS":1,"I":2,"love":3,"u":4},SOS和EOS代表句子的开头和末尾,那么输入句子变为[[2, 3, 4, 1]],接下来进入词嵌入层,目前我们的词表只有5个词,所原创 2021-05-28 12:48:34 · 2030 阅读 · 0 评论 -
彻底搞懂bert阅读理解源码
Bert & Transformer阅读理解源码详解参考论文https://arxiv.org/abs/1706.03762https://arxiv.org/abs/1810.04805在本文中,我将以run_squad.py以及SQuAD数据集为例介绍阅读理解的源码,官方代码基于tensorflow-gpu 1.x,若为tensorflow 2.x版本,会有各种错误,建议切换版本至1.14。当然,注释好的源代码在这里章节Demo传参数据篇番外句子分类创造实例实例转换原创 2021-04-15 12:49:30 · 1205 阅读 · 0 评论 -
彻底弄懂bert文本分类源码
Bert & Transformer文本分类源码详解参考论文https://arxiv.org/abs/1706.03762https://arxiv.org/abs/1810.04805在本文中,我将以run_classifier.py以及MRPC数据集为例介绍关于bert以及transformer的源码,官方代码基于tensorflow-gpu 1.x,若为tensorflow 2.x版本,会有各种错误,建议切换版本至1.14。当然,注释好的源代码在这里章节Demo传参跑不动原创 2021-04-15 11:40:07 · 1425 阅读 · 0 评论 -
彻底搞懂Transformer原理,Attention is all your need
Transformer参考论文(https://arxiv.org/abs/1706.03762)章节ReasonsSelf-AttentionMulti-Head AttentionPositional EncodingAdd & NormFeed ForwardResidual DropoutEncoder To DecoderShared WeightsEffectReasons For Transformer新模型的产生往往是为了旧模型的问题所设计的。原创 2021-04-15 11:25:03 · 842 阅读 · 0 评论 -
鲜为人知的训练神经网络技巧
------------------------------------------------------------------------图片来源----------------------------------------------------------------------------章节Train ProblemsChange ActivationUpdate Learning RateTest ProblemsDropoutEarlyStoppingRegu.原创 2021-04-15 11:04:14 · 152 阅读 · 0 评论 -
彻底看懂RNN,LSTM,GRU,用数学原理解释梯度消失或者梯度爆炸
Recurrent Neutral Network章节RNN概述LSTMGRU梯度困区Seq2Seq模型何去何从模型之外RNN概述为什么它叫做递归神经网络呢?与其他网络有何不同?接下来用简单例子阐述:这是比较简单的示意图,比如说一个网络只有一层,那么,那一层代表的函数方法就是这个网络实际对输入所起的作用,即Y = Funtion(X),我们实际上想找出那个function它究竟是什么。可以从下图看出,RNN得到一个输出不仅仅靠输入的X,同时还依赖于h,h在RNN中被叫做cell原创 2021-04-15 10:58:15 · 2331 阅读 · 0 评论 -
DNN(Deep-Learning Neural Network)
DNN(Deep-Learning Neural Network)接下来介绍比较常见的全连接层网络(fully-connected feedfoward nerural network)名词解释首先介绍一下神经网络的基本架构,以一个神经元为例输入是一个向量,权重(weights)也是一个矩阵把两个矩阵进行相乘,最后加上偏差(bias),即w1 * x1 + w2 * x2 + b神经元里面会有一个激活函数(activation),比如sigmoid,Relu等等,然后将这个结果当作未知量输入原创 2021-04-15 10:36:45 · 414 阅读 · 0 评论 -
反向传播算法(BackPropagation)
反向传播算法(BackPropagation)首先介绍一下链式法则假如我们要求z对x1的偏导数,那么势必得先求z对t1的偏导数,这就是链式法则,一环扣一环BackPropagation(BP)正是基于链式法则的,接下来用简单的前向传播网络为例来解释。里面有线的神经元代表的sigmoid函数,y1y_1y1代表的是经过模型预测出来的,y1=w1∗x1+w2∗x2y_1 = w1 * x1 + w2 * x2y1=w1∗x1+w2∗x2,而y1y^1y1代表的是实际值,最后是预测值与实际值之间的误原创 2021-04-15 10:29:57 · 471 阅读 · 0 评论 -
Ubuntu GPU 深度学习环境Tensorflow CUDA10.0 Cudnn 双系统 联想拯救者Y7000
https://github.com/sherlcok314159/Ubuntu/blob/main/GPU_.md原创 2021-03-02 19:21:33 · 401 阅读 · 0 评论 -
numpy入门 python 切片索引 合成 分割 创建数组 矩阵相乘
Introduction to numpyimport numpy as np1.创建数组#维数与中括号对数有关print(np.array([1,2,3]))#1 dimension [1,2,3]print(np.array([[1,2,3]]))#2 dimensions [[1,2,3]]2.转置矩阵#不改变维度,一维不变a = np.array([1,2,3])print(np.transpose(a))#[1,2,3]b = np.array([[1,2,3]]原创 2021-01-30 14:01:22 · 347 阅读 · 0 评论 -
矩阵乘法 点积 哈达玛积 线性代数 机器学习 numpy
Multiplication1.Hadamard product(哈达玛积)形式:A * B定义:a,b 都是 i x j 的同阶矩阵,设 c 是两者哈达玛积后的结果c(i) = a(i) * b(i)e.g.a = np.array([1,2,3]),b = np.array([4,5,6])c = a * b = [4,10,18](当然,输出的时候肯定看不到逗号)a’ = np.array([[1,2,3],[4,5,6]]),b’ =np.array([[1,-1,1],[6原创 2021-01-30 13:59:25 · 2248 阅读 · 0 评论