棗品質(zhì)決策系統(tǒng)-對(duì)棗信息進(jìn)行分詞預(yù)處理_第1頁(yè)
棗品質(zhì)決策系統(tǒng)-對(duì)棗信息進(jìn)行分詞預(yù)處理_第2頁(yè)
棗品質(zhì)決策系統(tǒng)-對(duì)棗信息進(jìn)行分詞預(yù)處理_第3頁(yè)
棗品質(zhì)決策系統(tǒng)-對(duì)棗信息進(jìn)行分詞預(yù)處理_第4頁(yè)
棗品質(zhì)決策系統(tǒng)-對(duì)棗信息進(jìn)行分詞預(yù)處理_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本科畢業(yè)設(shè)計(jì) 題目:棗品質(zhì)決策系統(tǒng)對(duì)棗信息進(jìn)行分詞預(yù)處理 學(xué)院: 專(zhuān)業(yè)班級(jí): 學(xué)號(hào):學(xué)生姓名:指導(dǎo)教師(職稱(chēng)):年月日摘要棗因其營(yíng)養(yǎng)價(jià)值高,易種植,耐存活且在不同地域擁有不同特色而成為許多地方特別是山區(qū)高原致富之道,但由于技術(shù)方面的欠缺使得果農(nóng)無(wú)法用專(zhuān)業(yè)知識(shí)去評(píng)估自己手中果實(shí)的品質(zhì)和正確價(jià)值導(dǎo)向,由此帶來(lái)一系列問(wèn)題,信息消息的滯后導(dǎo)致農(nóng)戶(hù)盲目種植,產(chǎn)品積壓,銷(xiāo)售停滯。因此就要找到相關(guān)途徑,知己之道,才能讓棗農(nóng)更快發(fā)展富裕起來(lái)。由此需求設(shè)計(jì)了《棗品質(zhì)決策系統(tǒng)》,它是依托當(dāng)前信息的網(wǎng)絡(luò)化、快速化,使用網(wǎng)絡(luò)評(píng)估果實(shí)品質(zhì),給出相關(guān)建議等服務(wù)為前提的綜合信息評(píng)估服務(wù)系統(tǒng)的設(shè)計(jì)。通過(guò)短信接收果農(nóng)給出的棗信息的初始描述,進(jìn)行劃句分詞,得到相應(yīng)的屬性,并反饋給果農(nóng)及專(zhuān)家。通過(guò)《棗品質(zhì)決策系統(tǒng)》進(jìn)行果實(shí)評(píng)估給出建議,方便即果農(nóng)專(zhuān)家進(jìn)行相關(guān)工作,又減少成本??s短果農(nóng)與專(zhuān)家的距離。在此項(xiàng)目中選擇了JavaWeb作為開(kāi)發(fā)語(yǔ)言,用到了面向?qū)ο蟮拈_(kāi)發(fā)思想和中文分詞技術(shù)。在接口設(shè)計(jì)上,實(shí)現(xiàn)了數(shù)據(jù)封裝和信息隱藏。關(guān)鍵字:棗品質(zhì)評(píng)估、JavaWeb、中文分詞。

