n-gram 分词程序

经过一个月的开发,我的N-gram程序终于可以进行分词了,虽然由于语料库太小导致统计数据不足,分词效果不是很理想,但至少我终于从零开始完成了这个程序的开发,开发了分词程序的基本模块,包括语料预处理,分解,词典管理,从语料中统计信息,分词等功能。通过开发,我终于初步明白了数据挖掘、自然语言处理、搜索技术中数据处理所面临的一些问题,也明白了自己努力的方向。在大语料方面,我自己开发了一个小方案,但效率却比较低。
春节,也许还会有新的进展,特别是大语料的处理还需要进一步优化。

 

2010-10-18:今天找出了以前的代码,上传到了 http://idocbox.googlecode.com/files/xSpliter-0.1.zip 供大家了解一些简单的原理。 注意,我的代码是5年前写的,现在看,这个代码有很多问题的。所以,大家就当我献丑了,仅仅学习下就可以。

        用法:下载完了,把代码解压后的工程导入到eclipse, 通过执行里面的单元测试来了解统计、建统计词典、分词的过程。 

 

      有问题欢迎交流,如果我有时间,我会写一个分布式、更加智能、灵活、高效的算法实现给大家的。

作者:豆博草堂

n-gram 分词程序》有16个想法

    1. space 文章作者

      呵呵,我只对是这方面感兴趣:)不是专家了。不过可以推荐你看看 《统计自然语言处理基础》

      回复
  1. linyuanju

    你好,打扰了。想跟你请教一下如何开始实验的部分,我看了一些理论,但总感觉有点空,想要编程实现又没有基础。请问仿真语言用的是什么?有哪些资料可以学习?语料库的问题怎么解决?期待你的回复。谢谢!

    回复
      1. linyuanju

        谢谢你的回复。我是用于自己学习的,想写点语音识别语言模型的论文,可是苦于不会做实验,程序写不出来。冒昧的问下,可不可以学习下你的语言模型的程序。这样的要求有点唐突,但请你见谅,我实在是也没别人可以求助。给你添麻烦了,万分抱歉。不管如何,谢谢你提供的资料

        回复
        1. neuron

          我看到你的留言之后在我电脑上找了很久,但就是没有找到这个算法的代码。因为这个代码是三年多之前写的,很久再没有开发。我再找找看。
          不过,N-Gram算法处理思路应该都相通的。比如2-Gram就是对连续的单词进行统计,而语音应该是对连续的
          两个音节进行处理。所以你可能需要语音模型,找到算法可以对语音信号进行分析,找到切分点,然后再进行2-gram统计.具体统计方案其实就是用字典数据结构来记录次数了。如果数据量大,就需要统计一段之后将数据记录到文件中,
          最后不断合并统计结果的。建议对于语音识别可以看看 http://www.pris.net.cn/field/voice
          还有就是请教 李开复老师 (微薄:http://weibo.com/kaifulee)
          我对这些只是非常感兴趣,以前学习过一些,并不是了解太多细节。有编程问题可以和我讨论。
          建议关注我的微薄 http://weibo.com/wiseneuron 留言

          回复
  2. 小林

    你好,我想了解一下n-gram的数据结构,希望你能给推荐相关的书籍或者论文,非常感谢!

    回复
  3. xiao yu

    您好!很想学习语言处理方面的知识,想学习下ngram具体实现的代码,不知道可不可以给我发一份,我的邮箱地址yu21333@126.com. 谢谢!

    回复

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

请拖动滑块 *