專利名稱:實現(xiàn)問與答功能和計算機輔助寫作的方法及裝置的制作方法
技術領域:
本發(fā)明涉及數(shù)據(jù)處理技術,特別涉及問與答功能的實現(xiàn)和計算機輔助寫作的技術。
背景技術:
在以往,存在為電子文檔提供問與答(Q&A)功能的技術,例如,由Ask Jeeves公司提供的www.ask.com網(wǎng)站就是一個典型的例子。他們?yōu)橐延械碾娮游臋n編制問題、提取答案,然后向用戶提供問與答服務。
但是,在以往的問與答功能的實現(xiàn)過程中,文檔寫作工具與問與答服務提供工具是相互獨立的。作者在寫作文檔時,并不關心讀者如何來利用(leverage)他/她所寫作的內(nèi)容;而另一方面,讀者又很難得到所希望的信息。由于目前計算機對于自然語言的理解能力還處于字/詞理解的水平,而對于問與答應用來說,需要句子甚至整篇文章的理解和語義能力,因此,按照目前的技術發(fā)展速度,可以預計在一個較短的將來內(nèi)不可能達到現(xiàn)有的實現(xiàn)問與答功能的要求。
發(fā)明內(nèi)容
為了解決以上所述現(xiàn)有技術中的問題,本發(fā)明提出了作者在寫作文檔的過程中就為后面實現(xiàn)問與答功能準備相關的信息,即,為作者提供一套工具來方便地為以后用于讀者的問與答功能作貢獻。進而,問與答服務提供系統(tǒng),可以利用作者準備的(或者確認的)問與答信息,為用戶提供更準確、更全面的答案。
根據(jù)本發(fā)明的一個方面,提供了一種為電子文檔實現(xiàn)問與答功能的方法,包括在作者寫作電子文檔時,生成用于問與答功能的問與答信息;與所述電子文檔對應地保存所述問與答信息;以及利用所述問與答信息提供問與答功能。
根據(jù)本發(fā)明的另一個方面,提供了一種計算機輔助寫作的方法,包括在作者編輯所述電子文檔時,生成對應于所述電子文檔的問與答信息;與所述電子文檔對應地保存所述問與答信息。
根據(jù)本發(fā)明的再另一個方面,提供了一種瀏覽電子文檔的方法,其中與所述電子文檔對應地保存有用于問與答功能的問與答信息,所述方法包括讀出所述電子文檔的內(nèi)容以及對應的問與答信息;將所述電子文檔的內(nèi)容呈現(xiàn)給用戶;響應用戶的操作,利用所述問與答信息提供問與答功能。
根據(jù)本發(fā)明的再另一個方面,提供了一種輔助寫作裝置,包括電子文檔編輯單元,用于編輯電子文檔;問題生成單元,用于根據(jù)所述電子文檔編輯單元中輸入的文本,生成一個或多個問題;答案生成單元,用于根據(jù)所述電子文檔編輯單元中的文本,為由上述問題生成單元生成的問題生成答案;問與答信息保存單元,用于將上述生成的問題和相應的答案作為問與答信息,與所述被編輯的電子文本對應地保存。
根據(jù)本發(fā)明的再另一個方面,提供了一種能夠提供問與答功能的瀏覽器,包括電子文檔瀏覽單元,用于瀏覽電子文檔;問與答信息提取單元,用于提取與所述被瀏覽的電子文檔對應保存的問與答信息,在所述問與答信息中包含有與該電子文檔有關的問題和相應的答案;問與答呈現(xiàn)單元,用于將所述問與答信息中包含的問題和答案呈現(xiàn)給用戶。
根據(jù)本發(fā)明的再另一個方面,提供了一種利用計算機提供問與答服務的方法,包括提取分別與多個電子文檔對應的問與答信息,所述問與答信息中包含有與所述電子文檔有關的問題和相應的答案;對提取出的問與答信息編制索引;根據(jù)用戶輸入的問題,從所述問與答信息中查找出最相似的一個或多個問題;將所述問題和相應的答案呈現(xiàn)給所述用戶。
根據(jù)本發(fā)明的再另一個方面,提供了一種提供問與答服務的系統(tǒng),包括問與答信息提取裝置,用于提取分別與多個電子文檔對應的問與答信息,所述問與答信息中包含有與所述電子文檔有關的問題和相應的答案;問與答索引裝置,用于對提取出的問與答信息編制索引;問與答索引庫,用于保存由上述問與答索引裝置編制的問與答信息索引;問與答查找裝置,用于根據(jù)用戶輸入的問題,從所述問與答索引庫中查找出最相似的一個或多個問題;問與答呈現(xiàn)裝置,用于將所述查找出的問題和相應的答案呈現(xiàn)給所述用戶。
相信通過以下結(jié)合附圖對本發(fā)明具體實施方式
的說明,能夠使人們更好地了解本發(fā)明上述的特點、優(yōu)點和目的。
圖1是根據(jù)本發(fā)明的一個實施例的為電子文檔實現(xiàn)問與答功能的方法的流程圖;圖2是根據(jù)本發(fā)明的一個實施例的為電子文檔實現(xiàn)問與答功能的方法的較詳細的流程圖;圖3是根據(jù)本發(fā)明的一個實施例的基于關鍵詞生成問題的過程的流程圖;圖4是根據(jù)本發(fā)明的一個實施例的基于規(guī)則生成問題的過程的流程圖;圖5是根據(jù)本發(fā)明的一個實施例的為一個問題生成答案的過程的流程圖;圖6是展示根據(jù)本發(fā)明的一個實施例的輔助寫作裝置的結(jié)構的方塊圖;圖7是展示根據(jù)本發(fā)明的一個實施例的能夠提供問與答功能的瀏覽器的結(jié)構的方塊圖;圖8是根據(jù)本發(fā)明的一個實施例的提供問與答服務的方法的流程圖;圖9是展示根據(jù)本發(fā)明的一個實施例的提供問與答服務的系統(tǒng)的結(jié)構的方塊圖。
具體實施例方式
下面就結(jié)合附圖對本發(fā)明的各個優(yōu)選實施例進行詳細的說明。
為電子文檔實現(xiàn)問與答功能的方法根據(jù)本發(fā)明的一個方面,提供了一種為電子文檔實現(xiàn)問與答功能的方法。圖1是根據(jù)本發(fā)明的一個實施例的為電子文檔實現(xiàn)問與答功能的方法的流程圖。
如圖1所示,首先,在步驟101,在作者寫作電子文檔時,生成用于問與答功能的問與答信息。在此,用于問與答功能的信息包括分別指示問題和答案的內(nèi)容的信息。作者在寫作文檔時,同時參與準備該問與答信息,從而在后面瀏覽電子文檔時,可以用其提供問與答功能。
接著,在步驟105,與所述電子文檔對應地保存所述問與答信息。在本發(fā)明中并沒有對問與答信息的具體保存方式進行限定,例如,可以與電子文檔一起保存,即,作為電子文檔的一部分,也可以分開保存,只要能夠與所述電子文檔相對應即可。
然后,在步驟110,在讀者瀏覽所述電子文檔時,利用所述問與答信息提供問與答功能。即,按照問與答信息中包含的問題和答案,為用戶提供問與答功能。
這樣按照本實施例,作者在寫作文檔時,就可以參與問與答信息的準備,從而可以利用作者對于該文檔的理解(這肯定是最準確的理解),來保證生成準確的問題和答案,從而,可以大大提高問與答功能的準確性和可用性。
下面,就結(jié)合圖2~5,對本實施例的方法進行更詳細的說明。圖2是根據(jù)本發(fā)明的一個實施例的為電子文檔實現(xiàn)問與答功能的方法的較詳細的流程圖。
如圖2所示,在步驟201,作者輸入一個文本段。在此,文本段是指構成一篇電子文檔的一段文字,可以是一個或多個段落或句子。文本段的大小,取決于希望對該文檔提取問題的強度,例如,如果希望對文檔進行詳細的問題提取,則可以將文本段的大小設置的相對較小,反之則較大。而且,也可以由作者根據(jù)文檔的情況來定義文本段的大小。
接著,在步驟205,為所述文本段生成一個或多個問題。具體地,可以由作者手工輸入問題,也可以按照后面結(jié)合圖3和4描述的基于關鍵詞生成問題的方式和基于規(guī)則生成問題的方式,來生成問題。
接著,在步驟210,作者對生成的問題進行核實。在此,作者可以根據(jù)自己的寫作意圖(理解),刪除、修改和增加生成的問題。
接著,在步驟215,分別為每個問題生成答案。具體地,可以由作者手工在文本段中選擇作為答案的文字,也可以按照后面結(jié)合圖5描述的方式自動生成答案。
接著,在步驟220,作者對生成的答案進行核實。在此,作者可以根據(jù)自己的寫作意圖,刪除、修改和增加生成的答案。
接著,在步驟225,判斷是否該文檔的寫作完成,如果沒有完成則返回到步驟201,由作者繼續(xù)輸入文本段,進行寫作;如果已經(jīng)完成則進行到步驟230。
在步驟230,與電子文檔對應地保存問與答信息。具體地,根據(jù)本法明的優(yōu)選實施例,可以將問與答信息作為知識標記(knowledge tag)與電子文檔一起保存,例如,在電子文檔的結(jié)尾處附加<QandA>
<Answer>Bob got married with Jean in 1980.</Answer>
<Question>Is Bob married?</Question>
<Question>When did Bob get married?</Question>
……<Question>Who is Bob’s wife?</Question>
</QandA>
也可以在電子文檔的頭部定義問題知識標記標記類型,在電子文檔的正文中利用該標記指明答案的方式。
如前面所述,本發(fā)明沒有對問與答信息的具體保存方式進行限定,例如,可以與電子文檔一起保存,即,作為電子文檔的一部分,也可以分開保存,只要能夠與所述電子文檔相對應即可。
作者寫作完成的電子文檔連同問與答信息被通過網(wǎng)絡或者其他媒體傳遞到讀者的瀏覽器中,在步驟220,由讀者的瀏覽器讀取電子文檔和對應的問與答信息。然后,在步驟240,讀者的瀏覽器根據(jù)問與答信息提供問與答功能。具體地,可以將問與答信息中包含的問題列出,由讀者選擇一個問題后提供該問題的答案;也可以由讀者輸入的問題,然后找出與讀者輸入的問題最相似的問與答信息中的問題(對于如何找出最相似的問題,后面將結(jié)合偽代碼片段1進行描述),并連同答案一起呈現(xiàn)給讀者。當然,還可以有其他提供問與答功能的方式,本發(fā)明對此沒有限定,只要是利用了與電子文檔對應的問與答信息即可。
圖3是根據(jù)本發(fā)明的一個實施例的基于關鍵詞的生成問題的過程的流程圖。如圖3所示,首先在步驟301,對該文本段進行預處理,去除停用詞(stopword)。在此,停用詞是不適合于作關鍵詞的字或詞,例如中文的“的”、“地”、“得”、“了”等等。經(jīng)過預處理,文本段中剩下的應當就是關鍵詞了。
接著,在步驟305,為該文本段中的每個關鍵詞計算權重。在此,計算出來的權重希望能夠表現(xiàn)出該關鍵詞的重要性。根據(jù)本發(fā)明的實施例,可以利用關鍵詞的出現(xiàn)頻率來計算關鍵詞的重要性,例如tf(termfrequency)方法或者tf-idf(term frequency inverse document frequency)方法等。tf方法就是按照每個關鍵詞在該文本段中出現(xiàn)的次數(shù)來排序計算權重。tf-idf方法則是通過計算tf×idf來確定每個關鍵詞的權重,其中,tf是該關鍵詞在該文本段T中出現(xiàn)的次數(shù),idf是該關鍵詞在該文檔的所有文本段中出現(xiàn)的次數(shù)的倒數(shù)。因此,tf-idf方法更能夠體現(xiàn)關鍵詞在不同文本段之間的相對重要性。當然,也可以用其他方法來計算關鍵詞的權重。
接著,在步驟310,提取關鍵詞串。具體地,就是按照前面步驟305為每個關鍵詞計算的權重,將權重最高的預定數(shù)量的關鍵詞選擇出來作為關鍵詞串。
接著,在步驟315,計算提取出的關鍵詞串與問題資料庫中問題的相似性。在此,問題資料庫(query repository)是其中包含大量的自然語言問題句子的資料庫,可以由各個領域的專家來編制,也可以從已有的Q&A系統(tǒng)中積累的大量問題中提取??梢岳靡韵鹿?來計算關鍵詞串與問題資料庫中的問題的相似性
relevancekeywords(KSi,NLj)=Σk(wk(KSi)+wk(NLj))/Max(wkn(KSi),wkn(NLj))*2]]>(式1)其中,wk(KSi)是關鍵詞串KSi和問題資料庫中的問題NLj中的第k個公共關鍵詞在KSi中的權重(該權重由前面的步驟305計算得出),wk(NLj)是關鍵詞串KSi和問題資料庫中的問題NLj的第k公共個關鍵詞在NLj中的權重(缺省,該值為1),wkn(.)是構成一個串的所有詞(不包括停用詞)的權重的和。
然后,在步驟320,從問題資料庫中選擇一個或多個相似性最高的問題,作為為該文本段生成的問題。
進而,由于問題資料庫中可能包含大量的問題,如果逐一地計算相似性會造成非常大的計算量,影響系統(tǒng)性能。根據(jù)本發(fā)明的一個優(yōu)選實施例,可以將問題資料庫中相似的問題聚類(clustering),然后在計算相似性時,只計算提取出的關鍵詞串與各個問題聚類的中心的相似性即可。這樣可以大大減少相似性計算量,從而提高系統(tǒng)性能。
具體的聚類原則可以是基于查詢內(nèi)容的相似性,即,根據(jù)各個問題之間的相同關鍵詞、詞序、短語等內(nèi)容,來評估問題的相似性,將相似的問題聚類;或者基于用戶反饋,即,如果用戶在同一個文檔中點擊了不同的問題則認為這些問題相似,如果一組文檔經(jīng)常被選擇回答一組問題,則這些文檔中的關鍵詞與這些問題中的關鍵詞在某種程度上相關。
圖4是根據(jù)本發(fā)明的一個實施例的基于規(guī)則的生成問題的過程的流程圖。如圖4所示,基于規(guī)則的生成問題的過程,首先在步驟401,對文本段進行詞語切分(tokenization)。此步驟的任務主要是在文本段中切分詞語。
接著,在步驟405,對進行了詞語切分的文本段進行句法分析。具體地,句法分析是識別出文本段中的句子句法結(jié)構。句法分析的目的是確定輸入文本的層次結(jié)構。從結(jié)構觀念出發(fā)對一個線性的語符串進行分析,就是將表面的線性表達式分解還原成深層的按一定結(jié)構層級組合的圖式。一個線性語符串變成了若干層次上的大小不等的語言片段的組合。反映了各個語言成分之間結(jié)合緊密程度以及先后順序及關系的不同。Miller,L.G.等人國際會議“International Conference on Acoustics,Speech,and SignalProcessing,1988”(第271-274頁)中的文章“Syntactic analysis for largevocabulary speech recognition using a context-free covering grammar”,和Floyd,R.W.在期刊“Jour.ACM”(Vol 10,第316-333頁)中的文章“Syntactic Analysis and Operator Precedence”詳細描述了句法分析方法,其全部內(nèi)容被包含于此以供參考。
接著,在步驟410,進行命名實體識別(named entity recognition)。本步驟的目的是識別文本中的特定信息,例如,人名、地點、日期、組織名等等。最近的命名實體識別方面的研究的重點在于機器學習方法,例如,基于轉(zhuǎn)換的學習(transformation-based learning)、隱藏馬爾科夫模型(hidden Markov model)、判定樹、搭配統(tǒng)計(collocation statistics)、最大熵模型(maximum entropy model)、和EM自舉法(EM bootstrapping)等。
關于命名實體識別的方法可以參考以下文章,其內(nèi)容被全部包含于此J.Aberdeen等人1995年在學報“Proceedings of MUC-6”(第141-155頁)中的文章“Description of the Alembic system used for MUC-6”;BikelD.M.等人1999年在期刊“Machine Learning”(34(1-3),第211-231頁)中的文章“An Algorithm that Learns What’s in a Name”;Sekine S.1998年在學報“MUC-7 Proc”中的文章“Description of The Japanese NE SystemUsed for MET-2”;Lin D.1998年在學報“MUC-7 Proc.”中的文章“Usingcollocation statistics in information extraction”;以及Borthwick A.1999年在博士論文集(Ph.D.Thesis,New York Univ.)中的文章“A MaximumEntropy Approachover to Named Entity Recognition”。
然后,在步驟415,按照預定的規(guī)則對識別出的命名實體生成問題。本步驟的任務是根據(jù)一組預定的規(guī)則,生成相應的問題列表。這些規(guī)則可以由熟悉問與答系統(tǒng)的問題的知識工程師來制定。例如,通過基于命名實體的模式匹配,來捕捉問題點并生成問題。下面是該規(guī)則的例子
人名(person)→誰(who/whom)時間/日期(time/date)→何時(when)地點(location)→哪里(where/what place)產(chǎn)品(product)→什么牌子(what brand)數(shù)量(number)→多少(how many)下面以“John Hume and David Trimble won the 1998 Nobel Peace Prize.”這句話為例,說明如何利用上述規(guī)則的模式匹配來生成問題。假設經(jīng)過上述步驟401~410,識別出了命名實體“person”和“Prize”。經(jīng)過分析該句子的成分,在這些命名實體中查找問題點。在此,在不失一般性的前提下假設“person”(John Hume and David Trimble)被選擇作為一個問題點。然后,按照預定的規(guī)則和該句子的句法結(jié)構將其映射到問題類型(who/whom),最終生成問題“Who won the 1998 Nobel Peace Prize?”。
圖5是根據(jù)本發(fā)明的一個實施例的為一個問題生成答案的過程的流程圖。如圖5所示,首先在步驟501,計算該問題與對應的文本段中每個句子的相似性。兩個句子之間相似性的計算可以利用說明書后所附的偽代碼片段1中的算法1來進行。該代碼片段中value值的計算與前面式1的方法類似,也是利用關鍵詞的權重來衡量的。
接著,在步驟505,選擇相似性最高的句子并將其記為SA。具體地,可以是將該文本段中每個句子的相似性值排序,來取最高的一個。
接著,在步驟510,計算該答案句子SA與相鄰句子的相似性。在此,相鄰句子是指在SA的前后一定范圍內(nèi)的句子。相似性的計算同樣可以通過偽代碼片段1的算法1來進行。
然后,在步驟515,將相鄰句子中相似性最高的一個或多個句子并入SA作為該問題的答案。
通過以上實施例的說明可知,如果采用本發(fā)明實施例的電子文檔實現(xiàn)問與答功能的方法,特別是如果使用了上述自動生成問題和答案的方法,可以在不過多增加作者負擔的情況下,利用作者對于該文檔的理解(這肯定是最準確的理解),來保證生成準確的問題和答案,從而,可以大大提高問題與答案的準確性和可用性。
計算機輔助寫作的方法在同一發(fā)明構思下,根據(jù)本發(fā)明的另一個方面,提供了一種計算機輔助寫作的方法,包括在作者編輯電子文檔時,生成用于所述電子文檔的問與答功能的問與答信息;并與該電子文檔對應地保存所述問與答信息。
具體地,本發(fā)明的計算機輔助寫作的方法可以包括圖2所示的步驟201至230,并且圖3、4和5所示的基于關鍵詞和基于規(guī)則的問題生成過程以及答案生成過程也都可以適用于本實施例的方法。在此,為了簡便起見,不再重復進行說明。
這樣,采用本發(fā)明實施例的計算機輔助寫作的方法,可以輔助作者在寫作的過程中完成問與答信息的準備。特別是如果使用了上述自動生成問題和答案的方法,可以在不過多增加作者負擔的情況下,利用作者對于該文檔的理解(這肯定是最準確的理解),來保證生成準確的問題和答案信息。
輔助寫作裝置在同一發(fā)明構思下,根據(jù)本發(fā)明的另一個方面,提供了一種輔助寫作裝置。圖6是展示根據(jù)本發(fā)明的一個實施例的輔助寫作裝置的結(jié)構的方塊圖。
如圖6所示,該輔助寫作裝置600,包括電子文檔編輯單元601,用于編輯電子文檔,它可以是一個獨立的文檔編輯單元,也可以共用已有的文檔編輯器,例如,MS Word或WPS等等;問題生成單元602,用于根據(jù)電子文檔編輯單元601中輸入的文本,生成一個或多個問題;答案生成單元603,用于根據(jù)所述電子文檔編輯單元601中的文本,為由上述問題生成單元602生成的問題生成答案;問與答信息保存單元605,用于將上述生成的問題和相應的答案作為問與答信息,與所述被編輯的電子文本對應地保存;問與答評價單元604,用于允許作者對生成的問題和答案進行評價、核實。
優(yōu)選地,當問題生成單元602利用前面描述的基于關鍵詞生成問題的方法來生成問題時,則輔助寫作裝置600還包括問題資料庫,在該問題資料庫中保存有多個問題,問題生成單元602可以從中選擇一個或多個相似性高的問題。并且,問題生成單元602還包括用于根據(jù)輸入的文本段中的每個關鍵詞的出現(xiàn)頻率以及在同一電子文檔的其他文本段中出現(xiàn)的頻率為所述關鍵詞計算權重的裝置;用于按照所述文本段中每個關鍵詞的權重提取關鍵詞串的裝置;用于計算所述提取出的關鍵詞串與所述問題資料庫中的問題的相似性裝置;以及用于選擇相似性高的一個或多個問題的裝置。
優(yōu)選地,當問題生成單元602利用前面描述的基于規(guī)則生成問題的方法來生成問題時,則問題生成單元602還包括用于對輸入的文本段進行詞語切分的裝置;用于對所述文本段中的句子進行句法分析裝置;用于對所述文本段進行命名實體識別的裝置;以及用于根據(jù)預定的規(guī)則對識別出的命名實體生成問題的裝置。
根據(jù)以上的說明可知,本實施例的輔助寫作裝置600可以完成上面描述的計算機輔助寫作方法,輔助作者在寫作的過程中完成問與答信息的準備。
瀏覽電子文檔的方法在同一發(fā)明構思下,根據(jù)本發(fā)明的另一個方面,提供了一種瀏覽電子文檔的方法,該電子文檔是通過上述計算機輔助寫作的方法產(chǎn)生的文檔,即,與該文檔對應地保存有用于問與答功能的問與答信息。在讀者瀏覽電子文檔時,首先讀出所述電子文檔的內(nèi)容以及對應的問與答信息,然后將所述電子文檔的內(nèi)容呈現(xiàn)給用戶。并且如果用戶通過操作選擇問與答功能時,利用所述問與答信息提供問與答功能。
如前所述,呈現(xiàn)問題和答案的方式很多,例如,可以是先將所述問與答信息包含的問題提供給用戶選擇,然后響應用戶的選擇,呈現(xiàn)給用戶相應的答案;或者,首先由用戶輸入希望得到答案的問題,然后,根據(jù)用戶輸入的問題和所述問與答信息中包含的問題的相似性(可以利用算法1來計算相似性),將與用戶輸入的問題最接近的一個或多個問題及對應的答案呈現(xiàn)給用戶。當然還可以有其他多種方式。
這樣,采用本發(fā)明實施例的瀏覽電子文檔的方法,可以利用與電子文檔對應保存的問與答信息向用戶提供問與答功能。由于所述問與答信息是作者在寫作該電子文檔時參與準備的、準確的信息,因此,本實施例利用該信息可以提供準確的問題與答案。
能夠提供問與答功能的瀏覽器在同一發(fā)明構思下,根據(jù)本發(fā)明的另一個方面,提供了一種能夠提供問與答功能的瀏覽器,該電子文檔是通過上述計算機輔助寫作的方法產(chǎn)生的文檔,即,與該文檔對應地保存有用于問與答功能的問與答信息。
圖7是展示根據(jù)本發(fā)明的一個實施例的能夠提供問與答功能的瀏覽器的結(jié)構的方塊圖。如圖7所示,瀏覽器700,包括電子文檔瀏覽單元701,用于瀏覽電子文檔,它可以是一個獨立的文檔瀏覽單元,也可以共用已有的文檔瀏覽器,例如,MS IE或Acrobat Reader等等;問與答信息提取單元702,用于提取與被瀏覽的電子文檔對應保存的問與答信息,在所述問與答信息中包含有與該電子文檔有關的問題和相應的答案;問與答呈現(xiàn)單元703,用于將問與答信息中包含的問題和答案呈現(xiàn)給用戶。
本實施例的瀏覽器可以實現(xiàn)前面描述的瀏覽電子文檔的方法。進而,該瀏覽器還可以包括相似性計算單元,用于計算用戶輸入的問題和所述問與答信息中的問題的相似性(可以通過前述的算法1來計算)。從而,可以由用戶輸入問題,并將最接近的一個或多個問題及對應的答案呈現(xiàn)給用戶。
通過以上說明可知,采用本發(fā)明實施例的瀏覽器,可以利用與電子文檔對應保存的問與答信息向用戶提供問與答功能。由于所述問與答信息是作者在寫作該電子文檔時參與準備的、準確的信息,因此,本實施例利用該信息可以提供準確的問題與答案。
利用計算機提供問與答服務的方法在同一發(fā)明構思下,根據(jù)本發(fā)明的另一個方面,提供了一種利用計算機提供問與答服務的方法,該方法也是基于作者利用上述計算機輔助寫作方法寫作文檔,從而與電子文檔相對應地保存有問與答信息這一點來實現(xiàn)的。
圖8是根據(jù)本發(fā)明的一個實施例的提供問與答服務的方法的流程圖。如圖8所示,首先在步驟801,提取分別與多個電子文檔對應的問與答信息,所述問與答信息中包含有與所述電子文檔有關的問題和相應的答案。具體地,如果電子文檔的作者是使用上述輔助寫作裝置600寫作文檔的,則每個電子文檔都會有一個與其對應的問與答信息。在本步驟中,就是將多個電子文檔的問與答信息提取出來。特別地對于在因特網(wǎng)上發(fā)布的電子文檔,可以通過網(wǎng)絡搜索器(web crawler)來遍歷各個電子文檔,并提取其對應的問與答信息,例如從知識標記(knowledge tags)中提取。
接著,在步驟805,為提取出的問與答信息編制索引。在此,可以使用信息檢索領域中常用的各種索引方法來對這些問與答信息中的問題和/或答案建索引,例如,倒排文件、簽名文件、PAT樹或PAT陣列等。
接著,在步驟810,由用戶輸入希望得到回答的問題或者關鍵詞串。
接著,在步驟815,從問題索引中找出與用戶問題最接近的問題。本步驟可以利用前面所述的算法1來計算相似性,并選擇相似性最高的一個或多個問題。當然,也可以用現(xiàn)有的其他方法。
然后,在步驟820,將找出的接近的問題和對應的答案呈現(xiàn)給用戶。
進而,本實施例的方法還可以包括響應用戶的操作,將所述用戶選擇的問題對應的電子文檔的內(nèi)容或鏈接提供給所述用戶的步驟(圖8中未示出)。
通過上述描述可知,本實施例的方法可以利用與電子文檔對應保存的問與答信息向用戶提供更廣范圍內(nèi)的問與答服務。由于所述問與答信息是作者在寫作該電子文檔時參與準備的、準確的信息,因此,本實施例利用該信息可以提供準確的問題與答案。并且本實施例的方法特別適用于在網(wǎng)絡環(huán)境中提取問與答信息,提供問與答服務。
提供問與答服務的系統(tǒng)在同一發(fā)明構思下,根據(jù)本發(fā)明的另一個方面,提供了一種提供問與答服務的系統(tǒng)。圖9是展示根據(jù)本發(fā)明的一個實施例的提供問與答服務的系統(tǒng)的結(jié)構的方塊圖。
如圖9所示,系統(tǒng)900,包括問與答信息提取裝置901,用于提取分別與多個電子文檔對應的問與答信息,所述問與答信息中包含有與所述電子文檔有關的問題和相應的答案,如前面描述的那樣,如果電子文檔的作者是使用上述輔助寫作裝置600寫作文檔的,則每個電子文檔都會有一個與其對應的問與答信息。問與答信息提取裝置901就是將多個電子文檔的問與答信息提取出來。例如,問與答信息提取裝置901可以是一個網(wǎng)絡搜索器(web crawler),遍歷在網(wǎng)絡上發(fā)布的各個電子文檔并提取其對應的問與答信息。
系統(tǒng)900還包括問與答索引裝置902,用于對提取出的問與答信息編制索引;問與答索引庫903,用于保存由上述問與答索引裝置902編制的問與答信息索引;問與答查找裝置905,用于根據(jù)用戶輸入的問題,從所述問與答索引庫903中查找出最相似的一個或多個問題;問與答呈現(xiàn)裝置905,用于將所述查找出的問題和相應的答案呈現(xiàn)給所述用戶。
通過上述描述可知,本實施例的提供問與答服務的系統(tǒng)可以實現(xiàn)前面描述的提供問與答服務的方法,利用與電子文檔對應保存的問與答信息向用戶提供更廣范圍內(nèi)的問與答服務。由于所述問與答信息是作者在寫作該電子文檔時參與準備的、準確的信息,因此,本實施例利用該信息可以提供準確的問題與答案。
本發(fā)明的上述輔助寫作裝置、能夠提供問與答功能的瀏覽器和提供問與答服務的系統(tǒng)以及它們各自的組成部分可以用硬件和軟件方式實現(xiàn),根據(jù)需要可以和其他裝置結(jié)合,也可以在一臺計算機上同時實現(xiàn)輔助寫作裝置和提供問與答功能的瀏覽器等,并且一個裝置或系統(tǒng)的各個組成部分也可以物理地分開設置而操作上相互聯(lián)系完成特定的功能。
以上雖然通過一些示例性的實施例對本發(fā)明的為電子文檔實現(xiàn)問與答功能的方法、計算機輔助寫作方法、瀏覽電子文檔的方法、輔助寫作裝置、能夠提供問與答功能的瀏覽器、利用計算機提供問與答服務的方法和提供問與答服務的系統(tǒng)進行了詳細的描述,但是以上這些實施例并不是窮舉的,本領域技術人員可以在本發(fā)明的精神和范圍內(nèi)實現(xiàn)各種變化和修改。因此,本發(fā)明并不限于這些實施例,本發(fā)明的范圍僅由所附權利要求為準。
偽代碼片段1Algorithm 1calculate the similarity between two sentences.
(算法1計算兩個句子之間的相似性,假設句子中的除停止詞(Stopword)每一個單詞都有一個權值表示它的重要性,每個單詞缺省權值為1)Sim(s1,s2){claculatevalue=Σk(wk(s1)+wk(s2))/Max(wkn(s1),wkn(s2))*2]]>(計算兩個句子之間的相似性)return value;}
權利要求
1.一種基于電子文檔實現(xiàn)問與答功能的方法,其特征在于,包括在作者寫作電子文檔時,生成用于問與答功能的問與答信息;與所述電子文檔對應地保存所述問與答信息;以及利用所述問與答信息提供問與答功能。
2.根據(jù)權利要求1所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述生成用于問與答功能的問與答信息的步驟包括根據(jù)作者輸入的文本段,生成一個或多個問題;以及在所述文本段中提取上述問題的答案。
3.根據(jù)權利要求2所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述生成一個或多個問題的步驟包括根據(jù)作者輸入的文本段中的關鍵詞,從一個問題資料庫中選擇一個或多個問題。
4.根據(jù)權利要求3所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述從一個問題資料庫中選擇一個或多個問題的步驟包括根據(jù)所述文本段中的每個關鍵詞的出現(xiàn)頻率和/或在所述電子文檔的其他文本段中出現(xiàn)的頻率,為所述關鍵詞計算權重;按照所述文本段中每個關鍵詞的權重提取關鍵詞串;計算所述提取出的關鍵詞串與所述問題資料庫中的問題的相似性;以及選擇相似性高的一個或多個問題。
5.根據(jù)權利要求4所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述問題資料庫中的問題被聚類;其中,所述計算所述提取出的關鍵詞串與所述問題資料庫中的問題的相似性的步驟,只計算所述提取出的關鍵詞串與所述問題資料庫中問題聚類中心的相似性。
6.根據(jù)權利要求2所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述生成一個或多個問題的步驟包括對輸入的文本段進行詞語切分;對所述文本段中的句子進行句法分析;對所述文本段進行命名實體識別;以及根據(jù)預定的規(guī)則對識別出的命名實體生成問題。
7.根據(jù)權利要求2~6的任意一項所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,還包括在所述生成一個或多個問題之后,允許作者核實所述生成的問題。
8.根據(jù)權利要求2所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述生成一個或多個問題的步驟包括作者手工輸入一個或多個問題。
9.根據(jù)權利要求2所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述在所述文本段中提取上述問題的答案的步驟,包括在所述文本段中提取與上述問題相似性最高的句子作為答案句子。
10.根據(jù)權利要求9所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述在所述文本段中提取上述問題的答案的步驟,進一步包括將在與該答案句子相鄰的句子中,與該答案句子相似性最高的一個和多個句子擴展到該答案句子中。
11.根據(jù)權利要求9~10的任意一項所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,句子之間的相似性是通過該句子中包含的關鍵詞來計算的。
12.根據(jù)權利要求9~11的任意一項所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,還包括在提取上述問題的答案之后,允許作者核實所述提取的答案,確保答案的可靠性。
13.根據(jù)權利要求2所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述在所述文本段中提取上述問題的答案的步驟,包括由作者手工輸入和/或指定所述問題的答案。
14.根據(jù)權利要求1所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述利用所述問與答信息提供問與答功能的步驟,包括讀出與所述電子文檔對應的問與答信息;將所述問與答信息包含的問題提供給用戶選擇;以及響應用戶的選擇,提供相應的答案。
15.根據(jù)權利要求1所述的為電子文檔實現(xiàn)問與答功能的方法,其特征在于,所述利用所述問與答信息提供問與答功能的步驟,包括讀出與所述電子文檔對應的問與答信息;由用戶輸入希望得到答案的問題;以及根據(jù)用戶輸入的問題和所述問與答信息中包含的問題的相似性,將與用戶輸入的問題最接近的一個或多個問題及答案提供給用戶。
16.一種計算機輔助寫作的方法,其特征在于,包括在作者編輯所述電子文檔時,生成用于所述電子文檔的問與答功能的問與答信息;與所述電子文檔對應地保存所述問與答信息。
17.根據(jù)權利要求16所述的計算機輔助寫作的方法,其特征在于,所述生成用于問與答功能的問與答信息的步驟包括根據(jù)作者輸入的文本段,生成一個或多個問題;以及在所述文本段中提取上述問題的答案。
18.根據(jù)權利要求17所述的計算機輔助寫作的方法,其特征在于,所述生成一個或多個問題的步驟包括根據(jù)作者輸入的文本段中的關鍵詞,從一個問題資料庫中選擇一個或多個問題。
19.根據(jù)權利要求18所述的計算機輔助寫作的方法,其特征在于,所述從一個問題資料庫中選擇一個或多個問題的步驟包括根據(jù)所述文本段中的每個關鍵詞的出現(xiàn)頻率和/或在所述電子文檔的其他文本段中出現(xiàn)的頻率,為所述關鍵詞計算權重;按照所述文本段中每個關鍵詞的權重提取關鍵詞串;計算所述提取出的關鍵詞串與所述問題資料庫中的問題的相似性;以及選擇相似性高的一個或多個問題。
20.根據(jù)權利要求19所述的計算機輔助寫作的方法,其特征在于,所述問題資料庫中的問題被聚類;其中,所述計算所述提取出的關鍵詞串與所述問題資料庫中的問題的相似性的步驟,只計算所述提取出的關鍵詞串與所述問題資料庫中問題聚類中心的相似性。
21.根據(jù)權利要求17所述的計算機輔助寫作的方法,其特征在于,所述生成一個或多個問題的步驟包括對輸入的文本段進行詞語切分;對所述文本段中的句子進行句法分析;對所述文本段進行命名實體識別;以及根據(jù)預定的規(guī)則對識別出的命名實體生成問題。
22.根據(jù)權利要求17~21的任意一項所述的計算機輔助寫作的方法,其特征在于,還包括在所述生成一個或多個問題之后,允許作者核實所述生成的問題。
23.根據(jù)權利要求17所述的計算機輔助寫作的方法,其特征在于,所述生成一個或多個問題的步驟包括作者手工輸入一個或多個問題。
24.根據(jù)權利要求17所述的計算機輔助寫作的方法,其特征在于,所述在所述文本段中提取上述問題的答案的步驟,包括在所述文本段中提取與上述問題相似性最高的句子作為答案句子。
25.根據(jù)權利要求24所述的計算機輔助寫作的方法,其特征在于,所述在所述文本段中提取上述問題的答案的步驟,進一步包括將在與該答案句子相鄰的句子中,與該答案句子相似性最高的一個和多個句子擴展到該答案句子中。
26.根據(jù)權利要求24~25的任意一項所述的計算機輔助寫作的方法,其特征在于,句子之間的相似性是通過該句子中包含的關鍵詞來計算的。
27.根據(jù)權利要求24~26的任意一項所述的計算機輔助寫作的方法,其特征在于,還包括在提取上述問題的答案之后,允許作者核實所述提取的答案。
28.根據(jù)權利要求17所述的計算機輔助寫作的方法,其特征在于,所述在所述文本段中提取上述問題的答案的步驟,包括由作者手工輸入和/或指定所述問題的答案。
29.一種瀏覽電子文檔的方法,其特征在于,與所述電子文檔對應地保存有用于問與答功能的問與答信息,所述方法包括讀出所述電子文檔的內(nèi)容以及對應的問與答信息;將所述電子文檔的內(nèi)容呈現(xiàn)給用戶;以及響應用戶的操作,利用所述問與答信息提供問與答功能。
30.根據(jù)權利要求29所述的瀏覽電子文檔的方法,其特征在于,所述問與答信息包含關于所述電子文檔的一個或多個問題以及相應的答案,所述利用所述問與答信息提供問與答功能的步驟,包括將所述問與答信息包含的問題提供給用戶選擇;以及響應用戶的選擇,呈現(xiàn)給用戶相應的答案。
31.根據(jù)權利要求29所述的瀏覽電子文檔的方法,其特征在于,所述問與答信息包含關于所述電子文檔的一個或多個問題以及相應的答案,所述利用所述問與答信息提供問與答功能的步驟,包括由用戶輸入希望得到答案的問題;以及根據(jù)用戶輸入的問題和所述問與答信息中包含的問題的相似性,將與用戶輸入的問題最接近的一個或多個問題及對應的答案呈現(xiàn)給用戶。
32.一種輔助寫作裝置,其特征在于,包括電子文檔編輯單元,用于編輯電子文檔;問題生成單元,用于根據(jù)所述電子文檔編輯單元中輸入的文本,生成一個或多個問題;答案生成單元,用于根據(jù)所述電子文檔編輯單元中的文本,為由上述問題生成單元生成的問題生成答案;以及問與答信息保存單元,用于將上述生成的問題和相應的答案作為問與答信息,與所述被編輯的電子文本對應地保存。
33.根據(jù)權利要求32所述的輔助寫作裝置,其特征在于,進一步包括問題資料庫,在該問題資料庫中保存有多個問題;其中,所述問題生成單元,根據(jù)輸入的文本段中的關鍵詞,從所述問題資料庫中選擇一個或多個問題。
34.根據(jù)權利要求33所述的輔助寫作裝置,其特征在于,所述問題生成單元包括用于根據(jù)所述文本段中的每個關鍵詞的出現(xiàn)頻率和/或在所述電子文檔的其他文本段中出現(xiàn)的頻率為所述關鍵詞計算權重的裝置;用于按照所述文本段中每個關鍵詞的權重提取關鍵詞串的裝置;用于計算所述提取出的關鍵詞串與所述問題資料庫中的問題的相似性的裝置;以及用于選擇相似性高的一個或多個問題的裝置。
35.根據(jù)權利要求32所述的輔助寫作裝置,其特征在于,所述問題生成單元包括用于對輸入的文本段進行詞語切分的裝置;用于對所述文本段中的句子進行句法分析的裝置;用于對所述文本段進行命名實體識別的裝置;以及用于根據(jù)預定的規(guī)則對識別出的命名實體生成問題的裝置。
36.根據(jù)權利要求32~35的任意一項所述的輔助寫作裝置,其特征在于,還包括問與答評價單元,用于允許作者對生成的問題和答案進行評價、核實。
37.一種能夠提供問與答功能的瀏覽器,其特征在于,包括電子文檔瀏覽單元,用于瀏覽電子文檔;問與答信息提取單元,用于提取與所述被瀏覽的電子文檔對應保存的問與答信息,在所述問與答信息中包含有與該電子文檔有關的問題和相應的答案;以及問與答呈現(xiàn)單元,用于將所述問與答信息中包含的問題和答案呈現(xiàn)給用戶。
38.根據(jù)權利要求37所述的能夠提供問與答功能的瀏覽器,其特征在于,包括相似性計算單元,用于計算用戶輸入的問題和所述問與答信息中的問題的相似性;其中,所述問與答呈現(xiàn)單元,將與用戶輸入的問題最接近的一個或多個問題及對應的答案呈現(xiàn)給用戶。
39.一種利用計算機提供問與答服務的方法,其特征在于,所述方法包括提取分別與多個電子文檔對應的問與答信息,所述問與答信息中包含有與所述電子文檔有關的問題和相應的答案;對提取出的問與答信息編制索引;根據(jù)用戶輸入的問題,從所述問與答信息中查找出最相似的一個或多個問題;以及將所述問題和相應的答案呈現(xiàn)給所述用戶。
40.根據(jù)權利要求39所述的利用計算機提供問與答服務的方法,其特征在于,所述方法進一步包括響應所述用戶的操作,將所述用戶選擇的問題對應的電子文檔的內(nèi)容或鏈接提供給所述用戶。
41.根據(jù)權利要求39所述的利用計算機提供問與答服務的方法,其特征在于,所述根據(jù)用戶輸入的問題從所述問與答信息中查找出最相似的一個或多個問題的步驟,包括計算用戶輸入的問題與所述問與答信息中每個問題的相似性;選擇所述問與答信息中相似性最高的一個或多個問題。
42.一種提供問與答服務的系統(tǒng),其特征在于,包括問與答信息提取裝置,用于提取分別與多個電子文檔對應的問與答信息,所述問與答信息中包含有與所述電子文檔有關的問題和相應的答案;問與答索引裝置,用于對提取出的問與答信息編制索引;問與答索引庫,用于保存由上述問與答索引裝置編制的問與答信息索引;問與答查找裝置,用于根據(jù)用戶輸入的問題,從所述問與答索引庫中查找出最相似的一個或多個問題;以及問與答呈現(xiàn)裝置,用于將所述查找出的問題和相應的答案呈現(xiàn)給所述用戶。
全文摘要
本發(fā)明提供了為電子文檔實現(xiàn)問與答功能的方法、計算機輔助寫作方法、瀏覽電子文檔的方法、輔助寫作裝置、能夠提供問與答功能的瀏覽器、利用計算機提供問與答服務的方法和提供問與答服務的系統(tǒng)。所述為電子文檔實現(xiàn)問與答功能的方法,包括在作者寫作電子文檔時,生成用于問與答功能的問與答信息;由作者確保所生成問與答信息的可靠性;與所述電子文檔對應地保存所述問與答信息;以及利用所述問與答信息提供問與答功能。
文檔編號G06N5/04GK1629833SQ20031012128
公開日2005年6月22日 申請日期2003年12月17日 優(yōu)先權日2003年12月17日
發(fā)明者劉世霞, 楊力平 申請人:國際商業(yè)機器公司