GluonNLP让NPL变得更加简单

举报
Python爱好者 发表于 2021/03/09 01:17:33 2021/03/09
【摘要】 之前我们讲过NPL(自然语言处理),使用的是NLTK这样一个包,现在呢,我们又有了新的法宝----GluonNPL。在做自然语言处理上能帮我们提升不少效率。 GluonNLP提供了NLP中最先进的(SOTA)深度学习模型的实现,并为文本数据管道和模型构建块。它是为工程师,研究人员和学生设计的,以快速原型研究想法和产品基于这些模型。这个工具包提供了三个主要特性: ...

之前我们讲过NPL(自然语言处理),使用的是NLTK这样一个包,现在呢,我们又有了新的法宝----GluonNPL。在做自然语言处理上能帮我们提升不少效率。


GluonNLP提供了NLP中最先进的(SOTA)深度学习模型的实现,并为文本数据管道和模型构建块。它是为工程师,研究人员和学生设计的,以快速原型研究想法和产品基于这些模型。这个工具包提供了三个主要特性:

1、训练脚本复制SOTA结果报告在研究论文。

2、针对普通NLP任务的预训练模型。

3、精心设计的api大大降低了实现的复杂性。


安装:

pip install --pre --upgrade mxnet
pip install gluonnlp

在安装gluonnlp之前需要安装mxnet的依赖。


笔者在本地没有GPU的环境,就借用了谷歌的COLAB来试了一下。

COLAB地址:

https://colab.research.google.com/drive/1YLVDj7DLuEMjDOJI8rvi-HBveUoEbSnt#scrollTo=a5k2vooFJHKx

640?wx_fmt=png


640?wx_fmt=png


640?wx_fmt=png

安装完之后我们就可以调用啦!

我们来看一个小小的例子:

640?wx_fmt=png

比较两个单词baby和infant的相似度

640?wx_fmt=png

我们可以看到输出的对比结果为0.740


我们可以看看使用gluonnlp是如何搭建评估模型和训练模型的:

首先导入相应的包:

640?wx_fmt=png

设置一下环境:

640?wx_fmt=png

初始化参数:

640?wx_fmt=png

加载数据集,提取词汇表,对截断的BPTT进行数值化和批处理

640?wx_fmt=png

加载预定义的语言模型:

640?wx_fmt=png

640?wx_fmt=png


分离梯度:

640?wx_fmt=png

评估:

640?wx_fmt=png


训练阶段:

640?wx_fmt=png

640?wx_fmt=png


训练和评估:

640?wx_fmt=png

输出:

640?wx_fmt=png


在这个示例中,我们看到:GluonNLP Toolkit提供了高级api,可以极大地简化NLP任务建模的开发过程。低级的NLP api可以轻松定制。



如果还想了解更多,点击阅读原文吧!




640?wx_fmt=jpeg


文章来源: blog.csdn.net,作者:敲代码的灰太狼,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/tongtongjing1765/article/details/100581598

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。