鐘聲 黎苗苗
摘 要:隨著我們社會(huì)信息的日趨復(fù)雜,人們?cè)谥谱鱾€(gè)人信息時(shí)難免出現(xiàn)一些拼寫(xiě)格式上的錯(cuò)誤。這些錯(cuò)誤雖小,但常常給人們帶來(lái)不必要的損失。隨著科學(xué)技術(shù)的發(fā)展和統(tǒng)計(jì)學(xué)習(xí)方法的有效應(yīng)用,近年來(lái),自然語(yǔ)言處理技術(shù)已經(jīng)成為語(yǔ)義搜索以及人工智能的重要研究方向。自然語(yǔ)言處理的重難點(diǎn)是對(duì)英文文本中單詞與語(yǔ)法的錯(cuò)誤進(jìn)行檢測(cè)與糾正。本論文基于kettle這個(gè)最新軟件,通過(guò)將數(shù)據(jù)抽取(Extract)、轉(zhuǎn)換(Transform)、清洗(Cleansing)、裝載(Load)的過(guò)程,對(duì)數(shù)據(jù)進(jìn)行統(tǒng)一的格式處理。
關(guān)鍵詞:數(shù)據(jù)庫(kù);JAVA;kettle
一、系統(tǒng)背景
近些年隨著科學(xué)技術(shù)的日益發(fā)展,新的技術(shù)更新?lián)Q代,眾多領(lǐng)域如語(yǔ)音識(shí)別、OCR識(shí)別都對(duì)拼寫(xiě)錯(cuò)誤展開(kāi)了迫切的研究。令人欣慰的是已經(jīng)有部分成果轉(zhuǎn)換成了商品。在全球范圍內(nèi),我們能看到Expert Ease公司推出的Deal Proof產(chǎn)品。這款產(chǎn)品嵌入了英文拼寫(xiě)檢查功能。與此同時(shí),Newton公司推出的Proofread產(chǎn)品也同樣具有英文單詞拼寫(xiě)檢查系統(tǒng)。
本文首先介紹英文拼寫(xiě)檢查中的錯(cuò)誤類(lèi)型以及檢錯(cuò)糾錯(cuò)方法,并利用一種方法及其改進(jìn)算法實(shí)現(xiàn)一簡(jiǎn)單的英文拼寫(xiě)檢查系統(tǒng)。
二、系統(tǒng)目標(biāo)
三、應(yīng)用技術(shù)介紹
(1)java技術(shù)。Java語(yǔ)言以它獨(dú)特的魅力贏(yíng)得了世界上大部分程序員的認(rèn)可,他良好的跨平臺(tái)性,可移植性,安全性等優(yōu)點(diǎn)使之風(fēng)靡全球。SUN公司(2009年4月并入甲骨文公司)最初開(kāi)發(fā)Java語(yǔ)言是為了解決智能家用電器的控制和通信問(wèn)題。隨著Internet的發(fā)展,Sun公司逐步將Java語(yǔ)言改造成適合計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用的程序設(shè)計(jì)語(yǔ)言。目前Java語(yǔ)言已經(jīng)成為網(wǎng)絡(luò)程序設(shè)計(jì)的主流編程語(yǔ)言之一,在全球云計(jì)算和移動(dòng)互聯(lián)網(wǎng)的產(chǎn)業(yè)環(huán)境下,Java更具備了顯著的優(yōu)勢(shì)和廣闊的發(fā)展前景。
(2)Kettle技術(shù)。Kettle這個(gè)單詞翻譯成中文名字為茶壺的意思,是BI為解決pentaho項(xiàng)目設(shè)計(jì)的一個(gè)子項(xiàng)目,作為一項(xiàng)專(zhuān)業(yè)的ETL工具,目前的易用性不是特別好,但是相對(duì)于其他的ETL工具,Kettle工具除了開(kāi)源免費(fèi)以外,它的功能性,穩(wěn)定性還是很不錯(cuò)的。此外,由于整個(gè)pentaho平臺(tái)都是使用java語(yǔ)言進(jìn)行開(kāi)發(fā),所以Kettle本身就具備了跨平臺(tái)性的特點(diǎn),編輯出來(lái)的成果也能在各個(gè)操作系統(tǒng)上正常運(yùn)行,這是Kettle軟件最大的優(yōu)點(diǎn)。同時(shí),ETL工具采用JDBC標(biāo)準(zhǔn),對(duì)數(shù)據(jù)庫(kù)的兼容性要比ODBC、OLE/DB工具要好得多。Kettle工具由四個(gè)部分:Chef,Spoon,Kitchen,Pan組成。這四個(gè)部分聽(tīng)起來(lái)名字有點(diǎn)奇怪,更像是一些廚房用具,那么組成Kettle工具的四個(gè)部分分別是什么東西呢,官方文檔給出了這樣的解釋?zhuān)?/p>
kettle是一個(gè)ETL工具,名字是“Kettle E.T.T.L. Environment”的首字母組成的縮寫(xiě),chef是用來(lái)設(shè)計(jì)job的一個(gè)圖形用戶(hù)界面,設(shè)計(jì)出來(lái)的job是用放到ketchen里面執(zhí)行的,spoon是來(lái)設(shè)計(jì)transformation的GUI,然后transformation是放到pan里面執(zhí)行的,kitchen和pan說(shuō)白了就是執(zhí)行我們編出來(lái)的ETL包的工具,因?yàn)閗ettle是跨平臺(tái)的嘛,所以把執(zhí)行環(huán)境獨(dú)立出來(lái),我是這樣理解的。
上面提到了transformation和job這兩樣?xùn)|西,在Kettle中的一個(gè)ETL包其實(shí)就是一個(gè)job,而一個(gè)job則由一個(gè)或者多個(gè)transformation組合而成。在transformation中則包含了數(shù)據(jù)的輸入輸出、轉(zhuǎn)換、連接、聚合等各種判斷處理綜合在一起。而我們實(shí)現(xiàn)FTP/HTTP傳輸、外部程序調(diào)用和執(zhí)行Ttransformation等都是我們的job的組件。
(3)SQL數(shù)據(jù)庫(kù)。簡(jiǎn)單的來(lái)說(shuō)數(shù)據(jù)庫(kù)就是指數(shù)據(jù)倉(cāng)庫(kù)的意思,即一個(gè)存放數(shù)據(jù)的地方。我們周?chē)泻芏鄸|西都是有數(shù)據(jù)庫(kù)的蹤跡。例如我們手機(jī)的通訊錄就是一個(gè)小的數(shù)據(jù)庫(kù),而我們的圖書(shū)館則更像一個(gè)大型數(shù)據(jù)庫(kù)。較小的數(shù)據(jù)庫(kù)可以用手工實(shí)現(xiàn)增刪改查的應(yīng)用,但是大型數(shù)據(jù)庫(kù)的管理必須依托計(jì)算機(jī)的高精準(zhǔn)計(jì)算。目前計(jì)算機(jī)主要應(yīng)用的三大領(lǐng)域:數(shù)據(jù)處理、科學(xué)計(jì)算、過(guò)程控制中,數(shù)據(jù)處理所占的比重達(dá)到了70%。數(shù)據(jù)庫(kù)技術(shù)也在20世紀(jì)60年代作為最新技術(shù)應(yīng)運(yùn)而生。
(4)項(xiàng)目管理工具。Microsoft Project 2003 里面所有的項(xiàng)目信息都是集中有序的管理的,進(jìn)而為所有的項(xiàng)目提供一個(gè)精準(zhǔn)的描繪。Microsoft Project 2003可以分別支持企業(yè)級(jí)別和項(xiàng)目組級(jí)別的項(xiàng)目管理,常用的包括資源管理、任務(wù)調(diào)度、跟蹤、報(bào)表、小組協(xié)議等, 同時(shí)強(qiáng)有力的標(biāo)準(zhǔn)化數(shù)據(jù)定義。
四、系統(tǒng)分析
(1)用戶(hù)特點(diǎn).用戶(hù)一般為有部分計(jì)算機(jī)使用經(jīng)驗(yàn)的管理員,對(duì)計(jì)算機(jī)有一定使用技能,熟悉計(jì)算機(jī)操作。
(2)假定和:約束。假定數(shù)據(jù)庫(kù)容量夠大,所有的數(shù)據(jù)中拼寫(xiě)問(wèn)題都能得到糾正。
(3)環(huán)境支持:
①運(yùn)行環(huán)境支持:瀏覽器,計(jì)算機(jī)(CPU PII以上,內(nèi)存1G上)。
②軟件環(huán)境
③硬件環(huán)境:CPU PII以上,內(nèi)存1G上,聯(lián)網(wǎng)支持,印機(jī)。
五、功能實(shí)現(xiàn)
數(shù)據(jù)中拼寫(xiě)錯(cuò)誤的檢查與糾正這個(gè)課題,就是在數(shù)據(jù)中錯(cuò)誤信息進(jìn)行糾錯(cuò)。本次我就常出現(xiàn)的拼寫(xiě)錯(cuò)誤中大小寫(xiě)問(wèn)題和拼寫(xiě)過(guò)程中的格式問(wèn)題,進(jìn)行演示糾正。首先準(zhǔn)備了有錯(cuò)誤信息的表格,導(dǎo)入到kettle中,經(jīng)過(guò)以excel導(dǎo)入程序,發(fā)現(xiàn)錯(cuò)誤信息,糾正錯(cuò)誤信息,以excel導(dǎo)出程序。從而完成拼寫(xiě)錯(cuò)誤的糾正。
六、設(shè)計(jì)心得
本次設(shè)計(jì)中,實(shí)現(xiàn)了數(shù)據(jù)中拼寫(xiě)錯(cuò)誤的檢查與糾正。操作演示的過(guò)程中,也用到了最新相關(guān)的軟件,這大大節(jié)約了編寫(xiě)代碼的時(shí)間。用戶(hù)在運(yùn)用此軟件進(jìn)行操作時(shí),容易上手,這大大節(jié)約了時(shí)間,提高辦事效率。
新技術(shù)的不斷產(chǎn)生,需要我們不斷鞥信自己的知識(shí),以最簡(jiǎn)單的方法,解決問(wèn)題,以最小的投資獲得最大的回報(bào)。
作者簡(jiǎn)介:鐘聲(1990—),男,江西萍鄉(xiāng)人,研究生,助教,主要研究方向:數(shù)字媒體。