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

小白的进阶之路系列之十七----人工智能从初步到精通pytorch综合运用的讲解第十部分

NLP 从零开始:使用字符级 RNN 生成姓名

这是我们“NLP 从零开始”系列三部分教程中的第二部分。在第一个教程中,我们使用了 RNN 将姓名分类到其语言来源。这次我们将反过来,从语言生成姓名。

> python sample.py Russian RUS
Rovakov
Uantov
Shavakov> python sample.py German GER
Gerren
Ereng
Rosher> python sample.py Spanish SPA
Salla
Parer
Allan> python sample.py Chinese CHI
Chan
Hang
Iun

我们仍然手工构建了一个带有几个线性层的小型 RNN。主要区别在于,我们不再是在读取所有字母后预测类别,而是输入一个类别并一次输出一个字母。循环预测字符以形成语言(这也可以使用单词或其他更高阶的结构来完成)通常被称为“语言模型”。

推荐阅读

我假设您至少已安装 PyTorch,了解 Python,并理解张量 (Tensors)

  • https://pytorch.ac.cn/ 安装说明
  • 使用 PyTorch 进行深度学习:60 分钟速成 了解 PyTorch 的基本用法
  • 通过示例学习 PyTorch 获取广泛而深入的概览
  • PyTorch for Former Torch Users 如果您是 Lua Torch 用户

了解 RNN 及其工作原理也会有所帮助

  • 循环神经网络的惊人有效性 展示了许多实际示例
  • 理解 LSTM 网络 专门介绍了 LSTM,但对于理解 RNN 总体上也有帮助

我还建议阅读前一个教程:NLP 从零开始:使用字符级 RNN 对姓名进行分类

准备数据

注意

从这里下载数据并将其解压到当前目录。

有关此过程的更多详细信息,请参见上一个教程。简而言之,有许多纯文本文件 data/names/[Language].txt,每行一个姓名。我们将行拆分成数组,将 Unicode 转换为 ASCII,最终得到一个字典 {语言: [姓名 ...]}

from io import open
import glob
import os
import unicodedata
import stringall_letters = string.ascii_letters + " .,;'-"
n_letters = len(all_letters) + 1 # Plus EOS markerdef findFiles(path): return glob.glob(path)# Turn a Unicode string to plain ASCII, thanks to https://stackoverflow.com/a/518232/2809427
def unicodeToAscii(s):return ''.join(c for c in unicodedata.normalize('NFD', s)if unicodedata.category(c) != 'Mn'and c in all_letters)# Read a fil

相关文章:

  • 【unitrix】 3.4 类型级逻辑运算(bit.rs)
  • 【Docker】docker-compose中的nginx为何突然访问不到服务了?
  • 【CS创世SD NAND征文】STM32户外无线终端管理设备的数据存储方案
  • 拼多多消息对接、支付服务策略(策略+工厂)
  • supervisor /usr/bin/dotnet: cannot execute binary file
  • cili3d笔记20 正交投影3d重建笔记1
  • GoFrame的Gtoken--基于电商项目以及GPT-o3的辅助解惑
  • 如何轻松地将联系人从 iPhone 转移到 iPhone?
  • window显示驱动开发—输出合并器阶段
  • django FileSystemStorage is located outside of the base path component
  • 【前端隐蔽 Bug 深度剖析:SVG 组件复用中的 ID 冲突陷阱】
  • QT的一些介绍
  • Pinia在多步骤表单中的实践应用
  • DDoS防护体系构建——从基础限速到智能调度
  • C++容器之 forward_list (单向链表)使用说明
  • 层级冲突的处理,弹窗生成遮罩问题
  • http通信测试,模拟客户端
  • 力扣-169.多数元素
  • 三种经典算法无人机三维路径规划对比(SMA、HHO、GWO三种算法),Matlab代码实现
  • 医学图像处理期末复习
  • 新疆建设云网站/寻找客户资源的网站
  • 网站域名费用怎么做分录/优化网站seo公司
  • 中介网站怎么做/高端网站建设哪个好
  • 专业网站设计制合肥作/app下载推广
  • 网站用户体现好坏/网站推广推广
  • 济南制作网站的公司吗/今天最火的新闻头条