如何统计一份英文 API 开发文档(如 javadoc文档)的词频?

发布于 2022-09-05 03:32:11 字数 962 浏览 19 评论 0

如题,简单一点的功能是如何对一份英文 API 开发文档进行词频的统计?(文档可能是多个 html 文件,也可能是 chm 文件,不是简单的 txt 文本);

复杂一点的需求是,因为开发文档涉及很多类名、函数或方法名等,单词可能会连在一起,统计时最好能够分开(这个可以根据命名规则来分开)

再复杂一点的需求是,因为单纯统计一个文档的词频没多大的实际意义,如何将统计后的单词再加工处理:

  • 剔除掉一些简单的,并对开发来说没多大意义的单词,如 the, are, to, is……

  • 分析出里面涉及到计算机的专业名词、编程中特定含义的单词或编程语言的关键字(涉及到文档对应的不同语言);

  • 对最终分析出的单词标注出解释(中文,可以通过第三方 API)……

如果开发具有以上功能的软件,具体需要涉及哪些技术? 欢迎提供你的想法……

呃,其实我的痛点是,看一份英文文档时,有太多不懂的单词,经常要去查单词,效率太低了,如果有一个工具可以统计分析出一份文档的词汇,就可以在看文档前先大致熟悉词汇的意思,提高效率;而且对于开发时,命名也有帮助……

修改备注:

  • 分开连在一起的单词确实不是分词技术,之前说错了;

  • 原问题提到的运用机器学习,我的想法是这样的:一个具有机器学习的软件大量阅读编程的开发文档,找出里面的专业术语,使整个功能的实现更加智能化……当然这是我瞎想的,不一定对,不喜勿喷;

  • 最后,我提到的看英文文档的问题,谁都有刚开始看不懂,效率低的阶段,谁不知道多看,效率就会慢慢提高?道理大家都懂……但是,这个不是我们讨论的重点,我只是有这么个想法,提出来让大家讨论下而已

另外,提的问题如果有错,可以留言,我会修改,能不踩吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

恍梦境° 2022-09-12 03:32:11

准备考研,很久没写过代码了,不过大概思路应该是:

  1. 清洗过滤:对于html,首先把内容过滤出来,你可以自己写正则或者用找点别人写好的

  2. 单词分词:先用空格等常见的分隔符对单词过滤,再根据不同的语言命名规范找出一个个的单词

  3. 过滤常用词:在网上应该可以找到英语常用词的文件,匹配一下

  4. WordCount:可以直接单纯的用python自己实现MapReduce的过滤,或者Hadoop、Spark之类的也可以

到此为止就完成了过滤简单词的单词统计了
关于统计出计算机相关词,你需要网上下载计算机相关词汇的数据文件,直接匹配即可
需要给出解释的话,调用有道、百度翻译的api即可,不过这些API可能有次数上限,我没有用过。

以上所说步骤都没有考虑效率的问题,如果需要考虑效率问题,还需要使用到些算法或直接使用别人写好的类库。
关于你所说到的机器学习,这里的需求暂时不需要、且没必要使用到。

最后:我还是想说,想读懂文档的最快的办法就是多读文档,坚持读下来,你会发现读文档的速度会越来越快。不过把这个当作练手的项目,也算是做了点有意思的事情。


关于问题修改后的回复:
你提及的机器学习,目前大体上是有监督式和非监督式,但根据你的提及:

一个具有机器学习的软件大量阅读编程的开发文档,找出里面的专业术语,使整个功能的实现更加智能化……

  1. 如果采用监督式学习那必然需要语料数据的支持,而如果已经有语料数据何不直接用字符串匹配实现?

  2. 当采用非监督式学习,目前我也是初学,依我的理解,似乎只能达到聚类的效果,若想自动识别是计算机术语,必然还是需要人工标注或者数据的支持

  3. 如果再往下深究,就需要好好研究NLP了

我觉得你好像是对机器学习感兴趣,但我感觉这个并不是机器学习练手的一个好项目。

简美 2022-09-12 03:32:11

这个应该不叫英语分词,分词应该指按句子成分划分。连在一次的变量名可以考虑按常见的命名方式识别,比如大小写的Camel-Case、下划线分割的 Underscores 等。

分词可以找各种 Word Splitting 库,python 应该有很多。计算机的专业名词下载词库,单词提取出来之后跟词库匹配得到释义。

但其实即使做出来也不一定能更方便阅读,光看单词有点曲线救国的感觉,很可能根本看不进去。计算机文章的词汇量不是很多,一回生两回熟,优化查词体验比较妥,推荐 collins双解 结合 Macmillan ,MDict 或者欧路词典都可以加载。Chrome 也可以装 Saladict 沙拉查词。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文