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