首页 自然语言导论分词程序报告

自然语言导论分词程序报告

举报
开通vip

自然语言导论分词程序报告自然语言导论分词程序报告目录目录2实验题目3实验环境3程序流程图3...实验原理4数据结构5使用截图7性能测试8存在的问题及改进方案9...实验总结9实验题目:设计一个分词程序,并能够利用所提供的字典对一篇文章进行分词。实验环境:WINDOWSVISTADEV-C++程序流程图:4.实验原理:最大匹配算法:首先准备一个分词词表,顺序扫描待分词的句子,将句中候选词按照词长从大到小的顺序依次跟词表中的词进行匹配,匹配成功即作为一个词输出。这样就使得每次输出的词是长度最大的(相比已知的确定的词表而言)。如果一个句中的多字...

自然语言导论分词程序报告
自然语言导论分词程序 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 目录目录2实验题目3实验环境3程序流程图3...实验原理4数据结构5使用截图7性能测试8存在的问题及改进 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 9...实验 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 9实验题目: 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 一个分词程序,并能够利用所提供的字典对一篇文章进行分词。实验环境:WINDOWSVISTADEV-C++程序流程图:4.实验原理:最大匹配算法:首先准备一个分词词表,顺序扫描待分词的句子,将句中候选词按照词长从大到小的顺序依次跟词表中的词进行匹配,匹配成功即作为一个词输出。这样就使得每次输出的词是长度最大的(相比已知的确定的词表而言)。如果一个句中的多字候选词跟词表中所有的词都匹配不上,就只能把单字词当作分词结果输出了。采用双向最大匹配算法将会提高分词的正确性。5.数据结构:用于存储字典的几个数组,分别存储4字节、3字节、2字节、1字节的字词和英文标点、数字和字母,这样限制了最大字词数量,超出会产生错误,但是获得了更快速的查找和排序。charwords4[1000000][9];charwords3[1000000][7];charwords2[1000000][5];charwords1[1000000][3];charwords[1000000][2];根据字典中不同长度的单词分别存储到相应的数组中:switch(len){case8:strcpy(words4[x4],word);x4++;break;case6:strcpy(words3[x3],word);x3++;break;case4:strcpy(words2[x2],word);x2++;break;case2:strcpy(words1[x1],word);x1++;break;case1:strcpy(words[x],word);x++;break;}对每个字典的数组进行冒泡排序为二分查找作准备,二分查找可以减少查询时间,提高分词效率,如果词典已经排序完毕,将会大大减少总用时:for(i=0;i0){strcpy(viaword4,words4[j]);strcpy(words4[j],words4[j+1]);strcpy(words4[j+1],viaword4);对源文件进行分词处理的格式如下,每次读入5字节数据并进行词语的查询,找到对应单词便可以输出并增加空格,之后更改文件指针重新读数据到缓冲区,如此循环直到源文件处理结束。while(!feof(sourcefile)){fgets(buffer,10,sourcefile);//每次读入5字节数据if(feof(sourcefile))break;//根据缓冲区的值进行分词操作}6.使用截图程序界面:C:\Users\lenovo\De$ktop\目然逕言分富07405-071027佟佳育.exe载入字曲请输A字典名称"a-txt>die.txt莘典識入完毕宇典排序中,这个过程大概需埶分钟砌决于字典夫小片请稍后…字亜排岸完成请输入待呑词文件名称龙注蕭文件要在本文件夹中砒上E慷文件打幵成功■11■—12__—J.I—abc.txtR音按任意犍继续…生成文件M'esull.txt打开成功面词进行中,请稍后…分词结束”请检查result-txt未分词文档:文件呵召茁⑹ffiitfOlSftfiiH)--JJPS8.査a盍iu者Im4T■丈DFg亠悔Q秒9市-1'护Lnu-.r畧§§,.貝xKJlsi>.SKJi&m来身“面一巨潍鱼厂畫卒:匡WWSUb宀宙方;&up-i冋荊中ii»日难一tg^J因“s卑寤世小血卷..展-IW•.盍nrtJV。平的sis§界门7®。榕9遠STp.EKi电堂靠".i厂§5SSS^貞保IT隽V矗国人函陪餐力项$n,在五.胃,左中趟赛台±i〔屯年^^08^!陆世-.K.吕.5K.K,si-5s虽,星实一一同甫苫^A1■.蜒.善申普疋邓、^s备*生L-¥5国、察应疋,器催+^&Tf垄殳犀希旁EL>Z/AHUM^OulenLl-^^ffii^s-ARa制、-tw、=h^eee^^8k普的...为口一•门丘=呂nnr■_8Msi‘JL置」u一费亠禅丰--2^19帛kl司在1卑良3^+?+—Li::…養药I養當-辔石圭HLAU5S分词后如下:resuh.M记李本丈削幷箱丢.E)览式〔口〕匠wwantHi世新的空希•充年89g表S民江Is主A1需'曲扣hit^-J3-:。经的#43+科就J1"■•!.禺-囲芝注女•的新在1^.丿叙连.Hn'L到正年嚼寳%来書解髻凡:项沖S.:B.S^J-£靑。要履华方咲1_一^^匚平曹0系^3^71书/"*的---,1^対,+Bfls-fef¥笄0-&A旧1ffl丰一年」7•性能测试:本程序在导入本字典dic.txt(大小817K)并将字典排序本机用时约1分钟,如不需要对字典进行排序操作则仅需1秒钟,对文档abc.txt(大小3.54M)进行分词用时约30秒,分词准确率接近于80%,仍可以提高8.存在的问题及改进方案:导入字典采用的是冒泡排序,速度慢,可以考虑更改为快速排序等其他更快的排序方法来对字典内的词语进行排序,以便用来二分查找词语。对于已经排好的字典,不进行排序将会大大减少用时。二分查找方法可以有效的减少查找单词的时间。仅仅采用了正向最大匹配算法,没有采用双向匹配导致正确率不高,可以继续深入更改为双向匹配算法以提高正确率。使用的字典为817K这个字典包含的单词并不全,所以可能导致分词正确率不高,但是,使用更大的字典将耗费更大的存储空间,处理速度也会变慢,如何在这两者之间寻找一个平衡点很重要。存储字典应用的是几个数组,这样会限制最大词数,太大字典会导致错误,但是数组在排序和查找方面有优势,可以提高整体速度。9.实验总结:本次编程运用到大量的文件读写和排序查找方面的算法问题,难度较大,在文件读写和排序方面也遇到一些问题,比如如何判断文件中的换行和结束,二分查找过程中的比较和替换等等,最终完成的程序并不十分完美,和其他同学的程序有所差距,不过能够完成这个分词程序提高了我的编程水平,通过一学期自然语言的学习和亲自完成分词程序也让我对自然语言科学产生了兴趣,这也是我选择这门课的最大收获。
本文档为【自然语言导论分词程序报告】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_113440
暂无简介~
格式:doc
大小:257KB
软件:Word
页数:0
分类:
上传时间:2019-07-18
浏览量:0