專利名稱:一種基于結(jié)構(gòu)化自然語言的搜索系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及互聯(lián)網(wǎng)技術(shù),尤其涉及一種基于結(jié)構(gòu)化自然語言的搜索系統(tǒng)。
背景技術(shù):
商業(yè)世界中主要討論需求和供應(yīng)的問題,一般的理解為需求可能是問題,而供應(yīng) 可能是解決方案;互聯(lián)網(wǎng)已經(jīng)為問題和解決方案提供了全球性的基礎(chǔ)設(shè)施。例如,基于關(guān)鍵 字的谷歌等搜索引擎可以被視為一個特殊的問題解決者查找網(wǎng)絡(luò)上包含由用戶提供的關(guān) 鍵字的文件。 一個問題/回答(問答,Q&A)系統(tǒng),可視為另一特殊問題解決者查找問題的 答案(基于系統(tǒng)所收集的文檔);基于關(guān)鍵字的搜索引擎和問答系統(tǒng)在試圖解決問題方面 都已經(jīng)做了非常的出色工作。但是,從解決問題的角度來看,它們?nèi)匀贿h(yuǎn)遠(yuǎn)不夠,很容易發(fā) 現(xiàn),不是所有問題都能從我們所討論的前述兩個系統(tǒng)中找到答案;任何計算機(jī)科學(xué)家可以 輕而易舉地拿出如下一份清單"可計算問題及其他數(shù)學(xué)問題",解決這些問題需要計算的 參與;"數(shù)據(jù)庫搜索問題",如查找超市中不到2美元每磅蘋果的搜索問題;"合成問題",如 建立一個程序,抽取一系列數(shù)字的集合并且返回一個排列組合;"推理問題",諸如從這些事 實(shí)中可以推理出什么問題?;"數(shù)據(jù)分析問題",如這組圖片中它們顯示了哪些共同的模式? 有許多方法可能被采取去解決這個問題,但這不是通過搜索引擎或問答系統(tǒng)能解決的一個 問題;"個人'問題",如某人A和某人B,他們互相都不喜歡對方,但是我要怎樣才能讓他們 一起工作?這可能不是一個科學(xué)的問題及其解決方案可能會非常依賴經(jīng)驗(yàn),諸如社會考慮 等等。我們的主要目的不在于把所有的問題進(jìn)行分類,而是匹配問題的解決方案,互聯(lián)網(wǎng)在 連接問題和解決方案之間為我們提供了基礎(chǔ)設(shè)施,但我們還沒有充分利用這些基礎(chǔ)設(shè)施; 到目前為止,它已是有益的交易,我們可以將"交易"這個概念擴(kuò)展為"問題"和"解決方案" 的平臺。
發(fā)明內(nèi)容
針對以上缺陷,本發(fā)明的目的是提供一種基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),進(jìn)而
允許互聯(lián)網(wǎng)用戶以一個或者多個結(jié)構(gòu)化自然語言描述一個問題,并使得互聯(lián)網(wǎng)服務(wù)提供者
具備以一個或者多個結(jié)構(gòu)化自然語言描述一個服務(wù)的能力;并將用戶的問題描述語句與所
有服務(wù)能力描述語句進(jìn)行比對,反饋匹配的服務(wù)。 為實(shí)現(xiàn)上述目的,本發(fā)明通過以下技術(shù)方案實(shí)現(xiàn) —種基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),該系統(tǒng)包括 (1) —個計算機(jī)接口 ,該接口可連接到用戶,使用戶可以通過該接口撰寫基于一個 或多個結(jié)構(gòu)化自然語言的問題描述語句; (2) —個計算機(jī)接口,該接口可以連接到服務(wù)提供者去組合基于一個或多個結(jié)構(gòu) 化自然語言的服務(wù)能力描述語句以及注冊該系統(tǒng)的服務(wù); (3) —系列計算機(jī)程序的集合,它們能夠編譯一個或多個結(jié)構(gòu)化自然語言的描述 語句;
(4) —系列計算機(jī)程序的集合,它們能夠由一個基于一個或多個結(jié)構(gòu)化自然語言 的問題描述語句,從互聯(lián)網(wǎng)絡(luò)上匹配具有對應(yīng)能力的所有可能服務(wù)。 本系統(tǒng)包括一個能夠存儲所有已經(jīng)被注冊服務(wù)能力句子的能力語句存儲器,還包 括一個具有對反饋的服務(wù)進(jìn)行排序的排序模塊和一個用于用戶對該服務(wù)進(jìn)行評價的評級 模塊。 本系統(tǒng)設(shè)置允許用戶去定義一個句子為一個變量并將其放在另一個句子使用;一 個或多個結(jié)構(gòu)化能力語句能夠描述一個服務(wù)。 該搜索系統(tǒng)所包含的一系列計算機(jī)程序,能夠編譯一個用戶的問題描述語句并搜 索匹配的服務(wù)并執(zhí)行;還可接收并提供給用戶配對服務(wù)執(zhí)行后返回的結(jié)果;能夠根據(jù)基于 用戶的結(jié)構(gòu)化自然語言問題描述語句,匹配以結(jié)構(gòu)化自然語言表述的能力語句并反饋所有 可能符合匹配條件的服務(wù)。 本系統(tǒng)包括實(shí)現(xiàn)一個組合結(jié)構(gòu)化自然語言的問題描述語句或者服務(wù)能力描述語 句的方式,該方式包括 (1)提示用戶指定或輸入一個動詞短語;
(2)提示用戶指定或輸入零個、一個或多個"GIVEN"短語;
(3)提示用戶指定或輸入零個、一個或多個"WITH"短語;
(4)提示用戶指定或輸入零個、一個或多個條件從句。 本系統(tǒng)所述的一個可匹配結(jié)構(gòu)化自然語言的問題描述語句與一個結(jié)構(gòu)化自然語 言服務(wù)能力語句的計算方法,包括匹配GIVEN短語、匹配WITH短語、匹配動詞短語及匹配條 件從句。 以上本系統(tǒng)所述的一個問題描述語句可與多個能力語句的組合體進(jìn)行匹配;一個 能力語句可部分匹配一個結(jié)構(gòu)化的問題描述語句并反饋相應(yīng)的結(jié)果。
本系統(tǒng)所采用的問題解決計算實(shí)現(xiàn)方式包括
(1)提示用戶選擇一個結(jié)構(gòu)化的自然語言; (2)提示用戶通過選定的結(jié)構(gòu)化自然語言去組合一個問題描述語句; (3)將問題描述語句與以結(jié)構(gòu)化自然語言所表達(dá)的描述能力語句進(jìn)行匹配,這些
相應(yīng)服務(wù)已經(jīng)被注冊,并且能夠返回那些與用戶查詢語句匹配的服務(wù); (4)提示用戶選擇一個或多個匹配服務(wù)。 該系統(tǒng)可實(shí)現(xiàn)當(dāng)服務(wù)被選擇后,指示用戶如何使用這些匹配服務(wù)以及指示用戶如 何去訂閱這些匹配服務(wù)。 本發(fā)明所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng)的有益效果為所提供的互聯(lián)網(wǎng)搜 索系統(tǒng),可允許互聯(lián)網(wǎng)用戶區(qū)搜索基于由一個或者多個結(jié)構(gòu)化自然語言組成的問題描述的 各種服務(wù)(工具、數(shù)據(jù)庫、聯(lián)機(jī)服務(wù)等)。
下面根據(jù)實(shí)施例和附圖對本發(fā)明作進(jìn)一步詳細(xì)說明。 圖1是本發(fā)明實(shí)施例所述基于結(jié)構(gòu)化自然語言的搜索系統(tǒng)具體實(shí)現(xiàn)過程示意圖;
圖2是本發(fā)明實(shí)施例所述基于結(jié)構(gòu)化自然語言的搜索系統(tǒng)的結(jié)構(gòu)化自然語言組 合的具體實(shí)現(xiàn)過程示意 圖3是本發(fā)明實(shí)施例的搜索系統(tǒng)控制流的一個具體實(shí)現(xiàn)過程示意圖。
具體實(shí)施例方式
如圖l所示,本發(fā)明所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其中所涉及結(jié)構(gòu)化 的自然語言搜索系統(tǒng)(SNLSS)為用戶提供了一個問題驅(qū)動型的接口,可以根據(jù)用戶的問題 搜索一個服務(wù);該服務(wù)可能是一種在線服務(wù)、線下服務(wù)、在線數(shù)據(jù)庫、或者是提供了 API并 且能夠組成更多復(fù)雜服務(wù)的網(wǎng)絡(luò)服務(wù)。 一個搜索系統(tǒng)的具體實(shí)現(xiàn)過程包括用戶界面110、 服務(wù)提供者界面120、能力庫130、及問題與能力匹配140,在用戶界面110中,用戶可以以結(jié) 構(gòu)化的自然語言形式形成一個問題描述語句;在服務(wù)提供者界面120中,一個解決方案得 提供者可以以結(jié)構(gòu)化的自然語言形式描述一個服務(wù)的能力;能力庫130存儲了服務(wù)提供商 能夠提供的所有的能力語句;問題與能力匹配140即匹配查詢語句和同樣以結(jié)構(gòu)化自然語 言描述的能力語句,并返回這些能夠匹配問題描述語句的能力描述語句及其相應(yīng)的服務(wù)。 其中所涉及結(jié)構(gòu)化自然語言是自然語言的子集。相較于自然語言,每個結(jié)構(gòu)化
自然語言的句子在其語法上至少有一個附加的約束;例如,我們可以定義一個SNL(稱為 SNL-1)如下(保留關(guān)鍵字以大寫字母表達(dá)) [GIVEN〈麗n phrase〉[AS $〈variable_id>] ] * [WITH〈麗n phrase〉[AS $〈variable_id>] ] * 〈verb phrase> [THAT〈condition clause〉A(chǔ)ND THAT〈condition clause〉____] 我們將"[GIVEN〈noun phrase〉]"稱為一個GIVEN短語,"[WITH〈nounphrase〉]"稱 為一個WITH短語;在上述語法中,第一個條件修改前面指定的句子名詞,符號[...]表示中 括號里面的文本是可選的,符號[...]表示中括號里面的文本可能會出現(xiàn)零,一次或多次; "AS S〈variable-id〉"定義一個變量的名稱的前綴必須是'$',變量一旦確定,可用在動 詞短語和任何條件語句中;任何在一個GIVEN短語中所定義的變量都能用在一個WITH短語 中。 以下是一些通過SNL-1所描述的例子, 一個句子是查詢句或能力句取決于此(服 務(wù)消費(fèi)者或服務(wù)供應(yīng)商)輸入該句子例1 :給出一個圖像集,分類該數(shù)據(jù)庫中圖像的點(diǎn)集(blobs)。GIVEN a dataset of imagesClassify blobs of image此例注解為輸入一個圖像集給出圖像中的點(diǎn)集例2 :給出一個圖像集,區(qū)分像衛(wèi)星一樣的斑點(diǎn)GIVEN a dataset of images AS $xIdentify blobs of images of $xTHAT looks like a satellite此例注解為輸入一個圖像集^
給出$x中圖像的點(diǎn)集 修飾詞看起來像衛(wèi)星 例3 :給出一個數(shù)據(jù)集合,區(qū)分出沒有覆蓋其他斑點(diǎn)的斑點(diǎn)集 GIVEN a dataset of images Identify blobs of images THAT are not overlapping 此例注解為 輸入一個圖像集 給出圖像的點(diǎn)集 ii!BM沒有覆蓋其他點(diǎn)集 例4 :給出一個數(shù)據(jù)集合,發(fā)現(xiàn)一些變量和其他變量之間的分布。 GIVEN a dataset ofvariables [xl, x2,____, xlO] Find distribution of x5 over[xl,x4] 此例注解為 逾入一個數(shù)據(jù)集包含變量[xl, x2, . . . . , xlO] 給出變量x5與變量組[xl, x4]之間的分布規(guī)律 例5 :給出一個視頻切片集合,發(fā)現(xiàn)與給定場景相似的場景集合。 GIVEN a dataset of video clips GIVEN a video clip $x Find clips THAT are similar to $x 此例注解為 輸入一個視頻切片集合 MA—個視頻切片變量$x 杳找切片 修飾詞與給定切片$x相似的切片集 在上面語法中Jx是一個變量;在SNL變量前面有一個美元符號('$'),可以由 給定的短語所創(chuàng)建。 例6 : [Text] Q&A〃問答系統(tǒng)搜索 GIVEN a dataset of web pages Find a web page THAT containing an answer for '….' 此例注解為 輸入一個網(wǎng)頁集合 杳找一個網(wǎng)頁 修飾詞包含對"......"問題的答案 如圖2所示,本發(fā)明所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其結(jié)構(gòu)化自然語言 組合的具體實(shí)現(xiàn)過程顯示了組合一個SNL-l句子的具體實(shí)現(xiàn)過程,如果用戶想定義任何 GIVEN短語,處理過程將前往模塊210,在此,用戶可以指定一個GIVEN短語;如果用戶想定義任何WITH短語,處理過程將前往模塊220,在此,用戶可以指定一個WITH短語。在模塊
230中,處理器需要詢問用戶去指定或輸入一個動詞短語,這個過程要求用戶指定或輸入一
個動詞短語;如果用戶希望指定或輸入一個條件子句,則處理過程將前往模塊240,在此,
用戶將被提示去指定或輸入一個條件子句。 以下是另外一個結(jié)構(gòu)化自然語言,稱之為SNL-2 : FIND PERSON [THAT〈condition clause〉A(chǔ)ND THAT〈condition clause>____] 例7:誰發(fā)明了電話? FIND PERSON THAT invented tel印hone 此例注解為 杳找人 修飾詞發(fā)明了電話 以下是又一個結(jié)構(gòu)化自然語言,稱之為SNL-3 :
FIND PLACE [THAT〈condition clause〉A(chǔ)ND THAT〈condition clause>____] 例8 :加利福利亞在哪兒? FIND PLACETHAT is California 此例注解為 杳找地方 修飾詞是加利福利亞 以上本發(fā)明所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),結(jié)構(gòu)化自然語言搜索系統(tǒng)中 的服務(wù)發(fā)現(xiàn)包含兩個階段即服務(wù)注冊與服務(wù)匹配。所述服務(wù)注冊是為了能夠被SNLSS有 一個更好的發(fā)現(xiàn)機(jī)會,服務(wù)供應(yīng)商可以事先注冊好自己的服務(wù),服務(wù)供應(yīng)商必須提供服務(wù) 的信息,包括URL、名字空間、能力語句等;所述服務(wù)匹配是當(dāng)用戶提出一個問題描述語句, 查詢能力匹配者在問題描述語句和存儲在能力庫中的可用能力描述語句之間進(jìn)行匹配。
如圖3所示,本發(fā)明所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其系統(tǒng)控制流的實(shí) 現(xiàn)過程顯示了結(jié)構(gòu)化自然語言搜索系統(tǒng)實(shí)現(xiàn)的計算的一個具體實(shí)現(xiàn)過程。在模塊310中, 用戶選擇一個結(jié)構(gòu)化自然語言去組合成一個問題描述語句;在模塊320中,用戶通過被選 擇的結(jié)構(gòu)化自然語言組合成一個問題描述語句;這個語句在模塊330中與能力描述語句進(jìn) 行匹配,最后所有匹配成功的解決方案被列舉在模塊340中。 以上顯示和描述了本發(fā)明的主要特征以及所具有的優(yōu)點(diǎn)。本行業(yè)的技術(shù)人員應(yīng)該 了解,本發(fā)明不受上述實(shí)施例的限制,在不脫離本發(fā)明主旨和范圍的前提下本發(fā)明還會有
一些變化與改進(jìn),這些變化和改進(jìn)都落入要求保護(hù)的本發(fā)明范圍內(nèi)。
權(quán)利要求
一種基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于,該系統(tǒng)包括(1)一個計算機(jī)接口,該接口可連接到用戶,使用戶通過該接口撰寫一個或多個結(jié)構(gòu)化自然語言的問題描述語句;(2)一系列計算機(jī)程序的集合,它們可編譯問題描述語句;(3)一系列計算機(jī)程序的集合,能夠根據(jù)基于用戶指定的結(jié)構(gòu)化自然語言所表達(dá)的問題描述語句從互聯(lián)網(wǎng)絡(luò)上搜索并反饋所有可能解決該問題的服務(wù)。
2. 根據(jù)權(quán)利要求1所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于此系統(tǒng)結(jié)構(gòu) 具有可被連接到服務(wù)提供者的計算機(jī)接口去描述一個服務(wù)的能力以及注冊該系統(tǒng)的服務(wù)。
3. 根據(jù)權(quán)利要求1所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于該系統(tǒng)設(shè)置 一個能夠存儲所有已經(jīng)被注冊服務(wù)能力句子的能力語句存儲器,一個具有對反饋的服務(wù)進(jìn) 行排序的排序模塊和一個用于用戶對該服務(wù)進(jìn)行評價的評級模塊。
4. 根據(jù)權(quán)利要求1所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于可設(shè)置允許 用戶去定義一個問題描述語句為一個變量并將其放在另一個問題描述語句使用。
5. 根據(jù)權(quán)利要求1所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于所述的一系 列計算機(jī)程序的集合,包括能夠編譯一個用戶的問題描述語句并搜索匹配的服務(wù)并執(zhí)行; 可接收并提供給用戶配對服務(wù)執(zhí)行后返回的結(jié)果;或者能夠根據(jù)基于用戶的結(jié)構(gòu)化自然語 言問題描述語句,匹配以結(jié)構(gòu)化自然語言表述的能力語句并反饋所有可能符合匹配條件的 服務(wù)。
6. 根據(jù)權(quán)利要求1所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于該系統(tǒng)設(shè)置 一個讓用戶基于結(jié)構(gòu)化自然語言組合問題描述語句或者服務(wù)能力語句的方式,包括讓用戶 表述一個包含動詞及其賓語的動詞短語、讓用戶表述一個或多個GIVEN短語、讓用戶表述 一個或多個WITH短語、讓用戶表述一個或多個條件從句。
7. 根據(jù)權(quán)利要求6所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于與所述結(jié)構(gòu) 化自然語言組合問題描述語句或者服務(wù)能力語句的方式所匹配的方式包括匹配GIVEN短 語、匹配WITH短語、匹配動詞短語以及匹配條件從句。
8. 根據(jù)權(quán)利要求6或7所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于一個查 詢語句可與多個能力語句的組合體進(jìn)行匹配,一個能力語句可部分匹配一個結(jié)構(gòu)化的查詢 語句并反饋相應(yīng)的結(jié)果。
9. 根據(jù)權(quán)利要求1所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于,所述解決問 題的方法包括(1) 提示用戶選擇一個結(jié)構(gòu)化的自然語言;(2) 提示用戶通過選定的結(jié)構(gòu)化自然語言去組合一個問題描述語句;(3) 將問題描述語句與以同樣結(jié)構(gòu)化自然語言所描述的能力語句進(jìn)行匹配,這些對應(yīng) 的服務(wù)已經(jīng)被注冊,并且能夠返回與用戶查詢語句匹配的服務(wù);(4) 提示用戶選擇一個或多個匹配服務(wù)。
10. 根據(jù)權(quán)利要求9所述的基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),其特征在于當(dāng)服務(wù)被選 擇后,指示用戶如何使用這些匹配服務(wù)以及如何去訂閱這些匹配的服務(wù)。
全文摘要
一種基于結(jié)構(gòu)化自然語言的搜索系統(tǒng),該搜索系統(tǒng)及其實(shí)現(xiàn)方式與基于結(jié)構(gòu)化自然語言的搜索系統(tǒng)相關(guān)。它允許互聯(lián)網(wǎng)用戶區(qū)搜索基于由一個或者多個結(jié)構(gòu)化自然語言組成的問題描述的各種服務(wù);主要包括一個計算機(jī)接口,可使用戶通過該接口撰寫一個或多個結(jié)構(gòu)化自然語言的問題描述語句;一系列計算機(jī)程序的集合,它們能夠編譯問題描述語句;一系列計算機(jī)程序的集合,能夠根據(jù)基于用戶指定的結(jié)構(gòu)化自然語言所表達(dá)的問題描述語句從互聯(lián)網(wǎng)絡(luò)上搜索并反饋所有可能解決該問題的服務(wù)。本發(fā)明可使用戶通過組合一個基于結(jié)構(gòu)化自然語言的問題描述去搜索服務(wù)(工具、內(nèi)容、網(wǎng)上服務(wù)等)。
文檔編號G06F17/30GK101699434SQ20091016995
公開日2010年4月28日 申請日期2009年9月11日 優(yōu)先權(quán)日2009年9月11日
發(fā)明者許承瑜 申請人:無錫語意電子政務(wù)軟件科技有限公司