当前位置: 首页 > news >正文

网站设计制作上海网站 流量攻击怎么办

网站设计制作上海,网站 流量攻击怎么办,网页紧急升级,百度精准搜索引言 Transformer 架构自《Attention Is All You Need》论文发表以来#xff0c;在自然语言处理领域引起了巨大的变革。它摒弃了传统的循环结构#xff0c;完全基于注意力机制#xff0c;显著提高了处理序列数据的效率和性能。本文将通过对一个具体的项目代码结构进行详细分…引言 Transformer 架构自《Attention Is All You Need》论文发表以来在自然语言处理领域引起了巨大的变革。它摒弃了传统的循环结构完全基于注意力机制显著提高了处理序列数据的效率和性能。本文将通过对一个具体的项目代码结构进行详细分析带领大家深入了解 Transformer 模型的数据处理部分。 项目结构概述 首先让我们来看看项目的整体结构参考项目代码 transformer-master ├── paper\ │ └── attention is all you need.pdf ├── image\ ├── models\ │ ├── __init__.py │ ├── blocks\ │ │ ├── __init__.py │ │ ├── decoder_layer.py │ │ └── encoder_layer.py │ ├── embedding\ │ │ ├── __init__.py │ │ ├── positional_encoding.py │ │ ├── token_embeddings.py │ │ └── transformer_embedding.py │ ├── layers\ │ │ ├── __init__.py │ │ ├── layer_norm.py │ │ ├── multi_head_attention.py │ │ ├── position_wise_feedforward.py │ │ └── scaled_dot_product_attention.py │ └── model\ │ ├── __init__.py │ ├── encoder.py │ ├── decoder.py │ └── transformer.py ├── saved\ ├── util\ │ ├── __init__.py │ ├── bleu.py │ ├── data_loader.py │ ├── epoch_timer.py │ └── tokenizer.py ├── conf.py ├── data.py ├── graph.py ├── train.py └── README.md这个项目结构清晰包含了论文、模型模块、数据处理、训练脚本等部分。其中data.py 文件负责数据的处理和准备是模型训练的基础。 数据处理流程 数据处理流程图 #mermaid-svg-LSa9IUJkaE5fAgOS {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-LSa9IUJkaE5fAgOS .error-icon{fill:#552222;}#mermaid-svg-LSa9IUJkaE5fAgOS .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-LSa9IUJkaE5fAgOS .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-LSa9IUJkaE5fAgOS .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-LSa9IUJkaE5fAgOS .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-LSa9IUJkaE5fAgOS .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-LSa9IUJkaE5fAgOS .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-LSa9IUJkaE5fAgOS .marker{fill:#333333;stroke:#333333;}#mermaid-svg-LSa9IUJkaE5fAgOS .marker.cross{stroke:#333333;}#mermaid-svg-LSa9IUJkaE5fAgOS svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-LSa9IUJkaE5fAgOS .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-LSa9IUJkaE5fAgOS .cluster-label text{fill:#333;}#mermaid-svg-LSa9IUJkaE5fAgOS .cluster-label span{color:#333;}#mermaid-svg-LSa9IUJkaE5fAgOS .label text,#mermaid-svg-LSa9IUJkaE5fAgOS span{fill:#333;color:#333;}#mermaid-svg-LSa9IUJkaE5fAgOS .node rect,#mermaid-svg-LSa9IUJkaE5fAgOS .node circle,#mermaid-svg-LSa9IUJkaE5fAgOS .node ellipse,#mermaid-svg-LSa9IUJkaE5fAgOS .node polygon,#mermaid-svg-LSa9IUJkaE5fAgOS .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-LSa9IUJkaE5fAgOS .node .label{text-align:center;}#mermaid-svg-LSa9IUJkaE5fAgOS .node.clickable{cursor:pointer;}#mermaid-svg-LSa9IUJkaE5fAgOS .arrowheadPath{fill:#333333;}#mermaid-svg-LSa9IUJkaE5fAgOS .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-LSa9IUJkaE5fAgOS .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-LSa9IUJkaE5fAgOS .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-LSa9IUJkaE5fAgOS .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-LSa9IUJkaE5fAgOS .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-LSa9IUJkaE5fAgOS .cluster text{fill:#333;}#mermaid-svg-LSa9IUJkaE5fAgOS .cluster span{color:#333;}#mermaid-svg-LSa9IUJkaE5fAgOS div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-LSa9IUJkaE5fAgOS :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}#mermaid-svg-LSa9IUJkaE5fAgOS .green*{fill:#90EE90!important;stroke:#333!important;stroke-width:2px!important;}#mermaid-svg-LSa9IUJkaE5fAgOS .green span{fill:#90EE90!important;stroke:#333!important;stroke-width:2px!important;} Vocabulary and Indexes Data Preparation Initialization Get source pad index Get target pad index Get target sos index Get source vocab size Get target vocab size Make dataset Build vocabulary Create data iterators Import configurations Import DataLoader Import Tokenizer Create Tokenizer instance Create DataLoader instance 从流程图中可以看出数据处理主要分为三个阶段初始化、数据准备和获取词汇表及索引。 数据处理代码及解析 author : Hyunwoong when : 2019-10-29 homepage : https://github.com/gusdnd852from conf import * from util.data_loader import DataLoader from util.tokenizer import Tokenizertokenizer Tokenizer() loader DataLoader(ext(.en, .de),tokenize_entokenizer.tokenize_en,tokenize_detokenizer.tokenize_de,init_tokensos,eos_tokeneos)train, valid, test loader.make_dataset() loader.build_vocab(train_datatrain, min_freq2) train_iter, valid_iter, test_iter loader.make_iter(train, valid, test,batch_sizebatch_size,devicedevice)src_pad_idx loader.source.vocab.stoi[pad] trg_pad_idx loader.target.vocab.stoi[pad] trg_sos_idx loader.target.vocab.stoi[sos]enc_voc_size len(loader.source.vocab) dec_voc_size len(loader.target.vocab)1. 导入模块和配置 from conf import * from util.data_loader import DataLoader from util.tokenizer import Tokenizerfrom conf import *从 conf 模块导入所有内容通常包含全局配置如路径、参数等方便在整个项目中使用统一的配置。from util.data_loader import DataLoader导入 DataLoader 类它负责数据的加载和处理包括数据集的划分、迭代器的创建等。from util.tokenizer import Tokenizer导入 Tokenizer 类用于文本的分词和编码将文本转换为模型可以处理的形式。 2. 初始化分词器和数据加载器 tokenizer Tokenizer() loader DataLoader(ext(.en, .de),tokenize_entokenizer.tokenize_en,tokenize_detokenizer.tokenize_de,init_tokensos,eos_tokeneos)创建 Tokenizer 实例用于后续的分词操作。创建 DataLoader 实例指定 ext数据文件的扩展名这里指定为英语.en和德语.de表示处理的是英德双语数据。tokenize_en 和 tokenize_de分别指定英语和德语的分词函数这些函数来自 Tokenizer 实例确保不同语言的文本能正确分词。init_token 和 eos_token分别指定序列的开始和结束标记这里使用 sos 和 eos方便模型识别序列的边界。 3. 加载和划分数据集 train, valid, test loader.make_dataset()调用 DataLoader 实例的 make_dataset 方法加载数据并划分为训练集、验证集和测试集。训练集用于模型的训练验证集用于调整模型的超参数测试集用于评估模型的最终性能。 4. 构建词汇表 loader.build_vocab(train_datatrain, min_freq2)调用 DataLoader 实例的 build_vocab 方法基于训练数据构建词汇表。min_freq2 表示词汇表中只包含出现频率至少为 2 的单词这样可以过滤掉一些罕见的单词减少词汇表的大小提高模型的训练效率。 5. 创建数据迭代器 train_iter, valid_iter, test_iter loader.make_iter(train, valid, test,batch_sizebatch_size,devicedevice)调用 DataLoader 实例的 make_iter 方法为训练集、验证集和测试集创建数据迭代器。这些迭代器将数据分批加载到模型中batch_size 指定了每批数据的大小device 指定了数据加载到的设备如 CPU 或 GPU。分批处理数据可以减少内存的使用提高训练的效率。 6. 获取特殊标记的索引 src_pad_idx loader.source.vocab.stoi[pad] trg_pad_idx loader.target.vocab.stoi[pad] trg_sos_idx loader.target.vocab.stoi[sos]从源语言和目标语言的词汇表中获取 pad填充标记和 sos序列开始标记的索引。这些索引在后续的模型训练和推理中会被用到具体意义如下 pad 索引在处理不同长度的序列时为了能够将它们批量输入到神经网络中通常需要对序列进行填充或截断使其具有相同的长度。pad 标记用于填充较短的序列使其与最长序列的长度一致。在模型训练过程中通过识别 pad 标记的索引模型可以忽略这些填充部分的影响只关注实际有效的序列内容。sos 索引sos 标记用于标识序列的开始位置这对于生成式模型如文本生成、机器翻译中的解码器尤为重要。它告诉模型从哪里开始生成或解码序列。在解码过程中模型通常会从 sos 标记开始逐步生成后续的单词或字符直到遇到序列结束标记如 eos。 以下是一个简短的例程展示了如何在模型训练中使用这些特殊标记的索引 假设我们已经有一个训练好的seq2seq模型以及相应的数据加载器 #...模型和数据加载器的初始化代码省略...获取特殊标记的索引 src_pad_idx loader.source.vocab.stoi[pad] trg_pad_idx loader.target.vocab.stoi[pad] trg_sos_idx loader.target.vocab.stoi[sos]在训练循环中 for batch in train_iter:src_seq, trg_seq batch# 忽略填充部分的影响具体实现取决于模型#...处理src_seq和trg_seq可能包括掩码操作等...# 解码器从sos标记开始生成序列decoder_output model.decode(encoder_output, start_tokentrg_sos_idx)#...计算损失、更新模型参数等...7. 获取词汇表大小 enc_voc_size len(loader.source.vocab) dec_voc_size len(loader.target.vocab)获取源语言和目标语言词汇表的大小这些大小通常用于定义模型中的嵌入层大小。嵌入层将单词转换为向量表示词汇表的大小决定了嵌入层的输入维度。 Transformer模型数据处理的基本流程包括数据的加载、分词、划分、构建词汇表以及创建数据迭代器等操作。在实际应用中我们可以根据具体的任务和数据特点对这些步骤进行调整和优化。
http://www.hkea.cn/news/14409713/

