計算機軟件前沿技術(shù)論文范文
隨著社會技術(shù)的不斷發(fā)展,計算機技術(shù)領(lǐng)域的軟件前言技術(shù)已經(jīng)得到了快速的發(fā)展。下面小編給大家分享軟件前沿技術(shù)論文,歡迎大家閱讀參考。
軟件前沿技術(shù)論文篇一:《分層技術(shù)在計算機軟件開發(fā)中的應(yīng)用》
摘 要:隨著社會經(jīng)濟的不斷發(fā)展,計算機技術(shù)領(lǐng)域已得到了迅速的提升。當(dāng)前,計算機技術(shù)和網(wǎng)絡(luò)技術(shù)已與社會的生活息息相關(guān),越來越多的人類離不開計算機應(yīng)用,由此也促使計算機軟件系統(tǒng)越來越復(fù)雜,出現(xiàn)了較多的軟件系統(tǒng)及手機APP,當(dāng)前加強對計算機軟件的開發(fā)已刻不容緩。分層技術(shù)在計算機軟件開發(fā)過程中具有顯著的優(yōu)勢,能夠加快軟件開發(fā)速度,確保軟件質(zhì)量,且可以減少計算機軟件維護的工作量。文章主要結(jié)合了分層技術(shù)的特點,分析了分層技術(shù)在計算機軟件開發(fā)過程中的應(yīng)用。
關(guān)鍵詞:分層技術(shù);計算機軟件;應(yīng)用
在當(dāng)前我國社會發(fā)展的過程中,計算機行業(yè)領(lǐng)域已在社會市場中取得了顯著的成效,各行各業(yè)的計算機軟件系統(tǒng)也得到了空前的涌現(xiàn)。隨著市場競爭的不斷擴大,人們對計算機軟件開發(fā)技術(shù)的要求也越來越嚴(yán)格。如今,分層技術(shù)在計算機軟件開發(fā)過程中取得了明顯的作用效果,其不僅滿足了社會發(fā)展的需求,對軟件系統(tǒng)的結(jié)構(gòu)進行了一定的創(chuàng)新,還提高了軟件本身的質(zhì)量問題,使用戶減少了一定的維護成本,有效地促進了計算機領(lǐng)域的發(fā)展。下面主要結(jié)合了分層技術(shù)本身的特征,探討了其在計算機軟件開發(fā)過程中的具體運用。
1 分層技術(shù)的概念及特征
1.1 分層技術(shù)的概念
在計算機軟件開發(fā)過程中,若要充分發(fā)揮分層技術(shù)在計算機領(lǐng)域中具有的優(yōu)勢,人們首先應(yīng)對分層技術(shù)的概念及特征進行一定的認(rèn)識與理解,結(jié)合掌握的知識及理論對該項技術(shù)進行深層次的運用。在計算機軟件開發(fā)領(lǐng)域中,分層技術(shù)即是對軟件系統(tǒng)進行抽象的分層實踐,在計算機軟件中存在著多個層次,每一個層次都代表著不同的含義,且由多個層次形成一系列的垂直系統(tǒng),由上而下。同時,在開發(fā)軟件的同時,每個系統(tǒng)層次之間既相互聯(lián)系又相互制約,從而形成一個完整的軟件系統(tǒng)?,F(xiàn)如今,隨著社會經(jīng)濟的不斷發(fā)展及人們生活水平的不斷提升,單層結(jié)構(gòu)的軟件系統(tǒng)已不能滿足人們的生活需求,促使雙層結(jié)構(gòu)及多層結(jié)構(gòu)的軟件系統(tǒng)得到了一定的發(fā)展。隨著技術(shù)的不斷進步,高層次結(jié)構(gòu)的軟件系統(tǒng)已逐漸得到了發(fā)展的必要。由此可見,軟件系統(tǒng)的開發(fā)是一個不斷進步與發(fā)展的過程。
1.2 分層技術(shù)的特征
在計算機軟件開發(fā)的過程中,分層技術(shù)具有著廣泛的應(yīng)用,主要是由于其本身具備明顯的特征和優(yōu)勢。首先,在計算機軟件開發(fā)的質(zhì)量問題上,分層技術(shù)可以在很大程度上提高軟件性能,保證在軟件開發(fā)的過程中不同層次之間具有緊密的聯(lián)系。從一定層面上看,分層技術(shù)主要著重于軟件系統(tǒng)中不同層次之間的構(gòu)架,確保其存在著必要的內(nèi)在聯(lián)系,便于在實踐過程中將復(fù)雜多樣的軟件內(nèi)容進行相應(yīng)的簡化,從而利于技術(shù)人員進行高效的工作。其次,分層技術(shù)在軟件開發(fā)過程中具備明顯的穩(wěn)定性,當(dāng)計算機軟件某個系統(tǒng)出現(xiàn)了一定的變化時,其僅可能會對其上下層次系統(tǒng)產(chǎn)生一定的影響,并不會對計算機軟件整體產(chǎn)生變化。此外,在實現(xiàn)不同軟件之間的無縫連接時,分層技術(shù)也可起到一定的作用,主要是其具備自助開發(fā)和使用的成效,只需確保不同軟件具備統(tǒng)一的連接端口,從而更加便利了軟件系統(tǒng)的使用。
2 分層技術(shù)在計算機軟件開發(fā)中的應(yīng)用
2.1 雙層技術(shù)的應(yīng)用
在計算機軟件系統(tǒng)開發(fā)的過程中,雙層技術(shù)主要是由服務(wù)器和客戶端設(shè)備組成的,其中客戶端的主要功能是為客戶提供一定的使用界面,方便客戶理解軟件的應(yīng)用及其用途;而服務(wù)器的主要作用是接受客戶端發(fā)出的信息,然后通過服務(wù)器本身的查詢功能為客戶提供一定的信息,達到為客戶服務(wù)的作用。在客戶使用數(shù)量不多的情況下,或者軟件服務(wù)器本身的工作性能較好的情況下,雙層技術(shù)能夠達到很好的工作性能,但是一旦計算機軟件系統(tǒng)的使用人數(shù)增加時,軟件系統(tǒng)的反應(yīng)時間、效率就會大大降低,甚至?xí)o客戶的個人信息造成一定的威脅,不能很好地滿足客戶的需求,因此計算機軟件開發(fā)工作亟需高層次的軟件技術(shù)加以完善。
2.2 三層技術(shù)的應(yīng)用
相比較于雙層技術(shù)的使用設(shè)備,三層技術(shù)在雙層技術(shù)的基礎(chǔ)上又增加了一個服務(wù)器設(shè)備,可以在一定程度上提高軟件系統(tǒng)的使用效率。新增加的服務(wù)器主要用于存儲數(shù)據(jù),能夠很好地提高客戶端的處理信息能力,滿足客戶的使用需求。此外,三層技術(shù)相比較于雙層技術(shù)來說,其還多增加了一個設(shè)備端口,其中三個端口主要是界面層、數(shù)據(jù)層、處理層,三個端口在使用過程中分工明確,能夠有效地提高計算機的工作效率。但是在實際的軟件開發(fā)過程中,三層技術(shù)仍然存在著一定的不足之處,這就需要軟件開發(fā)工作人員對雙層技術(shù)和三層技術(shù)的特點進行綜合考慮與研究,旨在更好地提高計算機的使用性能。
2.3 四層技術(shù)的應(yīng)用
隨著社會經(jīng)濟的不斷發(fā)展,生活中產(chǎn)生的數(shù)據(jù)庫也越來越強大,此時三層技術(shù)在計算機軟件開發(fā)的過程中無法滿足系統(tǒng)的需求,因此則需要更高一層次的技術(shù)加以應(yīng)用,從而便使四層技術(shù)在社會中得到了一定的發(fā)展。四層技術(shù)主要是在三層技術(shù)的基礎(chǔ)上進行完善的,該技術(shù)的主要功能有處理層、Web層、數(shù)據(jù)層以及存儲層,其主要應(yīng)用過程是系統(tǒng)處理層對客戶的需求進行一定的分析,然后將數(shù)據(jù)層中的信息結(jié)果傳遞給Web層,通過信息轉(zhuǎn)化功能實現(xiàn)數(shù)據(jù)庫與計算機的展現(xiàn)效果。
2.4 五層技術(shù)的應(yīng)用
隨著科學(xué)技術(shù)的日新月異,五層技術(shù)的發(fā)展也應(yīng)運而生。五層技術(shù)的系統(tǒng)結(jié)構(gòu)是在四層技術(shù)的基礎(chǔ)上加以改善的,該項技術(shù)對計算機軟件進行了更加細(xì)化的分層,形成了一定的資源層,使軟件結(jié)構(gòu)具備了多樣性的組件,從而進一步提升了計算機軟件應(yīng)用的效率,有效地提高了計算機軟件的質(zhì)量。但是在現(xiàn)如今的實際生活中,五層技術(shù)在計算機軟件開發(fā)過程中并沒有得到廣泛的運用,但也許在不久的將來,該項技術(shù)會得到人們廣泛的關(guān)注,從而為計算機軟件開發(fā)市場提供更大的發(fā)展空間。
3 結(jié)束語
在新形勢下的社會發(fā)展過程中,人們對計算機軟件開發(fā)的要求已越來越嚴(yán)格,為了使計算機軟件能夠有效地滿足客戶的各方面需求,即需要在計算機軟件開發(fā)過程中對雙層、三層、四層、五層甚至更高層次的技術(shù)進行深入的認(rèn)識與研究,以此提高計算機軟件開發(fā)的效率,促進計算機領(lǐng)域更大的進步與發(fā)展。
參考文獻
[1]賈輝.芻議分層技術(shù)在計算機軟件開發(fā)中的應(yīng)用[J].中國高新技術(shù)企業(yè),2015,30:59-60.
[2]鄒濤.分層技術(shù)在計算機軟件開發(fā)中的應(yīng)用探討[J].電子技術(shù)與軟件工程,2014,13:90.
軟件前沿技術(shù)論文篇二:《嵌入式軟件系統(tǒng)開發(fā)技術(shù)及測試技術(shù)探討》
摘 要:隨著科技時代的快速發(fā)展,嵌入式軟件系統(tǒng)應(yīng)用發(fā)展也是非常迅速的,然而在硬件技術(shù)發(fā)展越來越穩(wěn)定時,嵌入式軟件系統(tǒng)穩(wěn)定性卻越來越差,因此嵌入式系統(tǒng)測試技術(shù)也應(yīng)運而生了。本文通過對嵌入式軟件系統(tǒng)特點的分析和研究,從而對其測試提出相應(yīng)的方法。
關(guān)鍵詞:嵌入式系統(tǒng);開發(fā)技術(shù);測試技術(shù)
嵌入式系統(tǒng)的廣義上是指那些具有控制、監(jiān)視等功能的設(shè)備以及那些具有輔助操作的機器。而在在狹義上的嵌入式系統(tǒng)是指由計算機通信技術(shù)為基礎(chǔ),以半導(dǎo)體等多項電子應(yīng)用技術(shù)和具體的面向?qū)ο髴?yīng)用對象結(jié)合后的更新?lián)Q代產(chǎn)品。因此往往是技術(shù)密集、投資強度大、高度分散、不斷創(chuàng)新的知識密集型系統(tǒng)。不難看出嵌入式系統(tǒng)是硬件與軟件的結(jié)合體,而且嵌入式系統(tǒng)在系統(tǒng)有繁簡之分,越是繁雜的系統(tǒng)越是創(chuàng)新知識的密集。
1 嵌入式系統(tǒng)的組成及發(fā)展
一般情況認(rèn)為嵌入式系統(tǒng)可以分成四個部分組成:微型處理器、存儲器、輸入輸出設(shè)備和應(yīng)用軟件。嵌入式行業(yè)的發(fā)展得益于嵌入式微型處理器和衛(wèi)星控制器的發(fā)展,這兩種組件的微型發(fā)展大大加速了汽車電器等的大力發(fā)展,同時也促進了計算機等高級計算機設(shè)備的快速發(fā)展。由此看來即使是在未來嵌入式系統(tǒng)的發(fā)展也還是一個熱門話題。因此在科技發(fā)達的世界里,對嵌入式系統(tǒng)的依賴性是越來越強,對嵌入式系統(tǒng)及其應(yīng)用的穩(wěn)定性和實時性要求也越來越高了,但是現(xiàn)在從掌握的各項數(shù)據(jù)上來看嵌入式系統(tǒng)表現(xiàn)出的穩(wěn)定性卻越來越令人擔(dān)憂。
嵌入式行業(yè)是從二十世紀(jì)七十年代發(fā)展至今,經(jīng)歷了四十余年的發(fā)展,從最簡單的單反機應(yīng)用到現(xiàn)在的汽車,家電,通信裝置等大規(guī)模應(yīng)用,性能上也越來越突出,價格上也是越來便宜。
2 嵌入式系統(tǒng)的開發(fā)技術(shù)
2.1 嵌入式系統(tǒng)的特點
嵌入式計算機系統(tǒng)是是整個嵌入式系統(tǒng)中重要的部分,主要有三個部分組成:硬件層、中間層、軟件層。嵌入式系統(tǒng)是指硬件和軟件的結(jié)合體,這是嵌入式系統(tǒng)的最基本特點。
嵌入式系統(tǒng)內(nèi)核小,比常見的windows系統(tǒng)的內(nèi)核小很多,畢竟嵌入式系統(tǒng)一般是應(yīng)用于小型電子裝置,因此所占資源小是嵌入式系統(tǒng)的一大特點。
嵌入式系統(tǒng)的專用性很強。嵌入式系統(tǒng)的個性化很強,因為嵌入式系統(tǒng)中的軟件與硬件的結(jié)合性很強,因此即使是同種品牌的不同型號產(chǎn)品,他們使用的嵌入式系統(tǒng)都會做出一定修改。
系統(tǒng)簡單,在嵌入式系統(tǒng)中一般沒有對系統(tǒng)軟件和應(yīng)用軟件的嚴(yán)格區(qū)分界線,因為內(nèi)存小等原因,要求嵌入式系統(tǒng)簡單不復(fù)雜,容易調(diào)試等。為了提高系統(tǒng)的性能一般都是采用將軟件固化在存儲器芯片中。
2.2 嵌入式系統(tǒng)開發(fā)過程
對于嵌入式系統(tǒng)的開發(fā)一般需要先建立開發(fā)環(huán)境,而有經(jīng)驗的程序員一般都會選擇在使用Redhot Linux系統(tǒng),全部或定制安裝,在上網(wǎng)上下載相應(yīng)的CGG交叉編譯器,也可以是安裝廠家提供的相應(yīng)交叉編譯器。
在建立好編譯環(huán)境后,再要選擇開發(fā)主機,這是一項關(guān)鍵的選擇,開發(fā)主機參數(shù)的一般都是那么固定的幾種,在常見的就是配置MINICOM,一般的參數(shù)為波特率115200 Baud/s,數(shù)據(jù)位8位,停止位為1,9,無奇偶校驗,軟件和硬件流控都設(shè)置為無。MINICOM軟件的作用是作為調(diào)試嵌入式開發(fā)板的信息輸出的監(jiān)視器和鍵盤輸入的工具。配置網(wǎng)絡(luò)主要是配置NFS網(wǎng)絡(luò)文件系統(tǒng),需要關(guān)閉防火墻,簡化嵌入式網(wǎng)絡(luò)調(diào)試環(huán)境設(shè)置過程。這些步驟都至關(guān)重要不容有錯。
建立引導(dǎo)裝載程序BOOTLOADER,然后從網(wǎng)站上下載一些源代碼,其中包括大量嵌入式系統(tǒng)驅(qū)動程序代碼。然后根據(jù)芯片的型號種類進行及源代碼的修改工作,而有些芯片沒有內(nèi)置引導(dǎo)裝載程序,這就需要程序員來編寫開發(fā)板上Flash的燒寫程序。但是有的不能編寫燒寫程序,這就需要程序員對開源代碼上進行修改,使開發(fā)板上可以編寫相應(yīng)燒寫程序。
下載已經(jīng)移植好的Linux,再添加定制硬件驅(qū)動程序,然后進行調(diào)試和修改。
建立根文件系統(tǒng),可以在網(wǎng)上下載相應(yīng)軟件進行工裁剪,時期產(chǎn)生哪一個最基礎(chǔ)的根文件系統(tǒng),然后根據(jù)產(chǎn)品應(yīng)用的需要來添加其他的應(yīng)用程序,根文件在系統(tǒng)中存在的形式一般為只讀文件是不能修改的,因此要使用相關(guān)的軟件將修改好的根目錄系統(tǒng)燒寫成鏡像文件。
建立應(yīng)用程序的Flash磁盤分區(qū),這是一般是采用特有的文件系統(tǒng),這需要在內(nèi)核中提供相應(yīng)的文件系統(tǒng)驅(qū)動,這個根據(jù)使用Flash的不同進行不同的磁盤分區(qū)。
開發(fā)應(yīng)用軟件,這個可以存放在根文件系統(tǒng)中,也可以存放相應(yīng)的Flash磁盤中,有的應(yīng)用軟件不存放在根文件系統(tǒng),而是直接將應(yīng)用程序與內(nèi)核設(shè)計在一起。
最后就是燒寫內(nèi)核,根文件系統(tǒng)和相應(yīng)的應(yīng)用程序,再就是中的測試產(chǎn)品,調(diào)試產(chǎn)品,使用產(chǎn)品,最終就是發(fā)布產(chǎn)品。
2.3 嵌入式系統(tǒng)的開發(fā)技術(shù)
雖然嵌入式系統(tǒng)開發(fā)的流程在外行眼里看起來很是繁雜,我們也可以看出其中有很多的修改源代碼,燒寫程序的過程,但是這些過程在程序員眼中是一步也不能出錯,甚至有些還可以優(yōu)化,這是在開發(fā)嵌入式系統(tǒng)原則。在開發(fā)系統(tǒng)上,程序員必須遵守認(rèn)真負(fù)責(zé)的態(tài)度,在燒寫程序后,必須認(rèn)真檢測燒寫程序的真確性等。
2.4 嵌入式系統(tǒng)的廣泛應(yīng)用
在科技快速發(fā)展的現(xiàn)在,幾乎所有的電器中都應(yīng)用了嵌入式系統(tǒng)。達到航空母艦,導(dǎo)彈,小到微型處理器,微型控制器都在使用嵌入式系統(tǒng)。如今嵌入式系統(tǒng)的發(fā)展的是日新月異,不同產(chǎn)品使用嵌入式系統(tǒng)大同小異,這些嵌入式系統(tǒng)的原理大致相同但是在應(yīng)用上卻不盡相同,這是嵌入式人才需求的原因。
3 嵌入式系統(tǒng)的調(diào)試
3.1 嵌入式系統(tǒng)軟件的調(diào)試
在開發(fā)過程就可以看出,在匹配好CPU之后,其他的一些驅(qū)動,大多是程序員們修改源程序后編寫的相應(yīng)驅(qū)動程序,還有有的是將應(yīng)用程序和內(nèi)核設(shè)計在一起了,因此測試,過程更是發(fā)雜。
3.2 嵌入式系統(tǒng)的調(diào)試
主要分為幾大步驟,一是驅(qū)動調(diào)試,二是分組調(diào)試,三是整體調(diào)試,四是最終調(diào)試。對于驅(qū)動調(diào)試,是建立在修改源代碼后程序員們編寫的磁盤驅(qū)動,CPU驅(qū)動等驅(qū)動程序,這些程序都是需要調(diào)試,但是這些調(diào)試畢竟只是一種粗率的調(diào)試,并不能很好的觀測到最終的整體效果。接著就應(yīng)該進行分組調(diào)試任務(wù),這是將所有驅(qū)動應(yīng)用程序燒寫在一起后的一次階段性的程序調(diào)試,這次也只能是在理論上測試嵌入式系統(tǒng)的穩(wěn)定性和實用性,還是無法真正的去了解硬件與軟件結(jié)合在一起的真實效果,但是這一步也可以檢測出一些應(yīng)用軟件與系統(tǒng)結(jié)合后的兼容性等問題,這里也可以檢測出程序的合理性等問題。再就是整體調(diào)試,就是將軟件與硬件結(jié)合在一起,檢測最后的整體性效果,軟件與系統(tǒng)的兼容性也是很關(guān)鍵的,這一切都是很發(fā)雜,這一步是至關(guān)重要,是重點監(jiān)測軟件與硬件間的兼容性和軟件開發(fā)的合理性。最后是進行嵌入式系統(tǒng)組裝進預(yù)期產(chǎn)品里,只是最終檢測嵌入式系統(tǒng)是否達到了預(yù)期效果。
4 結(jié)束語
嵌入式系統(tǒng)的開發(fā)技術(shù)和調(diào)試技術(shù),這兩種技術(shù)在很多時候是可以交錯的,比如在開發(fā)嵌入式系統(tǒng)時就有幾次的開源代碼的修改和程序的燒寫過程,這些過程中都是程序員調(diào)試的關(guān)鍵時期,有一句諺語叫做“千里之堤毀于蟻穴”,而在每一次的源代碼修改或燒寫過程中如果出現(xiàn)了失誤,或一些bug的忘了處理,那么系統(tǒng)在以后的使用中會存在一些漏洞的。這些都是細(xì)節(jié)引起的失誤,這些也都是可以避免的,只要在調(diào)試過程中,認(rèn)真的做好了每一步,就可以就一點一點的加強嵌入式系統(tǒng)的穩(wěn)定性。
參考文獻:
[1]耿玉菊.嵌入式系統(tǒng)開發(fā)技術(shù)分析[J].牡丹江教育學(xué)院學(xué)報,2009.
[2]秦春燕,姚竹亭.嵌入式系統(tǒng)軟件測試的研究[J].機械管理開發(fā),2008.
軟件前沿技術(shù)論文篇三:《搜索引擎的前沿技術(shù)》
人工智能中的機器學(xué)習(xí)技術(shù)在基于語料的文本信息處理中獲得了快速發(fā)展,同時基于統(tǒng)計和經(jīng)驗的方法在超出傳統(tǒng)機器學(xué)習(xí)的范疇之外也發(fā)展出一些獨特的方法和技術(shù),這些應(yīng)用將會使下一代搜索引擎在技術(shù)上取得突破。
搜索引擎并非只是一個網(wǎng)絡(luò)上的應(yīng)用程序,它要用到信息檢索、人工智能、自然語言處理、分布式網(wǎng)絡(luò)并行計算技術(shù)、多媒體技術(shù)、數(shù)據(jù)庫技術(shù)、數(shù)據(jù)挖掘技術(shù)、數(shù)字圖書館等多領(lǐng)域的理論和技術(shù),具有很強的綜合性和挑戰(zhàn)性。
從技術(shù)發(fā)展角度講,隨著計算機的發(fā)展和互聯(lián)網(wǎng)的普及,對海量文本信息處理的需求越來越迫切,這使得人工智能中機器學(xué)習(xí)技術(shù)在基于語料的文本信息處理中獲得了快速發(fā)展。同時,基于統(tǒng)計和經(jīng)驗的方法在超出傳統(tǒng)機器學(xué)習(xí)的范疇之外發(fā)展出一些獨特的方法和技術(shù)。但是,自然語言處理中仍然存在許多尚未解決的問題,甚至是影響到自然語言處理的基礎(chǔ)性的核心問題。檢索專家Bruce R.Schatz預(yù)測,在自然語言理解沒有取得突破性進展之前,基于概念語義空間的文本信息組織與檢索,將在本世紀(jì)前10年起主要的作用。
語義索引
如何處理海量文本信息,特別是隨著網(wǎng)絡(luò)的飛速發(fā)展,如何快速為海量文本信息建立分類目錄有效地組織網(wǎng)上海量信息,以及如何建立具有某種程度語義的索引機制就是當(dāng)前乃至今后相當(dāng)一段時間的研究熱點。
美國Arizona大學(xué)的陳火斤鈞(Hsinchun Chen)教授首先提出基于概念的文本自動分類與語義檢索。概念語義空間實際上是基于概念空間的語義索引。這是為克服關(guān)鍵詞檢索過程中由于檢索詞的差異導(dǎo)致檢索結(jié)果差異而建立的支持相關(guān)概念的索引機制。該項技術(shù)成功地采用機器學(xué)習(xí)的方法實現(xiàn)了大量文本的自動分類、標(biāo)注與檢索。他采用此項技術(shù)成功地承接并完成了美國涉及多個領(lǐng)域的文本信息處理項目。
所謂概念語義空間,就是對文本集建立的能反映文本集中概念之間語義關(guān)系的一個索引。概念語義空間與文本檢索、搜索引擎、知識管理密切相關(guān),它是基于目前自然語言處理技術(shù)的進展?fàn)顩r而產(chǎn)生的。
這里所說的概念在形式上的表現(xiàn)是詞,但并不是所有的詞都是概念。概念是從語料中抽取出來的用于表明一類文檔特征的標(biāo)識詞,一類文檔可能有不同的概念來標(biāo)識。上面所說的語義詞典包括同義詞、近義詞。
采用語義詞典是建立語義索引的一種機制。語義詞典往往是手工建立的,但這樣建立的詞典不能針對要處理的語料提取語義關(guān)系,會降低檢索性能。例如,當(dāng)我們提到“錢鐘書”時就會自然聯(lián)想到“圍城”,提到“非典”自然就想起了“SARS”,如果語義詞典沒有建立這種語義關(guān)系(事先手工編輯的語義詞典很難提取這類“聯(lián)想”的語義)。當(dāng)我們用“非典”檢索時,就不能返回僅包含“SARS”的文本; 同樣僅用“錢鐘書”檢索,未必能檢索到錢鐘書所有著作的信息。解決這一問題的一個重要途徑是共現(xiàn)分析。通過統(tǒng)計同一類文本中兩個詞在同一篇文本中的共現(xiàn)率,可以發(fā)現(xiàn)類似的語義關(guān)聯(lián)。這種語義聯(lián)想的激活可以通過Hopfield網(wǎng)絡(luò)實現(xiàn),網(wǎng)絡(luò)的權(quán)值則由共現(xiàn)率確定。隨著技術(shù)的進展,還有許多其他自動形成語義詞典的方法不斷提出,其中很多都和機器學(xué)習(xí)有關(guān)。
查準(zhǔn)與查全的平衡
評價文本檢索系統(tǒng)性能的一個關(guān)鍵概念是“相關(guān)性”(relevance)。它是用來判斷獲取的文檔集合對于用戶需求滿足的程度。相關(guān)性是一個主觀的概念。相關(guān)性的度量不僅僅依賴于用戶的查詢和所搜索的文檔的集合,還與用戶的個人需求、偏好、知識、語言等有關(guān)系。
通常將“查準(zhǔn)率”和“查全率”這兩個指標(biāo)共同用來衡量檢索系統(tǒng)的性能。查準(zhǔn)率表明系統(tǒng)的精確性。查全率反映了系統(tǒng)的覆蓋性。這兩個量不是獨立的,其中一個指標(biāo)的提高往往以另一個指標(biāo)的降低為代價。
查準(zhǔn)率(Precision)是信息檢索的性能指標(biāo),定義為被檢索到的相關(guān)文檔數(shù)除以所有要檢索的文檔數(shù)。
查全率(Recall)是信息檢索的另一個性能指標(biāo)。定義為查找到的相關(guān)文檔數(shù)除以集合中全部相關(guān)文檔數(shù)的值。
在實際應(yīng)用中,有些用戶更加注重查準(zhǔn)率,而另外一些用戶則更加注重查全率。也有專家引入一個綜合了查全率與查準(zhǔn)率的指標(biāo)來衡量系統(tǒng)的性能。查準(zhǔn)率比較易于度量。對于所獲取的文檔集合,只要判斷每一篇文檔是否和給定查詢相關(guān)就可以了,其計算是比較直接的。而對于查全率的計算就相對困難一些,因為這意味著對于給定查詢,必須計算整個文檔集合中相關(guān)文檔的數(shù)目。當(dāng)文檔集合過大時,這是不可行的。
檢索返回結(jié)果過多,對于用戶來說冗余信息過多。解決這一問題的途徑之一是對檢索結(jié)果進行分類,目前主要是人工選擇有用信息,這樣的人工工作量太大,另外就是對檢索結(jié)果進行實時聚類,但這樣做處理速度跟不上,等待時間過長,用戶難以忍受。還有一種方式是事先分類并分類檢索,返回的結(jié)果也分類顯示,但對海量數(shù)據(jù)及時分類其粒度不可能太小。值得嘗試的辦法是基于事例的學(xué)習(xí),就是對搜索到的好的結(jié)果作為樣本,讓機器再次搜索。
機器學(xué)習(xí)技術(shù)與自然語言處理
統(tǒng)計方法在語音識別方面的成功,促進了類似方法在自然語言處理其他方面的應(yīng)用?,F(xiàn)在各種機器學(xué)習(xí)方法幾乎都應(yīng)用到了自然語言處理的不同方面,包括詞法、句法分析、歧義消除和理解、會話過程和信息抽取以及機器翻譯。然而,傳統(tǒng)的人工智能中的機器學(xué)習(xí)對計算語言學(xué)的研究貢獻有限。這是因為基于機器學(xué)習(xí)和基于經(jīng)驗的自然語言處理需要通過相互交流、相互促進才能發(fā)展。
現(xiàn)在自然語言處理中大多數(shù)機器學(xué)習(xí)的研究都借助了語音識別中特定的統(tǒng)計技術(shù),如隱馬爾科夫模型(Hidden Markov Models, HMMs)、概率上下文相關(guān)語法(Probabilistic Context Free Grammars, PCFGs)。其他各種學(xué)習(xí)算法包括決策樹、規(guī)則歸納、神經(jīng)網(wǎng)絡(luò)、基于示例的方法、貝葉斯(Bayesian)網(wǎng)絡(luò)方法、歸納邏輯程序、基于理解的學(xué)習(xí)。
遺傳算法也能用于自然語言處理,并且在特定的應(yīng)用中有其優(yōu)勢。另外,一些特別的機器學(xué)習(xí)算法如主動學(xué)習(xí)、推進(Boosting)算法、修正學(xué)習(xí)、有知識背景的構(gòu)造歸納學(xué)習(xí)、理論修正、經(jīng)驗評價法、PAC (Probably Approximately Correct)學(xué)習(xí)等對處理自然語言問題是非常有用的。事實上已經(jīng)有一些文獻提出了利用機器學(xué)習(xí)技術(shù)進行自然語言處理的特定方法。這表明目前的研究已經(jīng)不局限于研究UCI(University of California,Irvine)數(shù)據(jù)庫中由標(biāo)準(zhǔn)數(shù)據(jù)集提供的特征向量的分類問題。計算語言研究組織和機構(gòu)已經(jīng)收集了很多有趣的涉及許多自然語言問題的文本數(shù)據(jù)集。其中有些問題通過選取合適的特征可以退化為標(biāo)準(zhǔn)的分類問題,但是其他一些問題需要采用或建立復(fù)雜的數(shù)據(jù)結(jié)構(gòu),如完備的句子或解析樹來解決。
以上表明,機器學(xué)習(xí)能為自然語言處理提供一系列非傳統(tǒng)的學(xué)習(xí)方法的同時,還能提供一般的方法論的指導(dǎo)。反過來,自然語言處理為機器學(xué)習(xí)提出了各種有趣的和富有挑戰(zhàn)性的問題。這些問題常常具有一些特定的特征,如: 非常大的特征空間和極度稀疏的數(shù)據(jù)。另外,統(tǒng)計語言學(xué)對機器學(xué)習(xí)的一個不太明顯的潛在貢獻是引入了一些新的機器學(xué)習(xí)算法,如最大熵方法、指數(shù)模型方法。這些方法在傳統(tǒng)機器學(xué)習(xí)的文獻中沒有很好地論述。它們可能會像HMMs和PCFGs在分子生物學(xué)中的成功應(yīng)用一樣有效地被用于其他機器學(xué)習(xí)問題。
機器學(xué)習(xí)技術(shù)與自然語言處理任務(wù)有著密切的聯(lián)系,表中列出了他們之間的關(guān)聯(lián)關(guān)系。1999年Claire Cardie和Raymond J. Mooney編輯出版了機器學(xué)習(xí)雜志的一本專緝,該專輯收集了當(dāng)時在自然語言處理領(lǐng)域機器學(xué)習(xí)技術(shù)的典型應(yīng)用。其中還介紹了一些端到端的自然語言應(yīng)用,如Golding & Roth 的感知上下文的拼讀修正系統(tǒng),以及完整的信息抽取系統(tǒng)。該專輯特別提到Soderland的概念抽取模式和Bikel的能夠準(zhǔn)確識別姓名、日期、時間、數(shù)字的系統(tǒng)。
目前,自然語言處理和信息檢索在技術(shù)上沒能很好地融合。在文本檢索過程中如果只使用關(guān)鍵詞匹配技術(shù)往往會遇到詞匯不匹配,這是因為存在表達差異。關(guān)鍵詞匹配檢索模式通?;谶@樣一種基本假設(shè): 僅在一個文檔含有與查詢完全相同的詞匯時,它們才相關(guān)。這種相關(guān)性匹配實際上是基于表層的匹配(Surface-Based Matching)。然而,人類的自然語言中,隨著時間、地域、領(lǐng)域等因素的改變,同一概念可以用不同的語言表現(xiàn)形式來表達。因此即使對于同一概念的檢索,不同的用戶可能使用不同的關(guān)鍵詞來查詢,而基于表層的匹配不可能檢索到同一概念的多種語言表達形式。因此,詞匯不匹配將導(dǎo)致系統(tǒng)的查全率降低。從根本上說是目前機器對自然語言不能完全理解,缺乏對概念的語義表達支持。從目前技術(shù)狀況來看,盡管我們付出了大量努力,但是要達到使計算機對自然語言完全理解這一目標(biāo)還差得很遠(yuǎn)。對于解決上述問題在目前可能達到的目標(biāo)是通過機器學(xué)習(xí)對原始語料中的概念之間的語義關(guān)聯(lián)進行挖掘,對這些語義關(guān)聯(lián)給出合理的表示,從而產(chǎn)生一些常識性的概念語義。
概念語義空間技術(shù)能很好移植到中文自然語言處理方面。中科院王永成教授領(lǐng)導(dǎo)的課題組開發(fā)出了一個中文概念檢索系統(tǒng),該系統(tǒng)支持具有一定模式的自然語言查詢和基于概念的檢索,并具有概念表達擴充功能; 用戶可以添加系統(tǒng)原來不熟悉的概念,而且可以在用戶的幫助下排除差錯; 可以提供200字的精確摘要; 能進行新聞去重,并且改進了國際著名網(wǎng)站Google的排序算法; 系統(tǒng)的 Crawler(自動搜索軟件)對各大新聞網(wǎng)站自行跟蹤、更新,并且根據(jù)查詢動態(tài)調(diào)整。
中科院計算所在國家自然科學(xué)基金資助下,采用概念語義空間的思想,實現(xiàn)了一個概念語義檢索系統(tǒng)GHunt。該系統(tǒng)采用網(wǎng)絡(luò)蜘蛛采集網(wǎng)頁,以概念語義空間組織網(wǎng)頁,對網(wǎng)頁建立語義索引,實現(xiàn)基于概念的智能互動語義查詢,以不同粒度摘要或全文方式展現(xiàn); 對專題事件展現(xiàn)其來龍去脈; 對多媒體信息實現(xiàn)基于內(nèi)容的圖文聯(lián)合檢索。
建立概念語義空間涉及多方面的文本信息處理技術(shù),包括海量文本自動分類聚類技術(shù)、自動標(biāo)注技術(shù)、語義索引、語義聯(lián)想檢索技術(shù)。在這一系統(tǒng)中集成了網(wǎng)頁采集多模式定向采集技術(shù)、基于粗糙集的文本分類技術(shù)、基于群體智能的螞蟻聚類法、基于直接模糊聚類的概念聚類、專題自組織等自有研究成果。聯(lián)索科技開發(fā)的IFACE專業(yè)搜索技術(shù)聚焦于適用和實用的更小搜索單位,利用基于內(nèi)容的語義計算模型,發(fā)現(xiàn)精深的信息內(nèi)容,識別信息并將信息整理好,拼裝出表格化信息庫,返回給用戶更加準(zhǔn)確而簡化的內(nèi)容,而不僅僅是得到包含關(guān)鍵字的網(wǎng)頁。
搜索引擎其他新技術(shù)
1. P2P方式的搜索引擎
搜索引擎的實現(xiàn)可以采用集中式體系結(jié)構(gòu)和分布式體系結(jié)構(gòu)。當(dāng)系統(tǒng)規(guī)模達到一定程度(如網(wǎng)頁數(shù)達到億級)時,必然要采用某種分布式方法以提高系統(tǒng)性能。P2P方式的搜索引擎就是基于此目的誕生的。搜索引擎的各個組成部分除了用戶接口之外都可以進行分布: 搜索器可以在多臺機器上相互合作、相互分工進行信息發(fā)現(xiàn),以提高信息發(fā)現(xiàn)和更新速度; 索引器可以將索引分布在不同的機器上,以減小索引對機器的要求; 檢索器可以在不同的機器上進行文檔的并行檢索,以提高檢索的速度和性能。
P2P是peer-to-peer的縮寫。peer在英語里有“(地位、能力等)同等者”、“同事”和“伙伴”等意義。因此,P2P也就可以理解為“伙伴對伙伴”的意思,或稱為對等網(wǎng)。目前人們認(rèn)為其在加強網(wǎng)絡(luò)上人的交流、文件交換、分布計算、協(xié)同、深度檢索等方面大有前途。
P2P軟件能在互聯(lián)網(wǎng)中迅速地普及,其中起到主導(dǎo)作用的是一款P2P文件共享軟件Napster。Napster技術(shù)在1999年由當(dāng)時在美國東北大學(xué)就讀的Shawn Fanning開發(fā)成功,并迅速在眾多MP3數(shù)字音樂愛好者中傳播開來。人們可以通過Napster在網(wǎng)絡(luò)上搜索自己需要的MP3音樂,并從任一臺聯(lián)網(wǎng)使用Napster的計算機中下載。P2P使得參與網(wǎng)絡(luò)的各個主機都能夠提供服務(wù),同時也可以享受到來自所有其他主機所提供的服務(wù)。
P2P網(wǎng)絡(luò)具有集中式服務(wù)網(wǎng)絡(luò)所缺乏的優(yōu)勢: 可擴展性強、容錯性好、成本低、充分利用分布資源。這些特點使得P2P架構(gòu)在文件共享、分布式存儲、搜索引擎、分布式計算、傳感器網(wǎng)絡(luò)、協(xié)作軟件中有寬廣的應(yīng)用前景。同時其所強調(diào)的“以人為本”的理念,將深刻地體現(xiàn)于下一代互聯(lián)網(wǎng)運營模式。
2.跨粒度檢索
信息呈現(xiàn)個性化、可視化、綜合化的特征,但現(xiàn)有信息檢索結(jié)果一般沒有粒度區(qū)別,只是若干檢索結(jié)果的羅列,沒有對檢索結(jié)果的分析綜合,沒有形成統(tǒng)一的綜合摘要提供給用戶。另外很少對用戶關(guān)心的領(lǐng)域信息進行處理。信息呈現(xiàn)方式單一,很少以可變粒度的可視化的圖形方式呈現(xiàn),特別是多篇摘要技術(shù)用于大量文檔的綜述。
概念語義空間的可視化
概念語義空間是在網(wǎng)絡(luò)信息急劇增長的條件下產(chǎn)生的,它為快速、有效地組織海量、動態(tài)變化、半結(jié)構(gòu)化的網(wǎng)絡(luò)文本信息提供了機器學(xué)習(xí)手段。在自然語言理解沒有取得突破性進展之前,基于概念語義空間的文本信息組織與檢索,將在本世紀(jì)前10年起主要的作用。概念語義空間的可視化是近來發(fā)展的一個方向。采用概念語義空間技術(shù)將文本組織起來以后,如何向用戶個性化地展現(xiàn)檢索結(jié)果就成為一個關(guān)鍵問題?,F(xiàn)有的逐個瀏覽網(wǎng)頁的方式顯然不能滿足用戶個性化的需求,因此最近有關(guān)主題探測與專題組織方面的研究在美國成為研究熱點。這項研究將涉及自然語言處理的幾乎所有方面。自然語言處理的研究成果將促進該項研究的深入開展。