用于針對自然語言處理任務的內(nèi)容可用性的方法和系統(tǒng)的制作方法
【技術領域】
[0001]本發(fā)明涉及用于針對自然語言處理任務的內(nèi)容可用性的方法和系統(tǒng)。
【背景技術】
[0002]對于要求針對自然語言處理(NLP)任務的非結構化文本輸入的計算任務,經(jīng)常難于將文檔從大量格式轉換成“普通”句子。例如,對于依賴于大量非結構化句子來解析以便在攝取過程期間形成語料庫的問題/回答(QA)系統(tǒng),包括圖表(diagram)的文檔提供了極大困難。即使圖表可以被轉換成更多文本格式(例如,HTML等),圖表也可以證明是使系統(tǒng)非常難以正確解譯語義。一個常用方式是直接忽略圖表和圖像以及按照除了句子以外的方式被結構化的文本。這趨向于易于實施,但是一些可能非常重要的內(nèi)容被丟棄。另一方式是針對許多類型的內(nèi)容中的每個類型(比如每個類型的圖表)編寫新的轉換器。盡管有效,但這由于內(nèi)容的類型和布局增多而可能昂貴并且耗費時間。
【發(fā)明內(nèi)容】
[0003]提供了一種用于使各種類型的內(nèi)容可用于自然語言處理(NLP)任務的方式。在該方式中,文檔分節(jié)的屏幕視圖被提供作為對屏幕讀取器應用的輸入。屏幕讀取器應用將在該屏幕上顯示的信息轉換為自然語言格式。然后對該自然語言格式執(zhí)行NLP操作。在一個實施例中,NLP操作由問題和回答(QA)系統(tǒng)執(zhí)行。在另一實施例中,在文檔分節(jié)被輸入到屏幕讀取器應用之前,包括該文檔分節(jié)的整個文檔被接收并且該文檔分節(jié)被標識為與用來轉換文檔內(nèi)容的一個或者多個本機轉換器不兼容的分節(jié)。
[0004]在一個實施例中,包括多個文檔分節(jié)的輸入文檔被接收。與用來轉換文檔內(nèi)容的本機轉換器兼容的文檔分節(jié)集合被標識,并且這一文檔分節(jié)集合使用本地轉換器被轉換。與本機轉換器不兼容的另一文檔分節(jié)集合被標識,并且這一集合通過向屏幕讀取器應用輸入與這一文檔分節(jié)集合對應的屏幕視圖被轉換為NLP格式。在又一實施例中,不兼容文檔分節(jié)的標識包括檢測與不兼容文檔分節(jié)對應的內(nèi)容類型,其中該內(nèi)容類型是圖表、表格、圖片或者非文本文檔類型。在再一實施例中,過程接收可聽語音作為來自屏幕讀取器應用的輸入。可聽語音輸入然后被輸入到將可聽語音轉換為文本NLP格式的語音識別應用。在再一實施例中,過程將使用本機文檔轉換器轉換的文檔部分和使用屏幕讀取器應用轉換的文檔分節(jié)合并,其中作為結果的合并的文檔按照與原始輸入文檔相同的順序。
[0005]前述是概要并且因此必然地包含對細節(jié)的簡化、概括和省略;因此,本領域技術人員將領會到該概要僅為例示性并且并未旨在于是以任何方式的限制。如僅僅由權利要求限定的本發(fā)明的其他方面、創(chuàng)造性特征和優(yōu)點將在以下闡明的非限制性詳細描述中變得顯而易見。
【附圖說明】
[0006]通過參照附圖,本發(fā)明可以被更好地理解并且其大量目標、特征和優(yōu)點將被使得對本領域技術人員顯而易見,在附圖中:
[0007]圖1描繪了包括利用知識庫的知識管理器的網(wǎng)絡環(huán)境;
[0008]圖2是信息處置系統(tǒng)(informat1n handling system)的比如在圖1中示出的處理器和組件的框圖;
[0009]圖3是描繪了在使各種類型的內(nèi)容可用于自然語言處理(NLP)任務時使用的各種組件的組件示圖;
[0010]圖4是對示出了用來使各種類型的內(nèi)容可用于自然語言處理(NLP)任務的邏輯的流程圖的描繪;
[0011]圖5是對示出了用來處理內(nèi)容的邏輯的流程圖的描繪;以及
[0012]圖6是對示出了執(zhí)行利用屏幕讀取器將文檔的分節(jié)轉換為適合于自然語言處理(NLP)任務的轉換的形式的過程的邏輯的流程圖的描繪。
【具體實施方式】
[0013]所屬技術領域的技術人員知道,本發(fā)明的各個方面可以實現(xiàn)為系統(tǒng)、方法或計算機程序產(chǎn)品。因此,本發(fā)明的各個方面可以具體實現(xiàn)為以下形式,即:完全的硬件實施方式、完全的軟件實施方式(包括固件、駐留軟件、微代碼等),或硬件和軟件方面結合的實施方式,這里可以統(tǒng)稱為“電路”、“模塊”或“系統(tǒng)”。此外,在一些實施例中,本發(fā)明的各個方面還可以實現(xiàn)為在一個或多個計算機可讀介質中的計算機程序產(chǎn)品的形式,該計算機可讀介質中包含計算機可讀的程序代碼。
[0014]可以采用一個或多個計算機可讀介質的任意組合。計算機可讀介質可以是計算機可讀信號介質或者計算機可讀存儲介質。計算機可讀存儲介質例如可以是一一但不限于一一電、磁、光、電磁、紅外線、或半導體的系統(tǒng)、裝置或器件,或者任意以上的組合。計算機可讀存儲介質的更具體的例子(非窮舉的列表)包括:具有一個或多個導線的電連接、便攜式計算機盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPR0M或閃存)、光纖、便攜式緊湊盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計算機可讀存儲介質可以是任何包含或存儲程序的有形介質,該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結合使用。
[0015]計算機可讀的信號介質可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計算機可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括一一但不限于一一電磁信號、光信號或上述的任意合適的組合。計算機可讀的信號介質還可以是計算機可讀存儲介質以外的任何計算機可讀介質,該計算機可讀介質可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結合使用的程序。
[0016]計算機可讀介質上包含的程序代碼可以用任何適當?shù)慕橘|傳輸,包括一一但不限于一一無線、有線、光纜、RF等等,或者上述的任意合適的組合。
[0017]可以以一種或多種程序設計語言的任意組合來編寫用于執(zhí)行本發(fā)明操作的計算機程序代碼,所述程序設計語言包括面向對象的程序設計語言一諸如Java、Smalltalk、C++等,還包括常規(guī)的過程式程序設計語言一諸如“C”語言或類似的程序設計語言。程序代碼可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為一個獨立的軟件包執(zhí)行、部分在用戶計算機上部分在遠程計算機上執(zhí)行、或者完全在遠程計算機,服務器或服務器集群上執(zhí)行。在涉及遠程計算機的情形中,遠程計算機可以通過任意種類的網(wǎng)絡一一包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計算機,或者,可以連接到外部計算機(例如利用因特網(wǎng)服務提供商來通過因特網(wǎng)連接)。
[0018]下面將參照根據(jù)本發(fā)明實施例的方法、裝置(系統(tǒng))和計算機程序產(chǎn)品的流程圖和/或框圖描述本發(fā)明。應當理解,流程圖和/或框圖的每個方框以及流程圖和/或框圖中各方框的組合,都可以由計算機程序指令實現(xiàn)。這些計算機程序指令可以提供給通用計算機、專用計算機或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機器,使得這些計算機程序指令在通過計算機或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時,產(chǎn)生了實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的裝置。
[0019]也可以把這些計算機程序指令存儲在計算機可讀介質中,這些指令使得計算機、其它可編程數(shù)據(jù)處理裝置、或其他設備以特定方式工作,從而,存儲在計算機可讀介質中的指令就產(chǎn)生出包括實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的指令的制造品(article of manufacture)。
[0020]也可以把這些計算機程序指令加載到計算機、其他可編程數(shù)據(jù)處理裝置或者其他設備上以使得在該計算機、其他可編程裝置或者其他設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機可實施過程,從而使得在計算機或者其他可編程裝置上執(zhí)行的指令提供用于實施流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的過程。
[0021]圖1描繪了計算機網(wǎng)絡102中的問題/回答創(chuàng)建(QA)系統(tǒng)100的一個例示性實施例的示意圖。知識管理器100可以包括連接到計算機網(wǎng)絡102的計算設備104(包括一個或者多個處理器和一個或者多個存儲器,并且潛在地包括在本領域中眾所周知的任何其他計算設備元件,包括總線、存儲設備、通信接口等)。網(wǎng)絡102可以包括經(jīng)由一個或者多個有線和/或無線數(shù)據(jù)通信鏈路相互通信或者與其他設