AbstractDatesbecauseofitshighnutritionalvalue,easytogrow,resistancetosurviveandindifferentregionshavedifferentcharacteristicsandbecomerichinmanyplaces,especiallyinmountainousplateau,butduetothelackoftechnologymakethefruitcannotuseprofessionalknowledgetoevaluatethequalityoftheirownhandsthefruitandthecorrectvalueguidance,leadingtoaseriesofproblems,informationmessagesdelayleadtofarmersplantingblindly,productbacklog,salesstalled.Sowillfindrelevantway,bosomfriend,togetthemostrichfasterdevelopment.Thusdemand"jujubequalitydecisionsystemisdesigned,itisrelyingonthecurrentinformationnetwork,rapidness,usingthenetworkevaluatingfruitquality,andprovideadviceandotherservicesastheprerequisiteofcomprehensiveassessmentinformationservicesystemdesign.Throughthedescriptionoftheinitialdateinformationispresentedinshortmessagereceivingfruit,iszonedwordsegmentation,togetthecorrespondingattribute,andgivefeedbacktothefarmersandexperts.Throughthejujubequalitydecision-makingsystemtoevaluatefruitrecommendations,namelyfruitexpertsforarelatedwork,andreducecosts.Shortenthedistanceofgrowersandexperts.InthisprojectweselectJavaWebasadevelopmentlanguage,usetheobject-orienteddevelopmentthoughtandthedesignconceptoftheMVCdesignpattern.Intheinterfacedesign,realizedthedataencapsulationandinformationhiding.Keywords:Jujubequalityassessment,JavaWeb,ChineseWordSegmentation.目錄1.引言 .引言本系統(tǒng)是面向?qū)<液娃r(nóng)戶(hù),基于中小型數(shù)據(jù)庫(kù)數(shù)據(jù)挖掘工具。它基于語(yǔ)言開(kāi)發(fā),不但操作簡(jiǎn)單,界面友好,易于操作,實(shí)用性強(qiáng);同時(shí)還能夠跨平臺(tái)運(yùn)行。1.1背景和意義1.1.1背景棗本身的功能價(jià)值賦予的,棗的補(bǔ)血、美容、保健、營(yíng)養(yǎng)、抗癌、抗疲勞、鎮(zhèn)靜、護(hù)發(fā)、降脂、降糖、養(yǎng)生等等效果符合現(xiàn)代人追求的時(shí)尚要素國(guó)務(wù)院總理溫家寶3月5日在十二屆全國(guó)人大一次會(huì)議上作政府工作報(bào)告時(shí)提出,要促進(jìn)農(nóng)業(yè)穩(wěn)定發(fā)展和農(nóng)民持續(xù)增收。堅(jiān)持把解決好“三農(nóng)”問(wèn)題作為各項(xiàng)工作的重中之重。黨的十六大以來(lái),黨中央明確要把解決好“三農(nóng)”問(wèn)題放在全黨工作重中之重的位置,著力統(tǒng)籌城鄉(xiāng)經(jīng)濟(jì)社會(huì)發(fā)展,加快形成城鄉(xiāng)發(fā)展一體化新格局。黨的十八大從中國(guó)特色社會(huì)主義事業(yè)總體布局出發(fā),推出了“促進(jìn)工業(yè)化、信息化、城鎮(zhèn)化、農(nóng)業(yè)現(xiàn)代化同步發(fā)展”,明確“城鄉(xiāng)發(fā)展一體化”是解決“三農(nóng)”問(wèn)題的根本途徑。隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的迅速崛起,計(jì)算機(jī)日漸深刻的在改變著人們的生產(chǎn)生活方式。而互聯(lián)網(wǎng)已日益成為收集提供信息的最佳渠道,并逐步進(jìn)入科學(xué)種植決策領(lǐng)域。1.1.2意義棗樹(shù)的種植區(qū)域地理環(huán)境和人文環(huán)境特征賦予的,棗樹(shù)的種植不僅僅有它的經(jīng)濟(jì)意義,更有重要的環(huán)境意義和社會(huì)價(jià)值,棗樹(shù)種植的區(qū)域主要分布在我過(guò)干旱、半干旱、風(fēng)沙荒漠化和土地鹽堿化的區(qū)域,棗樹(shù)的種植可以極大的改善這些區(qū)域的生態(tài)環(huán)境,符合人類(lèi)與自然和諧相處的命題,同時(shí)這些區(qū)域主要為中國(guó)經(jīng)濟(jì)發(fā)展相對(duì)滯后的區(qū)域,是我國(guó)改善這些區(qū)域人民生活環(huán)境、提高他們生活水平,增加收入來(lái)源的重要抓手,對(duì)于縮小區(qū)域經(jīng)濟(jì)差異,促進(jìn)經(jīng)濟(jì)和諧發(fā)展有著重要意義。1.2國(guó)內(nèi)的現(xiàn)狀隨著計(jì)算機(jī)網(wǎng)絡(luò)的飛速普及,人們已經(jīng)進(jìn)入了信息時(shí)代。在這個(gè)信息社會(huì)里,信息的重要性與日俱增,無(wú)論是個(gè)人,企業(yè),乃至政府都需要獲取大量有用的信息。誰(shuí)掌握了信息,誰(shuí)就能在競(jìng)爭(zhēng)中處于有利位置。在這種環(huán)境下,搜索引擎技術(shù)逐漸成為技術(shù)人員的開(kāi)發(fā)熱點(diǎn),而其中最為重要的技術(shù)就是分詞技術(shù)。分詞技術(shù)屬于自然語(yǔ)言理解技術(shù)的范疇,是語(yǔ)義理解的首要環(huán)節(jié),它是能將語(yǔ)句中的詞語(yǔ)正確切分開(kāi)的一種技術(shù)。它是文本分類(lèi),信息檢索,機(jī)器翻譯,自動(dòng)標(biāo)引,文本的語(yǔ)音輸入輸出等領(lǐng)域的基礎(chǔ)。而由于中文本身的復(fù)雜性及其書(shū)寫(xiě)習(xí)慣,使中文分詞技術(shù)成為了分詞技術(shù)中的難點(diǎn)。近年來(lái)人們對(duì)中文分詞技術(shù)有了一定的研究提出了多種多樣的中文分詞算法。目前的中文分詞算法主要分為三大類(lèi):基于詞典的方法,基于統(tǒng)計(jì)的方法和基于規(guī)則的方法。由于中文分詞的三種基本算法,都有其各自的優(yōu)缺點(diǎn),所以為了能夠達(dá)到更好的分詞效果,人們開(kāi)始有目的的把分詞的幾種基本算法以及其他知識(shí)結(jié)合起來(lái),這就形成了現(xiàn)在日新月異的混合型分詞算法。(1)吳建勝等提出的基于自動(dòng)機(jī)的分詞方法,這種算法的基本思想是:在數(shù)據(jù)結(jié)構(gòu)方面,把詞典組織成自動(dòng)機(jī)形式,在匹配算法上采用最大向前匹配算法,把二者有機(jī)的結(jié)合到一起,以達(dá)到更好的分詞效果。(2)趙偉等提出的一種規(guī)則與統(tǒng)計(jì)相結(jié)合的漢語(yǔ)分詞方法,這種分詞算法的基本思想是:基于一個(gè)標(biāo)注好了的語(yǔ)料庫(kù),并且結(jié)合了規(guī)則和語(yǔ)料庫(kù)統(tǒng)計(jì)兩種分詞方法。(3)張長(zhǎng)利等提出的一種基于后綴數(shù)組的無(wú)詞典分詞方法,這種分詞算法的基本思想是:通過(guò)后綴數(shù)組和利用散列表獲得漢字的結(jié)合模式,通過(guò)置信度篩選詞,能夠快速準(zhǔn)確地抽取文檔中的中、高頻詞,適用于對(duì)詞條頻度敏感、對(duì)計(jì)算速度要求高的中文信息處理。(4)孫曉等提出的基于動(dòng)態(tài)規(guī)劃的最小代價(jià)路徑漢語(yǔ)自動(dòng)分詞方法,這種分詞算法的基本思想是:基于最長(zhǎng)次長(zhǎng)匹配的方法建立漢語(yǔ)切分路徑有向圖,將漢語(yǔ)自動(dòng)分詞轉(zhuǎn)換為在有向圖中選擇正確的切分路徑,其中有向圖中的節(jié)點(diǎn)代價(jià)對(duì)應(yīng)單詞頻度,而邊代價(jià)對(duì)應(yīng)所連接的兩個(gè)單詞的接續(xù)頻度;運(yùn)用改進(jìn)后Dijkstra最小代價(jià)路徑算法,求出有向圖中路徑代價(jià)最小的切分路徑作為切分結(jié)果。混合型分詞算法多種多樣,所結(jié)合的知識(shí)點(diǎn)也有很多,可以結(jié)合數(shù)據(jù)結(jié)構(gòu)知識(shí)來(lái)形成新的詞典機(jī)制;也可以結(jié)合標(biāo)記語(yǔ)料庫(kù)的方法更好的完善分詞算法。顯而易見(jiàn),混合型分詞算法在大多數(shù)方面要優(yōu)于基本型分詞算法。它將成為今后分詞算法研究中的一個(gè)熱點(diǎn)。由于中文詞與詞之間不象西文那樣有明顯的分隔符,所以構(gòu)成了中文在自動(dòng)切分上的極大困難。在現(xiàn)有的中文自動(dòng)分詞方法中,基于詞典的分詞方法占有主導(dǎo)地位。而中文分詞的主要困難不在于詞典中詞條的匹配,而是在于切分歧義消解和未登錄詞語(yǔ)的識(shí)別。在中文分詞過(guò)程中,這兩大難題一直沒(méi)有完全突破。(1)歧義處理歧義是指同樣的一句話(huà),可能有兩種或者更多的切分方法。目前主要分為交集型歧義、組合型歧義和真歧義三種。其中交集型歧義字段數(shù)量龐大,處理方法多樣;組合型歧義字段數(shù)量較少,處理起來(lái)相對(duì)較難;而真歧義字段數(shù)量更為稀少,且很難處理。分詞歧義處理之所以是中文分詞的困難之一原因在于歧義分為多種類(lèi)型,針對(duì)不同的歧義類(lèi)型應(yīng)采取不同的解決方法。除了需要依靠上、下文語(yǔ)義信息;增加語(yǔ)義、語(yǔ)用知識(shí)等外部條件外,還存在難以消解的真歧義,增加了歧義切分的難度。同時(shí)未登錄詞中也存在著歧義切分的問(wèn)題,這也增加了歧義切分的難度。所以歧義處理是影響分詞系統(tǒng)切分精度的重要因素,是自動(dòng)分詞系統(tǒng)設(shè)計(jì)中的一個(gè)最困難也是最核心的問(wèn)題。(2)未登錄詞識(shí)別新詞,專(zhuān)業(yè)術(shù)語(yǔ)稱(chēng)為未登錄詞。也就是那些在字典中都沒(méi)有收錄過(guò)詞。未登錄詞可以分為專(zhuān)名和非專(zhuān)名兩大類(lèi)。其中專(zhuān)名包括中國(guó)人名、外國(guó)譯名、地名等,而非專(zhuān)名包括新詞、簡(jiǎn)稱(chēng)、方言詞語(yǔ)、文言詞語(yǔ)、行業(yè)用詞等。無(wú)論是專(zhuān)名還是非專(zhuān)名的未登錄詞都很難處理,因?yàn)槠鋽?shù)量龐大,又沒(méi)有相應(yīng)的規(guī)范,而且隨著社會(huì)生活的變遷,使未登錄詞的數(shù)量大大增加,這又為未登錄詞的識(shí)別增加了難度。因此,未登錄詞識(shí)別是中文分詞的另一大難點(diǎn)。1.3本文的重點(diǎn)敘述如何使用中文分詞技術(shù)實(shí)現(xiàn)對(duì)棗信息的劃分,并得出相應(yīng)的屬性。2.技術(shù)支持2.1開(kāi)發(fā)工具和環(huán)境2.1.1開(kāi)發(fā)環(huán)境主機(jī)操作系統(tǒng):WINDOWS2007、windowsXP2.1.2開(kāi)發(fā)軟件JDK1.6級(jí)以上版本集成開(kāi)發(fā)環(huán)境:Myeclipse數(shù)據(jù)庫(kù):SQLSEVVER2008. Web應(yīng)用服務(wù)器:Tomcat6.0級(jí)以上版本2.1.3系統(tǒng)環(huán)境配置使用進(jìn)java環(huán)境下開(kāi)發(fā)程序,必須在電腦中安裝jdk和tomcat,并配置系統(tǒng)環(huán)境變量,一邊程序正常運(yùn)行。系統(tǒng)所處環(huán)境變量設(shè)置如下:Setjava_homec:\JDK1.6.0SetCatalina_homeD:\Apache-tomcat-6.0.18SetCLASSPATH%java_home%\lib;%java_home%\lib\tools.jar;C:\ProgramFiles(x86)\SetsqlpathMicrosoftSQLServer\jdbcdriver\sqljdbc_3.0\chs\sqljdbc.jar.;%java_home%lib\tool.jar;%java_home%\lib\dt.jar;%catalina_home%\lib\jsp-api.jar;%catalina_home%lib\servlet-api.jar;2.2JSP技術(shù)2.2.1JSP介紹JSP技術(shù)使用Java編程語(yǔ)言編寫(xiě)類(lèi)XML的tags和scriptlets,來(lái)封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過(guò)tags和scriptlets訪問(wèn)存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開(kāi)發(fā)變得迅速和容易。Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶(hù)。插入的Java程序段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。JSP與JavaServlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶(hù)端的就是一個(gè)HTML文本,因此客戶(hù)端只要有瀏覽器就能瀏覽。2.2.2JSP技術(shù)開(kāi)放的技術(shù)1、平臺(tái)和服務(wù)器的獨(dú)立性JSP技術(shù)只要寫(xiě)入后編譯一次,之后,可以運(yùn)行在任何具有支持Java開(kāi)發(fā)環(huán)境中運(yùn)行的。2、Jsp開(kāi)放的原代碼JSP技術(shù)是由SUN應(yīng)用JAVA團(tuán)隊(duì)性過(guò)程開(kāi)發(fā)。Apache,Sun和許多其他公司個(gè)人公開(kāi)成立一個(gè)強(qiáng)大的咨詢(xún)機(jī)構(gòu)以便任何企業(yè)公司和個(gè)人都能得到免費(fèi)的代碼和信息。3、技術(shù)開(kāi)發(fā)方面JSP和ASP從技術(shù)方面都能使編程人員實(shí)現(xiàn)通添加網(wǎng)頁(yè)的組件制作交互式的動(dòng)態(tài)內(nèi)容和應(yīng)用程序的WEB節(jié)點(diǎn)實(shí)現(xiàn)超鏈接網(wǎng)頁(yè)。而ASP只支持組件對(duì)象模型COM,但是JSP能提供的組件都是基于JavabeansTM技術(shù)或JSP標(biāo)簽庫(kù)等技術(shù)。2.2.3JSP的技術(shù)優(yōu)勢(shì)(1)只要編譯一次,就能在其他環(huán)境中運(yùn)行。比其他語(yǔ)言?xún)?yōu)秀更。(2)用JSP做的系統(tǒng)的可以再跨平臺(tái)運(yùn)行?;旧峡梢栽谒衅脚_(tái)上的任意環(huán)境中開(kāi)發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比ASP等語(yǔ)言的局限性是顯而易見(jiàn)的。(3)強(qiáng)大的嵌入性。很多jar文件就可以運(yùn)行Servlet/JSP,比如servlet-api.jar、catalina.jar等,可以處理很多對(duì)象信息比如application對(duì)象還有response對(duì)象,顯示了一個(gè)巨大的適應(yīng)性。(4)開(kāi)發(fā)工具強(qiáng)大。有Java和tomcat等強(qiáng)大的開(kāi)發(fā)工具,因?yàn)镴ava開(kāi)發(fā)工具強(qiáng)大可以看出jsp據(jù)用強(qiáng)大的生命力,強(qiáng)大的后臺(tái)語(yǔ)言技術(shù)開(kāi)發(fā)工具支持。動(dòng)態(tài)HTML頁(yè)動(dòng)態(tài)HTML頁(yè)MySql服務(wù)器Tomcat服務(wù)JSPJavaBean實(shí)體類(lèi)圖2-1jsp模式圖圖2-1jsp模式圖2.3Servlet技術(shù)Servlet是一種服務(wù)器端的Java應(yīng)用程序,具有獨(dú)立于平臺(tái)和協(xié)議的特性,可以生成動(dòng)態(tài)的Web頁(yè)面。它擔(dān)當(dāng)客戶(hù)請(qǐng)求(Web瀏覽器或其他HTTP客戶(hù)程序)與服務(wù)器響應(yīng)(HTTP服務(wù)器上的數(shù)據(jù)庫(kù)或應(yīng)用程序)的中間層。Servlet是位于Web服務(wù)器內(nèi)部的服務(wù)器端的Java應(yīng)用程序,與傳統(tǒng)的從命令行啟動(dòng)的Java應(yīng)用程序不同,Servlet由Web服務(wù)器進(jìn)行加載,該Web服務(wù)器必須包含支持Servlet的Java虛擬機(jī)。2.4Tomcat服務(wù)器Tomcat服務(wù)器傳送(serves)頁(yè)面使瀏覽器可以瀏覽,然而應(yīng)用程序服務(wù)器提供的是客戶(hù)端應(yīng)用程序可以調(diào)用(call)的方法(methods)。確切一點(diǎn),你可以說(shuō):Web服務(wù)器專(zhuān)門(mén)處理HTTP請(qǐng)求(request),但是應(yīng)用程序服務(wù)器是通過(guò)很多協(xié)議來(lái)為應(yīng)用程序提供(serves)商業(yè)邏輯(businesslogic)。Tomcat服務(wù)器可以解析(handles)HTTP協(xié)議。當(dāng)Web服務(wù)器接收到一個(gè)HTTP請(qǐng)求(request),會(huì)返回一個(gè)HTTP響應(yīng)(response),例如送回一個(gè)HTML頁(yè)面。為了處理一個(gè)請(qǐng)求(request),Web服務(wù)器可以響應(yīng)(response)一個(gè)靜態(tài)頁(yè)面或圖片,進(jìn)行頁(yè)面跳轉(zhuǎn)(redirect),或者把動(dòng)態(tài)響應(yīng)(dynamicresponse)的產(chǎn)生委托(delegate)給一些其它的程序例如CGI腳本,JSP(JavaServerPages)腳本,servlets,ASP(ActiveServerPages)腳本,服務(wù)器端(server-side)JavaScript,或者一些其它的服務(wù)器端(server-side)技術(shù)。無(wú)論它們(譯者注:腳本)的目的如何,這些服務(wù)器端(server-side)的程序通常產(chǎn)生一個(gè)HTML的響應(yīng)(response)來(lái)讓瀏覽器可以瀏覽。Web服務(wù)器的代理模型(delegationmodel)非常簡(jiǎn)單。當(dāng)一個(gè)請(qǐng)求(request)被送到Web服務(wù)器里來(lái)時(shí),它只單純的把請(qǐng)求(request)傳遞給可以很好的處理請(qǐng)求(request)的程序(譯者注:服務(wù)器端腳本)。Web服務(wù)器僅僅提供一個(gè)可以執(zhí)行服務(wù)器端(server-side)程序和返回(程序所產(chǎn)生的)響應(yīng)(response)的環(huán)境,而不會(huì)超出職能范圍。服務(wù)器端(server-side)程序通常具有事務(wù)處理(transactionprocessing),數(shù)據(jù)庫(kù)連接(databaseconnectivity)和消息(messaging)等功能。2.4中文分詞技術(shù)中文分詞技術(shù)屬于自然語(yǔ)言處理技術(shù)范疇,對(duì)于一句話(huà),人可以通過(guò)自己的知識(shí)來(lái)明白哪些是詞,哪些不是詞,但如何讓計(jì)算機(jī)也能理解。其處理過(guò)程就是分詞算法?,F(xiàn)有的分詞算法可分為三大類(lèi):基于字符串匹配的分詞方法、基于理解的分詞方法和基于統(tǒng)計(jì)的分詞方法。1、基于字符串匹配的分詞方法這種方法又叫做機(jī)械分詞方法,它是按照一定的策略將待分析的漢字串與一個(gè)“充分大的”機(jī)器詞典中的詞條進(jìn)行匹配,若在詞典中找到某個(gè)字符串,則匹配成功(識(shí)別出一個(gè)詞)。按照掃描方向的不同,串匹配分詞方法可以分為正向匹配和逆向匹配;按照不同長(zhǎng)度優(yōu)先匹配的情況,可以分為最大(最長(zhǎng))匹配和最小(最短)匹配;按照是否與詞性標(biāo)注過(guò)程相結(jié)合,又可以分為單純分詞方法和分詞與標(biāo)注相結(jié)合的一體化方法。常用的幾種機(jī)械分詞方法如下:1)正向最大匹配法(由左到右的方向);2)逆向最大匹配法(由右到左的方向);3)最少切分(使每一句中切出的詞數(shù)最?。?。還可以將上述各種方法相互組合,例如,可以將正向最大匹配方法和逆向最大匹配方法結(jié)合起來(lái)構(gòu)成雙向匹配法。由于漢語(yǔ)單字成詞的特點(diǎn),正向最小匹配和逆向最小匹配一般很少使用。一般說(shuō)來(lái),逆向匹配的切分精度略高于正向匹配,遇到的歧義現(xiàn)象也較少。統(tǒng)計(jì)結(jié)果表明,單純使用正向最大匹配的錯(cuò)誤率為1/169,單純使用逆向最大匹配的錯(cuò)誤率為1/245。但這種精度還遠(yuǎn)遠(yuǎn)不能滿(mǎn)足實(shí)際的需要。實(shí)際使用的分詞系統(tǒng),都是把機(jī)械分詞作為一種初分手段,還需通過(guò)利用各種其它的語(yǔ)言信息來(lái)進(jìn)一步提高切分的準(zhǔn)確率。一種方法是改進(jìn)掃描方式,稱(chēng)為特征掃描或標(biāo)志切分,優(yōu)先在待分析字符串中識(shí)別和切分出一些帶有明顯特征的詞,以這些詞作為斷點(diǎn),可將原字符串分為較小的串再來(lái)進(jìn)機(jī)械分詞,從而減少匹配的錯(cuò)誤率。另一種方法是將分詞和詞類(lèi)標(biāo)注結(jié)合起來(lái),利用豐富的詞類(lèi)信息對(duì)分詞決策提供幫助,并且在標(biāo)注過(guò)程中又反過(guò)來(lái)對(duì)分詞結(jié)果進(jìn)行檢驗(yàn)、調(diào)整,從而極大地提高切分的準(zhǔn)確率。2、基于理解的分詞方法這種分詞方法是通過(guò)讓計(jì)算機(jī)模擬人對(duì)句子的理解,達(dá)到識(shí)別詞的效果。其基本思想就是在分詞的同時(shí)進(jìn)行句法、語(yǔ)義分析,利用句法信息和語(yǔ)義信息來(lái)處理歧義現(xiàn)象。它通常包括三個(gè)部分:分詞子系統(tǒng)、句法語(yǔ)義子系統(tǒng)、總控部分。在總控部分的協(xié)調(diào)下,分詞子系統(tǒng)可以獲得有關(guān)詞、句子等的句法和語(yǔ)義信息來(lái)對(duì)分詞歧義進(jìn)行判斷,即它模擬了人對(duì)句子的理解過(guò)程。這種分詞方法需要使用大量的語(yǔ)言知識(shí)和信息。由于漢語(yǔ)語(yǔ)言知識(shí)的籠統(tǒng)、復(fù)雜性,難以將各種語(yǔ)言信息組織成機(jī)器可直接讀取的形式,因此目前基于理解的分詞系統(tǒng)還處在試驗(yàn)階段。3、基于統(tǒng)計(jì)的分詞方法從形式上看,詞是穩(wěn)定的字的組合,因此在上下文中,相鄰的字同時(shí)出現(xiàn)的次數(shù)越多,就越有可能構(gòu)成一個(gè)詞。因此字與字相鄰共現(xiàn)的頻率或概率能夠較好的反映成詞的可信度??梢詫?duì)語(yǔ)料中相鄰共現(xiàn)的各個(gè)字的組合的頻度進(jìn)行統(tǒng)計(jì),計(jì)算它們的互現(xiàn)信息。定義兩個(gè)字的互現(xiàn)信息,計(jì)算兩個(gè)漢字X、Y的相鄰共現(xiàn)概率?;ガF(xiàn)信息體現(xiàn)了漢字之間結(jié)合關(guān)系的緊密程度。當(dāng)緊密程度高于某一個(gè)閾值時(shí),便可認(rèn)為此字組可能構(gòu)成了一個(gè)詞。這種方法只需對(duì)語(yǔ)料中的字組頻度進(jìn)行統(tǒng)計(jì),不需要切分詞典,因而又叫做無(wú)詞典分詞法或統(tǒng)計(jì)取詞方法。但這種方法也有一定的局限性,會(huì)經(jīng)常抽出一些共現(xiàn)頻度高、但并不是詞的常用字組,例如“這一”、“之一”、“有的”、“我的”、“許多的”等,并且對(duì)常用詞的識(shí)別精度差,時(shí)空開(kāi)銷(xiāo)大。實(shí)際應(yīng)用的統(tǒng)計(jì)分詞系統(tǒng)都要使用一部基本的分詞詞典(常用詞詞典)進(jìn)行串匹配分詞,同時(shí)使用統(tǒng)計(jì)方法識(shí)別一些新的詞,即將串頻統(tǒng)計(jì)和串匹配結(jié)合起來(lái),既發(fā)揮匹配分詞切分速度快、效率高的特點(diǎn),又利用了無(wú)詞典分詞結(jié)合上下文識(shí)別生詞、自動(dòng)消除歧義的優(yōu)點(diǎn)。3.需求分析與概要設(shè)計(jì)3.1需求分析3.1.1設(shè)計(jì)思想用戶(hù)必須登錄進(jìn)入相關(guān)角色才能使用相關(guān)權(quán)限的功能。詞典庫(kù)中必須有一定的類(lèi)別及屬性詞條,作為初始庫(kù)。分詞過(guò)程中通過(guò)查詢(xún)?cè)~典文件來(lái)分詞,將分詞結(jié)果與屬性表進(jìn)行匹配以找到相關(guān)的屬性,并顯示在頁(yè)面。3.1.2功能需求功能劃分:詞典庫(kù)的初始化。接收前臺(tái)中用戶(hù)輸入的信息。利用中文分詞算法對(duì)信息處理,得到單獨(dú)的詞條。對(duì)每個(gè)詞條進(jìn)行分析,得出對(duì)應(yīng)的屬性。將分析結(jié)果反饋給用戶(hù),并擴(kuò)充詞典庫(kù)。3.2概要設(shè)計(jì)3.2.1系統(tǒng)總體分析總體分析如圖1—4:數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)JavaBeanServletJsp,Javascript,AJAX圖3-1系統(tǒng)總分析圖圖3-1系統(tǒng)總分析圖3.2.2系統(tǒng)模塊劃分模塊一,決策樹(shù)生成模塊。(由張金磊完成) 負(fù)責(zé)用JDBC橋接數(shù)據(jù)庫(kù),使用ID3算法生成ID3型決策樹(shù),根據(jù)輸入屬性完成品質(zhì)評(píng)估,樣本數(shù)據(jù)管理,屬性評(píng)估。前臺(tái)頁(yè)面設(shè)計(jì)。數(shù)據(jù)庫(kù)表設(shè)計(jì)。用戶(hù)增刪改查。 模塊二,分詞模塊,顯示模塊。(由臧進(jìn)進(jìn)完成) 負(fù)責(zé)根據(jù)輸入的對(duì)于果實(shí)的通俗描述語(yǔ)句,分出相應(yīng)屬性詞語(yǔ),并將新描述詞填入詞庫(kù)。 模塊三,數(shù)據(jù)導(dǎo)入模塊,基礎(chǔ)模塊。(由富兆慧完成) 負(fù)責(zé)完成單條數(shù)據(jù)錄入數(shù)據(jù)和用excel表批量導(dǎo)入數(shù)據(jù)庫(kù)。3.2.3按模塊分總體設(shè)計(jì)棗品質(zhì)決策系統(tǒng)棗品質(zhì)決策系統(tǒng)基礎(chǔ)模塊決策樹(shù)模塊數(shù)據(jù)導(dǎo)入模塊分詞模塊顯示模塊獲取數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)存儲(chǔ)提供相關(guān)接口決策樹(shù)生成品質(zhì)評(píng)估決策樹(shù)評(píng)估單條數(shù)據(jù)導(dǎo)入批量數(shù)據(jù)導(dǎo)入語(yǔ)句劃分智能加入新詞接收用戶(hù)操作顯示評(píng)估信息顯示相關(guān)數(shù)據(jù)圖3-2總體設(shè)計(jì)圖3.2.4按各模塊間關(guān)系接收用戶(hù)操作接收用戶(hù)操作顯示評(píng)估信息顯示相關(guān)數(shù)據(jù)語(yǔ)句劃分智能填詞決策樹(shù)生成品質(zhì)評(píng)估決策樹(shù)評(píng)估批量數(shù)據(jù)導(dǎo)入單條數(shù)據(jù)導(dǎo)入獲取數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)存儲(chǔ)提供相關(guān)接口顯示模塊分詞模塊決策樹(shù)模塊數(shù)據(jù)導(dǎo)入模塊基礎(chǔ)模塊圖3-3各模塊間關(guān)系4.詳細(xì)設(shè)計(jì)及實(shí)現(xiàn)4.1設(shè)計(jì)說(shuō)明本模塊主要是實(shí)現(xiàn)通過(guò)短信獲得果農(nóng)描述的棗信息,利用中文分詞技術(shù),對(duì)信息進(jìn)行劃分,最終得到對(duì)應(yīng)的屬性,并以短信形式返回給果農(nóng),并為系統(tǒng)進(jìn)行棗品質(zhì)估計(jì)做準(zhǔn)備。由于時(shí)間有限,接受果農(nóng)短信這一功能并未實(shí)現(xiàn),而是直接輸入棗信息。最終得到的結(jié)果頁(yè)只是展示到網(wǎng)頁(yè)上。4.2數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)由于數(shù)據(jù)庫(kù)內(nèi)部結(jié)構(gòu)復(fù)雜并且關(guān)系緊密,因此設(shè)計(jì)一個(gè)合理的數(shù)據(jù)結(jié)構(gòu),用來(lái)存儲(chǔ)數(shù)據(jù)庫(kù)內(nèi)部表與表、字段與表、字段與字段之間的關(guān)系和信息是很有必要的。4.2.1數(shù)據(jù)庫(kù)的選擇在開(kāi)發(fā)這個(gè)系統(tǒng)上,通用性是我們考慮的一個(gè)重要因素,因?yàn)橹饕糜诜?wù)器運(yùn)行web系統(tǒng),所以選擇sql數(shù)據(jù)庫(kù)。在匹配上比較適合系統(tǒng)。4.2.2數(shù)據(jù)結(jié)構(gòu)根據(jù)系統(tǒng)面對(duì)用戶(hù),數(shù)據(jù)庫(kù)設(shè)計(jì)以下結(jié)構(gòu):數(shù)據(jù)庫(kù)信息結(jié)構(gòu):數(shù)據(jù)庫(kù)名稱(chēng)(fruit)數(shù)據(jù)庫(kù)表信息結(jié)構(gòu):1.user表createtableusers( user_idintidentity(1,1)notnullprimarykey, user_namevarchar(16)notnull, passwordvarchar(20)notnull, emailvarchar(40), phonevarchar(20), remarksvarchar(50), limitintnotnullcheck(limit>=0andlimit<=2))用戶(hù)數(shù)據(jù)表記錄用戶(hù)相關(guān)數(shù)據(jù),用戶(hù)名,密碼(md5加密),電子郵件,權(quán)限(管理員0,專(zhuān)家1,用戶(hù)2)。2.Oldinfor表:createtableoldinfor( id_1intidentity(1,1)notnullprimarykey, infor_1varchar(200))用戶(hù)輸入的原始數(shù)據(jù),編號(hào),內(nèi)容(最多200字符)3.Newinfor表:createtablenewinfor( id_2intidentity(1,1)notnullprimarykey,foreignkey(id_2)referencesoldinfor(id_1), infor_2varchar(200))進(jìn)行劃分后的信息。編號(hào),內(nèi)容(最多200字符),引用外鍵oldinfor表的id_1。4.datainfor表createtabledatainfor(idintidentity(1,1)primarykeynotnull,typevarchar(20),attrubutevarchar(20),valueint)該表的功能相當(dāng)于查詢(xún)表,當(dāng)?shù)玫阶址?,與該表匹配,得到相應(yīng)的屬性,類(lèi)別。表內(nèi)容:編號(hào),類(lèi)別,屬性,對(duì)應(yīng)值。表內(nèi)容如下:圖4-1棗屬性圖圖4-1棗屬性圖4.3中文分詞流程4.3.2基礎(chǔ)模塊流程用戶(hù)輸入棗描述信息加載分詞的詞典利用分詞函數(shù)得到字符串將字符串與棗屬性表進(jìn)行匹配根據(jù)匹配結(jié)果得到對(duì)應(yīng)的屬性輸出結(jié)果。4.3.2模塊流程圖登錄登錄否是否注冊(cè)否是否注冊(cè)注冊(cè)是注冊(cè)是果實(shí)評(píng)估果實(shí)評(píng)估進(jìn)行分詞進(jìn)行分詞查詢(xún)?cè)~典查詢(xún)?cè)~典否否是否含詞條是否含詞條擴(kuò)充詞典擴(kuò)充詞典是是與屬性表匹配與屬性表匹配輸出結(jié)果輸出結(jié)果圖4-2模塊流程圖圖4-2模塊流程圖開(kāi)始4.3.3算法流程圖開(kāi)始去當(dāng)前字符串前m個(gè)字符作為匹配字段去當(dāng)前字符串前m個(gè)字符作為匹配字段·查找字典,進(jìn)行匹配查找字典,進(jìn)行匹配成功?成功?否否匹配字段右去一個(gè)詞匹配字段右去一個(gè)詞是是否否匹配字段為0?匹配字段為0?是是切分出該字,在字符串中去除m個(gè)字符切分出該字,在字符串中去除m個(gè)字符否否結(jié)尾結(jié)尾是是結(jié)束結(jié)束圖4-3算法流程圖圖4-3算法流程圖4.4中文分詞實(shí)現(xiàn)4.4.1系統(tǒng)設(shè)計(jì)模式面向?qū)ο缶幊淌墙鼇?lái)程序開(kāi)發(fā)的主流,和以往的面向過(guò)程編程相比,它更具有可維護(hù)性和可擴(kuò)展性。無(wú)論是從程序設(shè)計(jì)還是到程序開(kāi)發(fā),都展現(xiàn)出了面向過(guò)程無(wú)法比擬的優(yōu)點(diǎn)。首先,它從人類(lèi)認(rèn)識(shí)世界的角度出發(fā),提出了“萬(wàn)物皆對(duì)象”的思想。其次,對(duì)象具有的繼承、封裝和多態(tài)的特征,為程序的開(kāi)發(fā)和維護(hù)帶來(lái)了很大的便利。再次,面向?qū)ο蟮脑O(shè)計(jì)重點(diǎn)放在了對(duì)象和對(duì)象接口設(shè)計(jì)上,從而擺脫了以往面向過(guò)程的把主要精力放在如何實(shí)現(xiàn)的細(xì)節(jié)上。從面向?qū)ο蟮乃枷氤霭l(fā),我們開(kāi)發(fā)數(shù)據(jù)庫(kù)查詢(xún)和分析工具的基礎(chǔ)模塊,在開(kāi)發(fā)基礎(chǔ)模塊之前我們要把握好以下幾點(diǎn):模塊封裝性要好:一個(gè)模塊分解是否成功的標(biāo)志是看該模塊自身的數(shù)據(jù)和細(xì)節(jié)封裝的程度的大小。一個(gè)好的模塊,可以把所有的實(shí)現(xiàn)細(xì)節(jié)隱藏起來(lái),提供各外部的API與自己的具體實(shí)現(xiàn)區(qū)分開(kāi)來(lái)。這樣各個(gè)模塊之間就只通過(guò)API進(jìn)程通信,而不考慮具體的實(shí)現(xiàn)細(xì)節(jié)。模塊擴(kuò)展性要好:系統(tǒng)的最大特點(diǎn)就是要做到通用性,要想實(shí)現(xiàn)通用性,這就要求我們?nèi)嬷С炙械臄?shù)據(jù)庫(kù),當(dāng)有新的數(shù)據(jù)庫(kù)出現(xiàn)時(shí),我們應(yīng)該做到在不更改源代碼的基礎(chǔ)上實(shí)現(xiàn)功能的擴(kuò)展。要求我們嚴(yán)格遵守開(kāi)閉原則,即對(duì)擴(kuò)展開(kāi)放,對(duì)修改關(guān)閉。設(shè)計(jì)明確的接口:由于其他模塊的開(kāi)發(fā)不是有我來(lái)完成的,因此,為其他模塊提供一個(gè)簡(jiǎn)單明了且不變動(dòng)的接口也是軟件開(kāi)發(fā)的關(guān)鍵。系統(tǒng)維護(hù)性要好:由于系統(tǒng)開(kāi)發(fā)出來(lái)之后,功能不會(huì)全部實(shí)現(xiàn),有可能以后需要?jiǎng)e人來(lái)維護(hù)系統(tǒng),因此系統(tǒng)在開(kāi)發(fā)過(guò)程中要生成完整的文檔,以供系統(tǒng)維護(hù)。中文分詞模塊如下:IKSegmentation主分析器IKSegmentation主分析器量詞處理子單元字母處理子單量詞處理子單元字母處理子單元中文處理子單元中文處理子單元詞典配置管理模塊詞典檢索算法單元詞典配置管理模塊詞典檢索算法單元詞典加載管理詞典加載管理詞典文件詞典文件圖4-3中文分詞模塊圖4-3中文分詞模塊4.4.2詞典設(shè)計(jì)詞典初始化詞典采用Dictionary類(lèi)的靜態(tài)方法進(jìn)行詞典初始化,只有當(dāng)Dictionary類(lèi)被實(shí)際調(diào)用時(shí),才會(huì)開(kāi)始載入詞典,這將延長(zhǎng)首次分詞操作的時(shí)間。該方法提供了一個(gè)在應(yīng)用加載階段就初始化字典的手段 publicstaticDictionaryinitial(Configurationcfg){ if(singleton==null){ synchronized(Dictionary.class){ if(singleton==null){ singleton=newDictionary(cfg); returnsingleton; }}} returnsingleton;}2.加載主詞典及擴(kuò)展詞典建立一個(gè)主詞典實(shí)例_MainDict=newDictSegment((char)0);讀取主詞典文件InputStreais=this.getClass().getClassLoader().getResourceAsStream(cfg.getMainDictionary());加載擴(kuò)展詞典this.loadExtDict();3.詞典樹(shù)分段(表示詞典樹(shù)的一個(gè)分枝)Hitmatch(char[]charArray,intbegin,intlength,HitsearchHit){ if(searchHit==null){ searchHit=newHit();//如果hit為空,新建 searchHit.setBegin(begin); //設(shè)置hit的起始文本位置 }else{ searchHit.setUnmatch();//否則要將HIT狀態(tài)重置 } searchHit.setEnd(begin); //設(shè)置hit的當(dāng)前處理位置 CharacterkeyChar=newCharacter(charArray[begin]); DictSegmentds=null; //引用實(shí)例變量為本地變量,避免查詢(xún)時(shí)遇到更新的同步問(wèn)題 DictSegment[]segmentArray=this.childrenArray; Map<Character,DictSegment>segmentMap=this.childrenMap; //STEP1在節(jié)點(diǎn)中查找keyChar對(duì)應(yīng)的DictSegment if(segmentArray!=null){ //在數(shù)組中查找 DictSegmentkeySegment=newDictSegment(keyChar); intposition=Arrays.binarySearch(segmentArray,0,this.storeSize,keySegment); if(position>=0){ ds=segmentArray[position]; } }elseif(segmentMap!=null){ //在map中查找 ds=(DictSegment)segmentMap.get(keyChar); } //STEP2找到DictSegment,判斷詞的匹配狀態(tài),是否繼續(xù)遞歸,還是返回結(jié)果 if(ds!=null){ if(length>1){ //詞未匹配完,繼續(xù)往下搜索 returnds.match(charArray,begin+1,length-1,searchHit); }elseif(length==1){ //搜索最后一個(gè)char if(ds.nodeState==1){ //添加HIT狀態(tài)為完全匹配 searchHit.setMatch(); } if(ds.hasNextNode()){ //添加HIT狀態(tài)為前綴匹配 searchHit.setPrefix(); //記錄當(dāng)前位置的DictSegment searchHit.setMatchedDictSegment(ds); } returnsearchHit; } } //STEP3沒(méi)有找到DictSegment,將HIT設(shè)置為不匹配 returnsearchHit; }4.hit一次詞典匹配的命中Hit不匹配privatestaticfinalintUNMATCH=0x00000000;Hit完全匹配privatestaticfinalintMATCH=0x00000001;Hit前綴匹配privatestaticfinalintPREFIX=0x00000010;4.4.3分詞設(shè)計(jì)1.初始化初始化詞典單例Dictionary.initial(this.cfg);初始化分詞上下文this.context=newAnalyzeContext(this.cfg);加載子分詞器this.segmenters=this.loadSegmenters();2.分詞,獲取下一個(gè)詞元 *@returnLexeme詞元對(duì)象 publicsynchronizedLexemenext()throwsIOException{ Lexemel=null; while((l=context.getNextLexeme())==null){從reader中讀取數(shù)據(jù),填充buffer,如果reader是分次讀入buffer的,那么buffer要進(jìn)行移位處理,移位處理上次讀入的但未處理的數(shù)據(jù) intavailable=context.fillBuffer(this.input); if(available<=0){ context.reset();returnnull;//reader已經(jīng)讀完 }else{ context.initCursor();//初始化指針 do{ //遍歷子分詞器 for(ISegmentersegmenter:segmenters){ segmenter.analyze(context); } //字符緩沖區(qū)接近讀完,需要讀入新的字符 if(context.needRefillBuffer()){ break; } }while(context.moveCursor());//向前移動(dòng)指針 //重置子分詞器,為下輪循環(huán)進(jìn)行初始化 for(ISegmentersegmenter:segmenters){segmenter.reset(); } } //將分詞結(jié)果輸出到結(jié)果集,并處理未切分的單個(gè)CJK字符 context.outputToResult(); context.markBufferOffset(); //記錄本次分詞的緩沖區(qū)位移 } returnl;}3.中文子分詞 publicvoidanalyze(AnalyzeContextcontext){ if(CharacterUtil.CHAR_USELESS!=context.getCurrentCharType()){ if(!this.tmpHits.isEmpty()){//優(yōu)先處理tmpHits中的hit //處理詞段隊(duì)列 Hit[]tmpArray=this.tmpHits.toArray(newHit[this.tmpHits.size()]); for(Hithit:tmpArray){ hit=Dictionary.getSingleton().matchWithHit(context.getSegmentBuff(),context.getCursor(),hit); if(hit.isMatch()){ //輸出當(dāng)前的詞LexemenewLexeme=newLexeme(context.getBufferOffset(),hit.getBegin(),context.getCursor()-hit.getBegin()+1,Lexeme.TYPE_CNWORD); context.addLexeme(newLexeme); if(!hit.isPrefix()){//不是詞前綴,hit不需要繼續(xù)匹配,移除 this.tmpHits.remove(hit);} }elseif(hit.isUnmatch()){ this.tmpHits.remove(hit);//hit不是詞,移除}}} //再對(duì)當(dāng)前指針位置的字符進(jìn)行單字匹配HitsingleCharHit=Dictionary.getSingleton().matchInMainDict(context.getSegmentBuff(),context.getCursor(),1); if(singleCharHit.isMatch()){//首字成詞 //輸出當(dāng)前的詞 LexemenewLexeme=newLexeme(context.getBufferOffset(),context.getCursor(),1,Lexeme.TYPE_CNWORD); context.addLexeme(newLexeme); if(singleCharHit.isPrefix()){ //前綴匹配則放入hit列表 this.tmpHits.add(singleCharHit); }}4.4.5后臺(tái)包及設(shè)計(jì)org.wltea.analyzer.cgf包Configuration類(lèi),中文分詞的配置管理類(lèi),獲取詞典的路徑。org.wltea.analyzer.core包IKSegmenter類(lèi):具體實(shí)現(xiàn)中文分詞。org.wltea.analyzer.dic包Dictionary類(lèi):詞典管理類(lèi),初始化詞典,加載詞典。org.wltea.analyzer.sameple包IKAnalzyerDemo類(lèi):負(fù)責(zé)中文分詞與前臺(tái)聯(lián)系。Dao1包(數(shù)據(jù)庫(kù)鏈接基礎(chǔ)包):linkData類(lèi):數(shù)據(jù)庫(kù)鏈接基礎(chǔ)類(lèi),所有鏈接數(shù)據(jù)庫(kù)的都調(diào)用此類(lèi)鏈接數(shù)據(jù)庫(kù)。Createtable類(lèi):實(shí)現(xiàn)數(shù)據(jù)表的創(chuàng)建。Inser類(lèi):向數(shù)據(jù)表中插入數(shù)據(jù)。Match類(lèi):將獲得的分詞詞組與屬性列表進(jìn)行匹配。4.4.6異常處理當(dāng)用戶(hù)非法操作時(shí)(不輸入用戶(hù)名密碼直接想進(jìn)入相關(guān)頁(yè)面或者進(jìn)入不屬于自己所有權(quán)限的頁(yè)面時(shí)),頁(yè)面會(huì)直接調(diào)到登錄頁(yè)面。果實(shí)評(píng)估出現(xiàn)異?;蛘邔?duì)于用戶(hù)操作出現(xiàn)時(shí),異常狀態(tài)往上傳到servlet,跳轉(zhuǎn)的顯示提示異常頁(yè)面。4.4.7出現(xiàn)的問(wèn)題以及解決方法問(wèn)題1:在前臺(tái)傳中文值到后臺(tái)時(shí),servlet后臺(tái)正常接收,但接收后測(cè)試時(shí)出現(xiàn)亂碼。解決方法:這是編碼不同的結(jié)果,在接收之前通過(guò)request.setCharacterEncoding("gb2312");這條語(yǔ)句設(shè)置編碼。設(shè)置后正常接收。問(wèn)題2: 在界面顯示時(shí),偶爾會(huì)出現(xiàn)中文亂碼現(xiàn)象。解決方法: 這往往是界面間編碼差異造成,通過(guò)servlet設(shè)置過(guò)濾器,對(duì)所有頁(yè)面,進(jìn)行統(tǒng)一編碼設(shè)置,異常消除。問(wèn)題3: Sql數(shù)據(jù)庫(kù)存儲(chǔ)由前臺(tái)傳入數(shù)據(jù)時(shí),后面多加很多空格,除非直接操作數(shù)據(jù)庫(kù)否則無(wú)法消除。解決方法 這是數(shù)據(jù)庫(kù)設(shè)計(jì)問(wèn)題,不考慮存儲(chǔ)解決,在數(shù)據(jù)取出時(shí),用相關(guān)語(yǔ)句除去前后空格。5結(jié)論5.1技術(shù)特點(diǎn)本系統(tǒng)界面統(tǒng)一友好,實(shí)用性強(qiáng),安全;代碼清晰,易懂;安裝方便,可移植性和擴(kuò)展性好。5.2缺點(diǎn)及不足由于系統(tǒng)規(guī)模較大,時(shí)間不足,某些功能模塊沒(méi)有完整實(shí)現(xiàn),有些異常錯(cuò)誤沒(méi)有及時(shí)發(fā)現(xiàn)。5.4總結(jié)本系統(tǒng)基本達(dá)到預(yù)期的各項(xiàng)技術(shù)指標(biāo),實(shí)現(xiàn)了預(yù)期的各種功能。從整體上來(lái)講,本系統(tǒng)還比較令人滿(mǎn)意。本系統(tǒng)的關(guān)鍵任務(wù)主要體現(xiàn)在以下兩方面:(1)根據(jù)用戶(hù)提供的棗信息,進(jìn)行語(yǔ)句劃分。找出其中的類(lèi)型及對(duì)應(yīng)的屬性。在這里主要用到了中文分詞系統(tǒng)及數(shù)據(jù)庫(kù)的查詢(xún)。(2)負(fù)責(zé)用JDBC橋接數(shù)據(jù)庫(kù),使用ID3算法生成ID3型決策樹(shù),根據(jù)輸入屬性完成品質(zhì)評(píng)估,樣本數(shù)據(jù)管理,屬性評(píng)估。當(dāng)然,由于時(shí)間有限,本系統(tǒng)還存在一些不盡人意之處和有待深入研究的地方。本系統(tǒng)給出了棗品質(zhì)決策的基本框架,但是系統(tǒng)還不夠完善,特別是中文分詞器只能完成詞庫(kù)中含有詞條的劃分,這使得一些類(lèi)別和屬性不能區(qū)分出來(lái);在進(jìn)行匹配的過(guò)程中,只能簡(jiǎn)單匹配,用戶(hù)可以手動(dòng)增加一些屬性。致謝畢業(yè)設(shè)計(jì)在克服重重困難之后終于得以完成,其中很多問(wèn)題讓我束手無(wú)策,但是我有一位良師,還有同組的二位優(yōu)秀同學(xué),他們有著認(rèn)真嚴(yán)謹(jǐn),不畏困難的品質(zhì)。在大家的共同努力下,我們一步步完成了預(yù)定目標(biāo)。所以特別感謝他們。即將畢業(yè),我還要繼續(xù)我的學(xué)業(yè),我將會(huì)繼續(xù)保持畢業(yè)設(shè)計(jì)中養(yǎng)成的學(xué)習(xí)習(xí)慣,多動(dòng)手,勤思考,加強(qiáng)團(tuán)隊(duì)合作,爭(zhēng)取在未來(lái)的求學(xué)路上取得更大的進(jìn)步。參考文獻(xiàn)[1]BruceEckel.《Java編程思想》.機(jī)械工業(yè)出版社,2007年6月[2]劉中兵Java研究室《Java高手真經(jīng)》.電子工業(yè)出版社,2009年3月[3]徐孝凱《數(shù)據(jù)結(jié)構(gòu)教程》(Java語(yǔ)言描述).清華大學(xué)出版社,2010年8月[4]ThomasA.Powell《HTML5&CSS》.清華大學(xué)出版社,2011年6月[5]耿祥義,張躍平.《JSP實(shí)用教程》.清華大學(xué)出版社,2003年5月1日[6]閻宏編著,《java與模式》,電子工業(yè)出版社,2002[7]孫衛(wèi)琴,李洪成.《Tomcat與JSPWeb開(kāi)發(fā)技術(shù)詳解》.電子工業(yè)出版社,2003年6月:1-205[8]BruceEckel.《JSP編程思想》.機(jī)械工業(yè)出版社,2003年10月:1-378[9]FLANAGAN.《JSP技術(shù)手冊(cè)》.中國(guó)電力出版社,2002年6月:1-465[10]孫一林,彭波.《JSP數(shù)據(jù)庫(kù)編程實(shí)例》.清華大學(xué)出版社,2002年8月:30-210[11]飛思科技產(chǎn)品研發(fā)中心.《JSP應(yīng)用開(kāi)發(fā)詳解》.電子工業(yè)出版社,2003年9月:32-300[12]耿祥義,張躍平.《JSP實(shí)用教程》.清華大學(xué)出版社,2003年5月1日:1-354[13]薩師煊,王珊.《數(shù)據(jù)庫(kù)系統(tǒng)概論》.高等教育出版社,2002年2月:3-460[14]陳耀東,王挺.《基于有向圖的雙向匹配分詞算法及實(shí)現(xiàn)》.電子工業(yè)出版社2005年2月[15]李振星,徐澤平等.《全二分最大匹配快速分詞算法》機(jī)械工業(yè)出版社2002年11月[16]張春夏,郝天勇.《漢語(yǔ)分詞的研究現(xiàn)狀與困難》.電子工業(yè)出版社.225年1月本科畢業(yè)設(shè)計(jì)任務(wù)書(shū)學(xué)院:教師姓名: 職稱(chēng):年月日專(zhuān)業(yè)名稱(chēng)計(jì)算機(jī)科學(xué)與技術(shù)論文題目棗品質(zhì)決策系統(tǒng)—對(duì)棗信息進(jìn)行分詞預(yù)處理題目來(lái)源自擬目的意義:國(guó)務(wù)院總理溫家寶3月5日在十二屆全國(guó)人大一次會(huì)議上作政府工作報(bào)告時(shí)提出,要促進(jìn)農(nóng)業(yè)穩(wěn)定發(fā)展和農(nóng)民持續(xù)增收。堅(jiān)持把解決好“三農(nóng)”問(wèn)題作為各項(xiàng)工作的重中之重。黨的十六大以來(lái),黨中央明確要把解決好“三農(nóng)”問(wèn)題放在全黨工作重中之重的位置,著力統(tǒng)籌城鄉(xiāng)經(jīng)濟(jì)社會(huì)發(fā)展,加快形成城鄉(xiāng)發(fā)展一體化新格局。黨的十八大從中國(guó)特色社會(huì)主義事業(yè)總體布局出發(fā),推出了“促進(jìn)工業(yè)化、信息化、城鎮(zhèn)化、農(nóng)業(yè)現(xiàn)代化同步發(fā)展”,明確“城鄉(xiāng)發(fā)展一體化”是解決“三農(nóng)”問(wèn)題的根本途徑。隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的迅速崛起,計(jì)算機(jī)日漸深刻的在改變著人們的生產(chǎn)生活方式。而互聯(lián)網(wǎng)已日益成為收集提供信息的最佳渠道,并逐步進(jìn)入科學(xué)種植決策領(lǐng)域。棗樹(shù)的種植區(qū)域地理環(huán)境和人文環(huán)境特征賦予的,棗樹(shù)的種植不僅僅有它的經(jīng)濟(jì)意義,更有重要的環(huán)境意義和社會(huì)價(jià)值,棗樹(shù)種植的區(qū)域主要分布在我過(guò)干旱、半干旱、風(fēng)沙荒漠化和土地鹽堿化的區(qū)域,棗樹(shù)的種植可以極大的改善這些區(qū)域的生態(tài)環(huán)境,符合人類(lèi)與自然和諧相處的命題,同時(shí)這些區(qū)域主要為中國(guó)經(jīng)濟(jì)發(fā)展相對(duì)滯后的區(qū)域,是我國(guó)改善這些區(qū)域人民生活環(huán)境、提高他們生活水平,增加收入來(lái)源的重要抓手,對(duì)于縮小區(qū)域經(jīng)濟(jì)差異,促進(jìn)經(jīng)濟(jì)和諧發(fā)展有著重要意義??尚行苑治觯阂?、研究條件及問(wèn)題分析基于字符串匹配的分詞方法又叫做機(jī)械分詞方法,它是按照一定的策略將待分析的漢字串與一個(gè)“充分大的”機(jī)器詞典中的詞條進(jìn)行匹配,若在詞典中找到某個(gè)字符串,則匹配成功(識(shí)別出一個(gè)詞)。技術(shù)可行性:在設(shè)計(jì)模式上選用MVC設(shè)計(jì)模式:當(dāng)用戶(hù)有請(qǐng)求提交時(shí),所有請(qǐng)求都會(huì)交給Servlet進(jìn)行處理,然后由Servlet調(diào)用JavaBean,并將JavaBean的操作結(jié)果通過(guò)RequestDisp

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論