小白使用百度 NLP 实现语料库 TTR 统计

本文介绍了一位文科生如何使用Python和百度NLP服务计算语料库的TTR(Type Token Ratio)。通过简化的步骤,包括设置环境、获取百度云的APP_ID,读取和处理文本,调用NLP接口进行分词,最终计算TTR。文中提到了在处理过程中遇到的问题和解决方案,并展示了完整代码。

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

本人是一个文科生,本科学英语,硕士学翻译。学院里都流行的是语言学研究,我个人更喜欢的是计算语言学,看了几本书和论文之后就对计算语言学和语料库语言学深感兴趣。奈何读书那会对这些技术一窍不通,代码也看不进去,工作几年后还是对这方面感兴趣,就从10月份开始学python,做了个基础的入门,然后开始挑选适合自己的NLP技术方案。

对于技术小白来说,能少写代码就少写代码,越简单越好,因为我只是奔着一个目的来的:输入文本,处理文本,返回处理后的数据。即可。

这次我要实现的是语料库语言学研究中的TTR(Type Token Ratio)的统计,它表示的是一个文本中相同的词和所有词之间的比例关系。

举个例子:

CIPS-SIGHAN CLP 2010(国家自然科学基金(基金号:90920004))中,TTR在不同类型的文体中有着不一样的数据(下图),若以其中“文学”的数据为基准,其他作者的文本的TTR超过这个基准数据,那意味着作者在写作的时候用词丰富性不够、重复内容较多、语言较通俗易懂等,低于这个基准数据,则意味着作者用了一些生僻的词语、用词丰富性很高等。

这仅仅是语言学进行分析时的一个指标,还有很多很多其他的。这里只讨论如何用python+百度NLP去实现TTR。

本人半路出家写代码,肯定有各种各样的问题,还请各路大神出来指点,写出来的代码能运行不报错,就ok了。

为何选百度

为什么选百度?

同时留下了没有技术和没有金钱的泪水……

精挑细选(数个小时的尝试),阿里云的NLP,10万次要270块钱,腾讯文智5万次免费,百度云免费用QPS = 5 (Query Per Second,每秒请求次数(这个我当时还不知道啥意思,当超了的时候才明白是一秒只能请求多少次))。

阿里云的基础版说是有每日5万次免费额度,但是没找到在哪。文智的api和sdk,卡在了签名鉴权上,放弃。

最后只能选择百度,而且现在只写百度,以后等我学会了其他的, 我再把另外两家补上。

对于小白来说,除了python本身的一些代码我不需要查之外,剩下的都得慢慢学慢慢查,变学变进步吧!所以,技术文档的详细程度也决定我的动手能力和成果。

NLP号,启动!


(插一句,妈耶,掘金上传图片的背景颜色还会忽闪忽闪的)

环境:python 3.7,baidu-aip 模块,vscode+jupyter notebook(比心)

在shell里输入,然后等待安装完成

pip install baidu-aip复制代码

提示success之后,务必命令行里输入python,进入python后

import aip
复制代码

确认不会报错,就可以启动了!

wait,钥匙没插进去呢

在启动之前,需要去百度云控制面板获取开启本服务的APP_ID


点击左侧的应用列表,创建应用


自然语言处理无法勾选,怎么回事,哦原来是默认全选的,这些足够了,写好名称和描述(随意),立即创建,拿到发动机钥匙了!

留好,下面会用到

程序设计思路

  1. python读取文档内容,写入变量
  2. 对内容进行简单处理(去除前后空格)
  3. 送入百度NLP去处理
  4. 返回数据后提取相关数据,计算TTR

差不多就是这么个顺序,发动机,打火,启动!


好,让我们来处理一下这首朱自清的现代诗《赠友》

你的手像火把,
你的眼像波涛,
你的言语如石头,
怎能使我忘记呢?
你飞渡洞庭湖,
你飞渡扬子江;
你要建红色的天国在地上!
地上是荆棘呀,
地上是狐兔呀,
地上是行尸呀;
你将为一把快刀,
披荆斩棘的快刀!
你将为一声狮子吼,
狐兔们披靡奔走!
你将为春雷一震,
让行尸们惊醒!
我爱看你的骑马,
在尘土里驰骋---
一会儿, 不见踪影!
我爱看你的手杖,
那铁的铁
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值