Python 3.1 通过百度transformer_zh-en翻译

Python 3.1 通过百度transformer_zh-en翻译

提示:当前模型来源基于百度PaddlePaddle

模型介绍

2017 年,Google机器翻译团队在其发表的论文Attention Is All You Need中,提出了用于完成机器翻译(Machine Translation)等序列到序列(Seq2Seq)学习任务的一种全新网络结构——Transformer。Tranformer网络完全使用注意力(Attention)机制来实现序列到序列的建模,并且取得了很好的效果。
transformer_zh-en包含6层的transformer结构,头数为8,隐藏层参数为512,参数量为64M。该模型在CWMT2021的数据集进行了预训练,加载后可直接用于预测, 提供了中文翻译为英文的能力。


目录

  • Python 3.1 通过百度transformer_zh-en翻译
  • 模型介绍
  • 前言
  • 一、环境依赖安装
  • 二、对应翻译部分的业务实现
    • 1.引入库
  • 总结


前言

随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文内容是通过百度PaddlePaddle模型实现中文转英文翻译的实验。


一、环境依赖安装

基础依赖安装:

pip install paddlepaddle
pip install paddlehub
hub install transformer_zh-en

二、对应翻译部分的业务实现

1.引入库

引入对应依赖包:

import paddlehub as hub

加载模型:

# 加载模型
model = hub.Module(name='transformer_zh-en', beam_size=5)

待翻译文本内容:

# 待翻译文本内容
src_texts = [
    '中华人民共和国成立于1949年',
]
# 每句返回多少句翻译
n_best = 5
# 执行翻译,返回结果
trg_texts = model.predict(src_texts, n_best=n_best)
# 打印结果
for idx, st in enumerate(src_texts):
    print('-'*30)
    print(f'src: {st}')
    for i in range(n_best):
        print(f'trg[{i+1}]: {trg_texts[idx*n_best+i]}')    

总结

百度翻译总的来说,效果还是不错的。

参考地址:GitEE

你可能感兴趣的:(python,python,百度,transformer)