基于TensorRT优化的Machine Translation
机器翻译系统用于将文本从一种语言翻译成另一种语言。递归神经网络(RNN)是机器翻译中最流行的深度学习解决方案之一。
TensorRT机器翻译示例的一些示例包括:
- Neural Machine Translation (NMT) Using A Sequence To Sequence (seq2seq) Model
- Building An RNN Network Layer By Layer
4.1. Neural Machine Translation (NMT) Using A Sequence To Sequence (seq2seq) Model
此示例sample, sampleNMT演示了使用TensorRT API基于TensorFlow seq2seq模型实现的神经机器翻译(NMT)。TensorFlow seq2seq模型是一个开源的NMT项目,它使用深层神经网络将文本从一种语言翻译成另一种语言。
What does this sample do?
具体地说,这个示例是一个端到端的示例,它采用TensorFlow模型,构建一个引擎,并使用生成的网络运行推理。该示例是模块化的,因此可以作为机器翻译应用程序的起点。 此示例使用TensorFlow NMT(seq2seq)教程提供并培训的数据来实现德语到英语的翻译。
Where is this sample located?
此示例保存在GitHub: sampleNMT存储库中的samples/opensource/sampleNMT目录下。如果使用Debian或RPM包,则示例位于/usr/src/tensorrt/samples/sampleNMT。如果使用tar或zip包,则示例位于<extracted_path>/samples/sampleNMT。
How do I get started?
有关入门的更多信息,请参见使用C++示例开始。有关此示例的详细信息,请参阅GitHub: sampleNMT/README.md文件获取有关此示例如何工作的详细信息、示例代码以及有关如何运行和验证其输出的分步说明。
4.2. Building An RNN Network Layer By Layer
这个示例sampleCharRNN使用TensorRT API逐层构建RNN网络,设置权重和输入/输出,然后执行推理。
What does this sample do?
具体地说,这个示例创建了一个CharRNN网络,它是在莎士比亚的小数据集上训练出来的。有关字符级建模的详细信息,请参见char rnn。
TensorFlow有一个有用的RNN教程,可以用来训练单词级模型。单词级模型学习所有可能单词序列的概率分布。因为我们的目标是训练一个char级别的模型,它学习一组所有可能特征的概率分布,所以需要做一些修改才能使TensorFlow样本工作。
Where is this sample located?
此示例保存在GitHub: sampleCharRNN存储库中的samples/opensource/sampleCharRNN目录下。如果使用Debian或RPM包,则示例位于
/usr/src/tensorrt/samples/sampleCharRNN。如果使用tar或zip包,则示例位于<extracted_path>/samples/sampleCharRNN。
How do I get started?
有关入门的更多信息,请参见使用C++示例开始。有关此示例的详细信息,请参阅GitHub: sampleCharRNN/README.md文件获取有关此示例如何工作的详细信息、示例代码以及有关如何运行和验证其输出的分步说明。