相关文章:

  • 做视频采集网站犯法邢台pc网站开发
  • 建设网站人员北京有多少互联网公司
  • 网站建设策划方案怎么写聊城市建设局网站首页
  • 网站怎样做友情链接优化防疫措施+科学精准防控
  • 网站备案主体是什么seo软文外包公司
  • 河北网站制作价格北京市保障房建设投资中心网站首页
  • 淘宝网站怎样做设计属于什么行业
  • 站长工具seo综合查询方法领动做的网站怎么样
  • 东营网站关键词北京网站设计制作招聘网
  • 微信小程序商家版南昌网站优化方案
  • 淘宝客推广网站模板用wordpress做微博
  • 家乡ppt模板免费下载网站知春路网站建设公司
  • 西安网站建设eliwe有关网站开发的创意
  • 找做网站技术人员河南建筑公司网站
  • 芜湖网站开发公司电话jsp做的网站如何查看
  • xml做网站企业网站程序下载
  • 旅游电商网站建设方案模板佛山做网站需要多少钱
  • 有域名后怎么做网站wordpress功能插件
  • 大学生水果预定配送网站建设的项目规划书株洲市天元区建设局网站
  • 网站建设内容模板下载酷炫网站设计风格
  • 食品餐饮网站建设iis服务器网站301重定向怎么做
  • 建站备案网站开发平台的公司
  • 网站建站免费百度网站如何优化排名
  • 万能证在线制作生成器温州网站优化
  • 福州建网站,做网页wordpress tint2.2
  • 西安市政道桥建设公司网站我想在百度上发布广告怎么发
  • 建设企业银行网站多少嘉兴企业网站制作
  • 福建中兴建设有限公司网站wordpress调用好麻烦
  • 网软志成免费部队网站源码下载安装wordpress无反应
  • 网站建设 制作教程 pdf西安专业做淘宝网站的公司