• 2024-09-22机器翻译之seq2seq训练、预测、评估代码
    目录1.seq2seq训练代码2.预测代码  3.评估代码 4.知识点个人理解 1.seq2seq训练代码seq2seq的训练代码:pytorch中训练代码一般都相同类似#将无效的序列数据都变成0(屏蔽无效内容的部分)defsequence_mask(X,valid_len,value=0):"""valid_len:有效序
  • 2024-09-22机器翻译之数据处理
    目录1.导包  2.读取本地数据3.定义函数:数据预处理  4.定义函数:词元化 5.统计每句话的长度的分布情况6.获取词汇表7. 截断或者填充文本序列 8.将机器翻译的文本序列转换成小批量tensor 9.加载数据10.知识点个人理解1.导包 #导包importosimporttorch
  • 2024-08-14Transformer--概念、作用、原理、优缺点以及简单的示例代码
    Transformer的概念Transformer是一种基于自注意力机制的神经网络模型,最早由Vaswani等人在2017年的论文《AttentionisAllYouNeed》中提出。它主要用于自然语言处理任务,如机器翻译、文本生成、文本分类等。与传统的循环神经网络(RNN)和长短时记忆网络(LSTM)不同,Transformer完全
  • 2024-08-09nlp基础之-词汇表构建的具体做法
    词汇表构建(VocabularyBuilding)是文本数据预处理中的关键步骤,涉及从训练语料中生成一个包含所有可识别单词、子词或字符的集合。具体做法如下:1.数据收集与清洗数据收集:收集所有待处理的文本数据,包括训练集、验证集和测试集。数据清洗:在构建词汇表之前,清洗数据以去除噪声
  • 2024-08-03Datawhale AI 暑期夏令营 第四期Task3
    Transformer架构Transformer是一种用于自然语言处理(NLP)和其他序列到序列(sequence-to-sequence)任务的深度学习模型架构,它在2017年由Vaswani等人首次提出。Transformer架构引入了自注意力机制(self-attentionmechanism),这是一个关键的创新,使其在处理序列数据时表现出色。以下是Tran
  • 2024-08-03门控循环单元GRU
    目录一、GRU提出的背景:1.RNN存在的问题:2.GRU的思想:二、更新门和重置门:三、GRU网络架构:1.更新门和重置门如何发挥作用:1.1候选隐藏状态H~t:1.2隐藏状态Ht:2.GRU:四、训练过程举例******:五、预测过程举例******:六、底层源码:七、Pytorch版代码:一、GRU提出的背景:1.RNN存
  • 2024-07-17大语言模型系列 - Transformer:从基础原理到应用
    文章目录大语言模型系列-Transformer:从基础原理到应用一、Transformer简介二、Transformer的基础原理自注意力机制多头注意力机制位置编码残差连接和层归一化三、Transformer的架构编码器解码器四、Transformer的应用场景机器翻译文本生成文本分类问答系统五、Trans
  • 2024-07-06动手学深度学习(Pytorch版)代码实践 -循环神经网络-54~55循环神经网络的从零开始实现和简洁实现
    54循环神经网络的从零开始实现importmathimporttorchfromtorchimportnnfromtorch.nnimportfunctionalasFfromd2limporttorchasd2limportmatplotlib.pyplotaspltimportliliPytorchaslp#读取H.G.Wells的时光机器数据集batch_size,num_steps
  • 2024-07-01机器翻译及实践 进阶版:基于Transformer实现机器翻译(日译中)
    机器翻译及实践进阶版:基于Transformer实现机器翻译(日译中)前言一、所需要的前置知识——Transformer1.自注意力机制1.1Query&Key&Value版注意力机制1.1.1什么是Query&Key&Value版注意力机制1.1.2为什么引入Query&Key&Value版注意力机制1.1.3如何实现Query&Key&Value
  • 2024-06-04西瓜书与d2l笔记
    西瓜书强化学习任务通常用马尔可夫决策过程(MarkovDecisionProcess,简称MDP)来描述机器只能通过选择要执行的动作来影响环境,也只能通过观察转移后的状态和返回的奖赏来感知环境机器要做的是通过在环境中不断地尝试而学得一个"策略"(policy)π,根据这个策略,在状态x下就能得知
  • 2024-04-21llama3的改进
    llama2{"_name_or_path":"TheBloke/Llama-2-7B-fp16","architectures":["LlamaForCausalLM"],"bos_token_id":1,"eos_token_id":2,"hidden_act":"silu","hidden_size&qu
  • 2024-03-19tokenizer分词器中的BPE分词方法的原理、样例、代码示例
    BytePairEncoding(BPE):想象一下你正在玩一种叫做“文字乐高”的游戏。在这个游戏中,你有很多小块,每个小块上写着一个字母或汉字。你的任务是用这些小块来构建单词或句子。开始时,你只能用单个字母或汉字的小块。但是游戏规则允许你找出那些经常一起出现的字母或汉字对,然后把它
  • 2023-11-26大模型训练过程中用到的 gpt_merge.txt和gpt_vocab.json是干什么用的?
    下面这边文章讲的非常清晰,原文链接:https://blog.csdn.net/ljp1919/article/details/113616226
  • 2023-11-14机器学习——深度循环神经网络
    到目前为止,我们只讨论了具有一个单向隐藏层的循环神经网络。其中,隐变量和观测值与具体的函数形式的交互方式是相当随意的。只要交互类型建模具有足够的灵活性,这就不是一个大问题。然而,对一个单层来说,这可能具有相当的挑战性。之前在线性模型中,我们通过添加更多的层来解决这个
  • 2023-11-14机器学习——门控循环单元(GRU)
    在 8.7节中,我们讨论了如何在循环神经网络中计算梯度,以及矩阵连续乘积可以导致梯度消失或梯度爆炸的问题。下面我们简单思考一下这种梯度异常在实践中的意义:我们可能会遇到这样的情况:早期观测值对预测所有未来观测值具有非常重要的意义。考虑一个极端情况,其中第一个观测值
  • 2023-11-12机器学习——循环神经网络的实现
    独热编码回想一下,在train_iter中,每个词元都表示为一个数字索引,将这些索引直接输入神经网络可能会使学习变得困难。我们通常将每个词元表示为更具表现力的特征向量。最简单的表示称为独热编码(one-hotencoding),它在 3.4.1节中介绍过。简言之,将每个索引映射为相互不同的单位向
  • 2023-10-20《动手学深度学习 Pytorch版》 9.7 序列到序列学习(seq2seq)
    循环神经网络编码器使用长度可变的序列作为输入,将其编码到循环神经网络编码器固定形状的隐状态中。为了连续生成输出序列的词元,独立的循环神经网络解码器是基于输入序列的编码信息和输出序列已经看见的或者生成的词元来预测下一个词元。要点:“<eos>”表示序列结束词元,一旦输
  • 2023-10-19《动手学深度学习 Pytorch版》 9.5 机器翻译与数据集
    机器翻译(machinetranslation)指的是将序列从一种语言自动翻译成另一种语言,基于神经网络的方法通常被称为神经机器翻译(neuralmachinetranslation)。importosimporttorchfromd2limporttorchasd2l9.5.1下载和预处理数据集“Tab-delimitedBilingualSentencePairs”
  • 2023-10-18《动手学深度学习 Pytorch版》 9.2 长短期记忆网络(LSTM)
    解决隐变量模型长期信息保存和短期输入缺失问题的最早方法之一是长短期存储器(longshort-termmemory,LSTM)。它与门控循环单元有许多一样的属性。长短期记忆网络的设计比门控循环单元稍微复杂一些,却比门控循环单元早诞生了近20年。9.2.1门控记忆元为了记录附加的信息,长短期记
  • 2023-10-17《动手学深度学习 Pytorch版》 9.1 门控循环单元(GRU)
    我们可能会遇到这样的情况:早期观测值对预测所有未来观测值具有非常重要的意义。考虑一个极端情况,其中第一个观测值包含一个校验和,目标是在序列的末尾辨别校验和是否正确。在这种情况下,第一个词元的影响至关重要。我们希望有某些机制能够在一个记忆元里存储重要的早期信息。如
  • 2023-10-16pytorch(9-1) 门控循环单元
     复杂实现 importtorchfromtorchimportnnfromtorch.nnimportfunctionalasFfromd2limporttorchasd2lfromAPI_86import*#1-1初始化权重Wbdefget_params(vocab_size,num_hiddens,device):num_inputs=num_outputs=vocab_sized
  • 2023-10-12《动手学深度学习 Pytorch版》 8.6 循环神经网络的简洁实现
    importtorchfromtorchimportnnfromtorch.nnimportfunctionalasFfromd2limporttorchasd2lbatch_size,num_steps=32,35train_iter,vocab=d2l.load_data_time_machine(batch_size,num_steps)8.6.1定义模型num_hiddens=256rnn_layer=nn.RNN(len(
  • 2023-10-11pytorch(8-6) 循环神经网络的简洁实现
     https://zh.d2l.ai/chapter_recurrent-neural-networks/rnn-concise.html# 86循环神经网络的简洁.pyimporttorchfromtorchimportnnfromtorch.nnimportfunctionalasFfromd2limporttorchasd2lfromAPI_86import*batch_size,num_steps=32,35tra
  • 2023-10-11pytorch(8-6) 循环神经网络的简洁实现
    https://zh.d2l.ai/chapter_recurrent-neural-networks/rnn-concise.html API_85.pyimportcollectionsimportrefromd2limporttorchasd2limportrandomimportmathimporttorchimportrandomdraw_pic=0#@saved2l.DATA_HUB['time_machine']=
  • 2023-10-11《动手学深度学习 Pytorch版》 8.5 循环神经网络的从零开始实现
    %matplotlibinlineimportmathimporttorchfromtorchimportnnfromtorch.nnimportfunctionalasFfromd2limporttorchasd2lbatch_size,num_steps=32,35train_iter,vocab=d2l.load_data_time_machine(batch_size,num_steps)#仍然使用时间机器数据集