BLKSerene / Wordless

An Integrated Corpus Tool With Multilingual Support for the Study of Language, Literature, and Translation
GNU General Public License v3.0
686 stars 90 forks source link

如何使用本软件计算中英文文本的信息密度? #7

Closed daviddalao closed 5 years ago

daviddalao commented 5 years ago

这个软件功能强大,解决了语言研究者不会编程之苦!太帅了。请问有没有考虑加入统计中英文文本实词和虚词数量以及计算二者之间比率的功能?需要使用这个来计算文本的信息密度。

BLKSerene commented 5 years ago

您是指 lexical density 吗?以后会考虑添加 只不过有几个技术上的问题 1 是要判断某词是“实词”还是“虚词” 肯定要先对所有词汇就行词性标注 所以需要对应语种的POS tagger 支持 或者用户自行提供已经打好标签的文件 2 是不同的 tagger 的标签集都不一样 设置里为了方便到universal tagset 的映射是提供了参考表的 而“实词”和“虚词”的概念没有既定标准 边界也比较模糊 那么还需要另外一张表让用户自行指定哪些算“实词”哪些算“虚词”

daviddalao commented 5 years ago

谢谢回复!我是技术小白,感觉如果能够按照第二种方案让用户根据需要自行指定实词和虚词列表,会更实用一些,也能够方便跨语对比。

daviddalao commented 5 years ago

您是指 lexical density 吗?以后会考虑添加 只不过有几个技术上的问题 1 是要判断某词是“实词”还是“虚词” 肯定要先对所有词汇就行词性标注 所以需要对应语种的POS tagger 支持 或者用户自行提供已经打好标签的文件 2 是不同的 tagger 的标签集都不一样 设置里为了方便到universal tagset 的映射是提供了参考表的 而“实词”和“虚词”的概念没有既定标准 边界也比较模糊 那么还需要另外一张表让用户自行指定哪些算“实词”哪些算“虚词”

也不只是为了计算词汇密度了,使用者也可能需要计算某(几)种词性(比如代词或连词)在整个文本或整个语料库中的比率,至少在比较原创文本与翻译文本宏观语言特征的时候是需要的。

BLKSerene commented 5 years ago

如果是需要计算某个/几种词性所占的比率的话 如果语料库已经pos-tag过 则 wordlist 模块中右边 token settings 里勾选 Use tags only 这样就能所示所有标签频数及其百分比 几种词性的话自己加一下就行 如果语料库没有词性标签 可以在菜单 Preferences -> Settings -> POS Tagging -> Preview 用预览功能POS tag 一下 结果自行复制出来 然后再导入文件 按上面操作 无法自动得出 lexical density 主要是如果是用户自行POS tag的语料库 根本无从得知哪几个标签算实词 哪几个标签算虚词(不同语言不同标注方法用的标签集的定义都不同 更何况还有用户自行定义标签的情况)

daviddalao commented 5 years ago

谢谢回复。按照你的提示尝试了下,发现使用treetagger赋码之后的文件生成的词表不完整。如果使用preview考出来的文件,软件提示编码错误,加载文件失败,更改设置也不行。

daviddalao commented 5 years ago

Governing a Big Country Is as Delicate as Frying a Small Fish(treetagged).txt “Governing a Big Country Is as Delicate as Frying a Small Fish” (preview tagged).txt

BLKSerene commented 5 years ago

看了下编码可能是Windows-1252 (最下面那个) Windows上的记事本编码问题比较多 处理文本时建议使用专业的文本编辑器如 EmEditor Sumblime Text 等保存时设置用 UTF-8 Without BOM (无签名/BOM 的 UTF-8)为编码保存 可以规避很多编码问题