【论文笔记】neural machine translation by jointly learning to align and translate

本文介绍了一种将Attention机制应用于机器翻译的方法。该方法解决了传统seq2seq模型处理长文本时信息丢失的问题,通过为输入文本的不同部分分配不同权重,提高了信息编码效率。详细讨论了编码及解码过程,并展示了如何生成定制化的context vector。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

论文链接

   这篇文章是将attention机制应用于机器翻译上,普通的seq2seq模型要将输入文本的信息编码至固定长度的隐向量中,当面对长文本时会损失许多信息,那么就要利用attention对输入文本的不同片段根据其重要程度分配不同的权重,使得信息被更有效地编码。

   编码过程即将输入序列输入RNN,得到各时间步的RNN隐向量。

   解码过程根据context vector ci、上一时间步的输出yi-1和当前的RNN隐向量si计算得到当前时间步的输出概率分布,g为非线性函数。


si由下式计算而得:


普通seq2seq使用固定的context vector ci,而attention seq2seq的context vector由如下过程生成:

   a为匹配度计算函数,文章中a函数使用了一个感知机来训练得到,其参数会在训练过程中通过BP算法得到更新,si-1为上一时间步的隐状态,hj为输入序列中的单词。


   计算得到各个单词的attention值eij后,使用softmax将其归一化,得到每个单词相对于翻译过程当前时间步的重要程度即权重αij。


   最终根据这些权重,新的context vector由输入序列各时间步的隐向量的attention加权和来表示,这样在解码的每一个时间步,都可以使用一个专属定制的context vector,无需把所有信息都考虑进去,只需考虑对当前解码更重要的context部分。


整个解码流程如下图所示:




### 中国国标 GB/T 7714 参考文献格式规范 中国国家标准 GB/T 7714-2015 是针对参考文献著录的权威规范,适用于各类学术出版物。此标准规定了参考文献的编排方式、标注方法以及具体格式要求[^1]。 #### 基本格式要求 按照 GB/T 7714 的规定,参考文献应按文中引用次序排列,并采用阿拉伯数字加方括号的形式表示。以下是不同类型文献的具体格式: 1. **期刊文章** ``` [序号]作者. 题名[J]. 刊名, 年份, 卷(期): 起止页码. ``` 示例: ```plaintext [1]李四. 数据挖掘技术及其应用研究[J]. 计算机科学, 2020, 47(8): 123-129. ``` 2. **书籍** ``` [序号]作者. 书名[M]. 版本(第1版不标注). 出版地: 出版社, 出版年: 起止页码. ``` 示例: ```plaintext [2]王五. Python编程基础[M]. 北京: 清华大学出版社, 2019: 56-67. ``` 3. **学位论文** ``` [序号]作者. 题目[D]. 学校所在地: 授予单位, 年份. ``` 示例: ```plaintext [3]张三. 大数据环境下隐私保护机制的研究[D]. 上海: 复旦大学, 2021. ``` 4. **会议论文** ``` [序号]作者. 题名[C]//会议名称. 出版地: 出版者, 出版年: 起止页码. ``` 示例: ```plaintext [4]刘六. 新一代人工智能发展趋势[C]//国际人工智能大会. 杭州: 浙江科学技术出版社, 2022: 89-95. ``` 5. **电子资源** ``` [序号]主要责任者. 题名[EB/OL]. (发表日期)[引用日期]. 获取路径或URL地址. ``` 示例: ```plaintext [5]赵七. 开源软件的发展现状与未来趋势[EB/OL]. (2023-01-15)[2023-03-01]. https://www.example.com/article.html. ``` #### 使用工具实现自动排版 为了更高效地完成参考文献的格式化工作,可以利用专业的文献管理工具,例如 EndNote 或 Zotero。这些工具有助于快速生成符合 GB/T 7714 标准的参考文献列表[^2][^3]。 以下是一个简单的示例代码片段,展示如何通过脚本处理参考文献并将其转换为指定格式(假设输入为 JSON 格式的原始数据): ```python import json def format_reference(item): """根据 GB/T 7714 格式化单条参考文献""" if item["type"] == "journal": return f"[{item['id']}] {item['author']}. {item['title']}[J]. {item['journal']}, {item['year']}, {item['volume']}({item['issue']}): {item['pages']}." elif item["type"] == "book": edition = "" if not item.get("edition") or int(item["edition"]) == 1 else f"{item['edition']}版." return f"[{item['id']}] {item['author']}. {item['title']}[M]. {edition} {item['publisher_location']}: {item['publisher']}, {item['year']}: {item['pages']}." # 添加更多类型的格式化逻辑... # 输入示例 data = [ {"id": 1, "type": "journal", "author": "李四", "title": "数据挖掘技术及其应用研究", "journal": "计算机科学", "year": 2020, "volume": 47, "issue": 8, "pages": "123-129"}, {"id": 2, "type": "book", "author": "王五", "title": "Python编程基础", "publisher_location": "北京", "publisher": "清华大学出版社", "year": 2019, "pages": "56-67"} ] formatted_references = "\n".join(format_reference(i) for i in data) print(formatted_references) ``` 运行以上代码后,输出如下: ```plaintext [1] 李四. 数据挖掘技术及其应用研究[J]. 计算机科学, 2020, 47(8): 123-129. [2] 王五. Python编程基础[M]. 北京: 清华大学出版社, 2019: 56-67. ``` #### 注意事项 在实际操作中需要注意以下几点: - 如果存在多位作者,则需遵循“姓前名后”的原则,并用逗号分隔。 - 当作者超过三位时,可用“等”代替后续作者名单[^3]。 - 对于外文文献,“et al.”用于替代多余作者的名字。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值