自然语言处理在现实生活中运用概念.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
自然语言处理在现实生活中运用 1 需求分析与描述: 首先谈下这款软件的来源和用途吧,本科至今没有挂科记录,很不幸第一次《英语学位英语考试GET》挂科了。于是,笔者开始疯狂的做题和背单词,对于GET真题很多单词不认识,抱着有道词典,逐字翻译耗时耗力。再说历来10余年试题考试单词范围是一定的,把出现频率高的单词,所谓核心单词掌握了不就事倍功半了?问题来了,不像四六级词汇或者考研词汇市场有专门卖的。当时就开始设想,如果我收集10余年真题,然后去除所有非单词结构(真题算是结构化数据,有一定规则,比较容易处理。此过程其实就是数据清洗过程)最后把所有单词集中汇总,再去除如:a/an/of/on/frist等停用词(中文文本处理也需要对停用词处理,诸如:的,地,是等)。处理好的单词进行去重和词频统计,最后再利用网络工具对英语翻译。然后根据词频排序。 基于以上思路,结合笔者前不久对数据挖掘中分类实现的经验和暑假学习的统计学知识最终上周末(10.31—11.1)花了2天时间搞定,这些自然语言处理的基础方法在分类,聚类等数据挖掘和本体领域构建中都有使用。最后我将其核心方法进行梳理,下面咱们具体展开。 2 自然语言处理结果预览: 前面提到本算法是对自然语言中常规英文试卷的处理,那么开始收集原始数据吧。 1 历年(2002—2010年)GET考试真题,文档格式不一,包括txt/pdf/word等如下图: 2 对所有格式不一的文档进行统计处理成txt文档,格式化(去除汉字/标点/空格等非英文单词)和去除停用词(去除891个停用词)处理后结果如下:【17套试卷原始单词(含重复)82158个,数据清洗处理后32011个】 3 对清洗后的单词进行去重和词频统计:【去重后7895个单词尺寸】 4 显示这10余年考试的词汇量还是很大的,加上停用词,考查词汇量在9000左右,那么常考的应该没那么多。试想下17套试卷中,去除停用词后出现频率大于5的和小于25次【1674个单词】的数据应该是合理的,那么我就指定阈值提取。 5 最后一步,中英文翻译(目前通过google工具快速查询,然后合并)。最终效果如下:(处理的最终txt结果和自己word整理的结果) 3 算法思想和解决方案: 算法思想: 1历年(2002—2010年)GET考试真题,文档格式不一。网上收集 2 对所有格式不一的文档进行统计处理成txt文档,格式化(去除汉字/标点/空格等非英文单词)和去除停用词(去除891个停用词)处理。 利用正则表达式去除非英文单词的字符,通过规则的空格分离,停用词表网上一大堆,通过将其与单词比对,不在停用词表的追加存储 3 对清洗后的单词进行去重和词频统计 通过Map统计词频,实体存储:单词-词频。(数组也可以,只是面对特别大的数据,数组存在越界问题)。排序:根据词频或者字母 4 提取核心词汇,大于5的和小于25次的数据,可以自己制定阈值。 遍历list实体列表时候,通过获取实体的词频属性控制选取词汇表尺寸。 5 最后一步,中英文翻译。 将批量单词通过google翻译,可以获取常用意思,对于发音,词义,词性等没有处理。这里也是可以改进地方,其实也很简单,后面详解,最后自己讲结果在word里面排版。 4 Java语言对需求实现详解: 1 文件保存路径定义 复制代码 public static final String stopWordTable =./getFile/partStopWord.txt; //停用词词表文件地址 public static final String srcfilepath=./srcFile; //待处理的源文件地址 public static final String stopfilepath=./getFile/temp.txt; //待处理的源文件地址 public static final String tarfilepath=./getFile/getcoreword.txt; //源文件和目标文件地址 复制代码 2 对原始文件数据清理以及停用词处理 复制代码 //对文本文件预处理 public static void dataCleanFile(String srcfilepath,String stopfilepath){ String reg = [^a-zA-Z]; //去除噪音,获取英文单词开始的内容 String sb=CommontMethod.re

文档评论(0)

502992 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档