TWI640877B - 語意分析裝置、方法及其電腦程式產品 - Google Patents
語意分析裝置、方法及其電腦程式產品 Download PDFInfo
- Publication number
- TWI640877B TWI640877B TW106119812A TW106119812A TWI640877B TW I640877 B TWI640877 B TW I640877B TW 106119812 A TW106119812 A TW 106119812A TW 106119812 A TW106119812 A TW 106119812A TW I640877 B TWI640877 B TW I640877B
- Authority
- TW
- Taiwan
- Prior art keywords
- probability distribution
- probability
- semantic analysis
- chinese character
- distributions
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/53—Processing of non-Latin text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Algebra (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Document Processing Apparatus (AREA)
- Machine Translation (AREA)
Abstract
一種語意分析裝置、方法及其電腦程式產品。該語意分析裝置對一中文字串詞彙分析以得複數個群組,且對該等群組語意分析以得至少一第一機率分布,各該至少一第一機率分布包含複數個第一機率值一對一地對應至複數個標籤。該語意分析裝置將該中文字串區分為複數個漢字,對該等漢字語意分析以得至少一第二機率分布,各該至少一第二機率分布包含複數個第二機率值一對一地對應至該等標籤。該語意分析裝置根據該至少一第一機率分布及該至少一第二機率分布計算出至少一第三機率分布,且根據該至少一第三機率分布決定該中文字串之至少一輸出資訊。
Description
本發明係關於一種語意分析裝置、方法及其電腦程式產品。更具體而言,本發明係關於一種中文語意分析裝置、方法及其電腦程式產品。
隨著科技的快速發展以及社群平台的興盛,透過各種輸入介面提供各種資訊(例如:文字訊息、語音訊息)已成為人們日常生活中不可或缺的元素。在不同的應用領域(例如:人機介面)中,如何正確地解讀人們所提供的資訊,以便基於解讀後的資訊提供適當的回應或/及服務,是一個日益重要的議題。
習知的中文語意分析技術可區分為二大類,其中一類是利用深度學習網路判斷一中文字串所代表之意圖,而另一類則是採用關鍵字分析技術標出一中文字串中之關鍵字。不論是哪一類技術,在進行中文語意分析之前,皆須先對該中文字串進行斷詞(Word Segmentation)。
習知的中文語意分析技術極度仰賴前端斷詞之正確性。儘管目前已有多種斷詞技術,但這些技術在對一中文字串斷詞時,仍難以處理「歧義識別」及「新詞識別」二個議題。歧異識別是指同一中文字串可能有
二種以上之斷詞結果。新詞識別則是指中文字串中含有未被登錄之詞彙,也就是那些未收錄於字典但卻被實際使用之詞彙。由於習知的斷詞技術無法克服這些問題,導致後續的中文語意分析之結果不夠精準。
有鑑於此,本領域亟需一種能降低對斷詞技術之仰賴程度且能提高語意分析正確性之語意分析技術。
本發明之一目的在於提供一種語意分析裝置。該語意分析裝置包含一輸入介面、一儲存器及一處理器,其中該處理器電性連接至該輸入介面及該儲存器。該儲存器儲存複數個標籤。該輸入介面接收一中文字串。該處理器對該中文字串進行詞彙分析以得複數個群組,對該等群組進行語意分析以得至少一第一機率分布,其中各該至少一第一機率分布包含複數個第一機率值一對一地對應至該等標籤。該處理器更將該中文字串區分為複數個漢字,對該等漢字進行語意分析以得至少一第二機率分布,其中各該至少一第二機率分布包含複數個第二機率值一對一地對應至該等標籤。該處理器更根據該至少一第一機率分布及該至少一第二機率分布計算出至少一第三機率分布,且根據該至少一第三機率分布決定該中文字串之至少一輸出資訊,其中該至少一輸出資訊與該等標籤其中之一相關。
本發明之另一目的在於提供一種語意分析方法,其係適用於一電子計算裝置。該分析方法包含下列步驟:(a)對該中文字串進行詞彙分析以得複數個群組,(b)將該中文字串區分為複數個漢字,(c)對該等群組進行語意分析以得至少一第一機率分布,其中各該至少一第一機率分布包含複數個第一機率值一對一地對應至複數個標籤,(d)對該等漢字進行語意分
析以得至少一第二機率分布,各該至少一第二機率分布包含複數個第二機率值一對一地對應至該等標籤,(e)根據該至少一第一機率分布及該至少一第二機率分布計算出至少一第三機率分布,以及(f)根據該至少一第三機率分布決定該中文字串之至少一輸出資訊,其中該至少一輸出資訊與該等標籤其中之一相關。
本發明之又一目的在於提供一種電腦程式產品。一電子計算裝置載入該電腦程式產品後,該電子計算裝置執行該電腦程式產品所包含之複數個程式指令,以執行前段所述之語意分析方法。
本發明所提供之語意分析技術(包含裝置、方法及其電腦程式產品)採用一種混合推論架構(亦即,對一中文字串之斷詞結果進行語意分析,且對該中文字串所包含之漢字進行語意分析,再整合二者之語意分析結果)。藉由混和推論架構,本發明所提供之語意分析技術能降低對斷詞技術之仰賴程度,並整合漢字所具有之語意資訊,故能產生較為正確之語意分析結果。
在參閱圖式及隨後描述之實施方式後,此技術領域具有通常知識者便可瞭解本發明之其他目的,以及本發明之技術手段及實施態樣。
1‧‧‧語意分析裝置
11‧‧‧儲存器
13‧‧‧處理器
15‧‧‧輸入介面
10‧‧‧中文字串
10a‧‧‧標籤
10b‧‧‧標籤
100‧‧‧第一機率分布
102‧‧‧第二機率分布
104‧‧‧第三機率分布
S301~S311‧‧‧步驟
第1A圖係描繪第一及第二實施方式之語意分析裝置1之架構示意圖;第1B圖係描繪第一機率分布、第二機率分布及第三機率分布之具體範例;第2A圖係描繪一具體範例中之多個群組以及各群組所對應
之最大第一機率值所對應之標籤;第2B圖係描繪一具體範例中之多個漢字以及各漢字所對應之最大第二機率值所對應之標籤;第2C圖係描繪整合群組之語意分析結果及漢字之語意分析結果後之輸出資訊之具體範例;以及第3圖係描繪第三實施方式之語意分析方法之流程圖。
以下將透過實施方式來解釋本發明所提供之語意分析裝置、方法及其電腦程式產品。然而,該等實施方式並非用以限制本發明需在如該等實施方式所述之任何環境、應用或方式方能實施。因此,關於實施方式之說明僅為闡釋本發明之目的,而非用以限制本發明之範圍。應理解,在以下實施方式及圖式中,與本發明非直接相關之元件已省略而未繪示,且各元件之尺寸以及元件間之尺寸比例僅為例示而已,而非用以限制本發明之範圍。
本發明之第一實施方式為一語意分析裝置1,其架構示意圖係描繪於第1A圖。語意分析裝置1包含一儲存器11、一處理器13及一輸入介面15,其中處理器13電性連接至儲存器11及輸入介面15。儲存器11可為一記憶體、一通用串列匯流排(Universal Serial Bus;USB)碟、一硬碟、一光碟(Compact Disk;CD)、一隨身碟、一資料庫或本發明所屬技術領域中具有通常知識者所知且具有相同功能之任何其他儲存媒體或電路。處理器13可為各種處理器、中央處理單元(Central Processing Unit;CPU)、微處理器或本發明所屬技術領域中具有通常知識者所知之其他計算裝置中之任一者。輸入介面15可為各種能接收文字資訊之裝置。
儲存器11儲存複數個標籤10a、…、10b,且標籤10a、…、10b中的每一個對應至一涵義。於本實施方式中,語意分析裝置1被設計為用於意圖分析(亦即,分析中文字串之涵義以了解意圖/目的),因此標籤10a、…、10b中的每一個與一意圖相關。舉例而言,儲存器11可儲存六個標籤,包含:「find_location」、「reserve_restaurant」、「reserve_hotel_room」、「find_restaurant」、「find_hotel」及「find_route」,其所對應之涵義分別為「找地點」、「訂餐廳」、「訂房」、「找餐廳」、「找旅館」及「找路徑」。
輸入介面15接收一中文字串10。需說明者,本發明未限制輸入介面15自何處接收中文字串10(例如:輸入介面15可自鍵盤或網路接收使用者所輸入之中文字串,可接收經由語音辨識技術處理後之中文字串,可接收經影像辨識技術處理後之中文字串等等),且未限制輸入介面15所接收之中文字串10之內容是否正確(例如:中文字串可能包含錯字)。
處理器13會對中文字串10做二種不同的分解,對二種不同的分解結果個別地進行語意分析,再整合二種語意分析結果。
茲先說明其中一種分解方式及後續之語意分析。具體而言,處理器13將中文字串10進行詞彙分析,並因此得到複數個群組,其中各群組可為一漢字或一詞彙。處理器13可採用各種斷詞(Word Segmentation)技術進行前述詞彙分析,其係為本發明所屬技術領域中具有通常知識者所熟知,故不詳述其運作細節。舉例而言,處理器13可採用基於字串匹配的斷詞技術、基於統計的斷詞技術或基於理解的斷詞技術等等。
接著,處理器13對該等群組進行語意分析以得一第一機率分布。於某些實施方式中,處理器13可先將各群組轉換成一向量再進行語意分
析。此外,於某些實施方式中,處理器13可採用深度學習網路來對該等群組進行語意分析以得到該第一機率分布,其中該第一機率分布包含複數個第一機率值一對一地對應至標籤10a、…、10b。需說明者,前述深度學習網路為本發明所屬技術領域中具有通常知識者所熟知的技術,故不詳述其運作細節。
茲說明另一種分解方式及後續之語意分析。具體而言,處理器13將中文字串10區分為複數個漢字(亦即,以漢字為單位進行分解)。接著,處理器13對該等漢字進行語意分析以得一第二機率分布。於某些實施方式中,處理器13可先將各漢字轉換成一向量再進行語意分析。類似的,於某些實施方式中,處理器13可採用深度學習網路來對該等漢字進行語意分析以得到該第二機率分布,其中該第二機率分布包含複數個第二機率值一對一地對應至標籤10a、…、10b。
在獲得二種不同的語意分析結果(亦即,該第一機率分布及該第二機率分布)後,處理器13會整合此二種語意分析結果。具體而言,處理器13根據該第一機率分布及該第二機率分布計算出一第三機率分布,其中該第三機率分布包含複數個第三機率值一對一地對應至標籤10a、…、10b。於某些實施方式中,處理器13可將該第一機率分布及該第二機率分布平均以計算出該第三機率分布。需說明者,於該等實施方式中,處理器13係將對應至同一標籤之第一機率值及第二機率值平均。另外,於某些實施方式中,處理器13可根據一第一權重值加權該第一機率分布且根據一第二權重值加權該第二機率分布以計算出該第三機率分布。需說明者,於該等實施方式中,處理器13係將對應至同一標籤之第一機率值及第二機率值進行加權
計算。此外,處理器13可採用神經網路、線性回歸或其他類似的技術進行前述加權計算。再者,於某些實施方式中,處理器13根據一第一權重值加權該第一機率分布且根據一第二權重值加權該第二機率分布後,會再加上一偏移值,並以該結果作為該第三機率分布。
在整合二種不同的語意分析結果(亦即,計算出該第三機率分布)後,處理器13會根據該第三機率分布決定一輸出資訊。舉例而言,處理器13可根據最大的第三機率值決定該輸出資訊。
為便於理解,茲以一具體範例說明,然而此具體範例並非用以限制本發明之範圍。茲假設中文字串10之內容為「請問餐廳在哪」。處理器13對中文字串10進行詞彙分析,並因此獲得三個群組,分別為「請問」、「餐廳」及「在哪」。接著,處理器13對此三個群組(亦即,「請問」、「餐廳」及「在哪」)進行語意分析,並因此得到一第一機率分布100。請參第1B圖,其係顯示此具體範例中之第一機率分布100所包含之六個第一機率值,其中這六個第一機率值一對一地對應至標籤10a、…、10b(亦即,「find_location」、「reserve_restaurant」、「reserve_hotel_room」、「find_restaurant」、「find_hotel」及「find_route」)。
另一方面,處理器13將中文字串10區分為複數個漢字,分別為「請」、「問」、「餐」、「廳」、「在」、「哪」。接著,處理器13以這六個漢字進行語意分析,並因此得到一第二機率分布102。請參第1B圖,其亦顯示此具體範例中之第二機率分布102所包含之六個第二機率值,其中該六個第二機率值一對一地對應至標籤10a、…、10b(亦即,「find_location」、「reserve_restaurant」、「reserve_hotel_room」、「find_restaurant」、「find_hotel」
及「find_route」)。
由第1B圖可知,第一機率分布100中最大的第一機率值所對應的標籤為「find_route」(為錯誤的語意分析結果),而第二機率分布102中最大的第二機率值所對應的標籤為「find_restaurant」(為正確的語意分析結果)。由於處理器13會整合群組的第一機率分布及漢字的第二機率分布以產生第三機率分布,因此不論第一機率分布所呈現的語意分析結果是否正確,都可以透過整合第二機率分布而修正語意分析結果。換言之,考量到處理器13以漢字來進行中文字串10之語意分析之結果通常會有正確的語意分析結果,但漢字本身所具有的文義卻少於詞彙所具有的文義,故處理器13整合此二語意分析結果。
舉例而言,於此具體範例中,處理器13係將第一機率分布100及第二機率分佈102平均以獲得第三機率分布104。如第1B圖所示,第三機率分布104包含之六個第三機率值,其中這六個第三機率值一對一地對應至標籤10a、…、10b(亦即,「find_location」、「reserve_restaurant」、「reserve_hotel_room」、「find_restaurant」、「find_hotel」及「find_route」)。如第1B圖所示,對應至標籤「find_restaurant」的第三機率值最大。處理器13便根據此最大的第三機率值決定輸出資訊。舉例而言,輸出資訊可為此最大的第三機率值對應的標籤所對應的涵義(亦即,「找餐廳」)。
由上述說明可知,第一實施方式之語意分析裝置1對中文字串10做二種不同的分解(亦即透過斷詞技術將中文字串10分解成多個群組且將中文字串10區分為多個漢字),以對二種不同的分解結果個別地進行語意分析,再整合二種語意分析結果以了解中文字串10所代表之意圖/涵義。
由於語意分析裝置1整合了較為明確之語意分析結果(亦即,該等漢字之語意分析結果)以及基於詞彙特性去分析所獲得之語意分析結果(亦即,該等群組之語意分析結果),故能克服先前技術因錯誤的斷詞結果或錯誤的中文字串辨識所導致的語意分析錯誤。此外,由於結合了以漢字對中文字串進行語意分析,因此能克服習知技術所無法處理之「歧義識別」及「新詞識別」等議題,因而能產生更為正確的語意分析結果,且更為正確地決定出中文字串10所代表之意圖/涵義。
關於本發明之第二實施方式,請參照第1A、2A、2B及2C圖。於本實施方式中,處理器13亦會對中文字串10做二種不同的分解,對二種不同的分解結果個別地進行語意分析,再整合二種語意分析結果。需說明者,處理器13係採用與第一實施方式相同之技術對中文字串10做二種分解(亦即,將中文字串10分解為多個群組且將中文字串10分解為多個漢字),故不贅言。以下將僅詳述本實施方式與第一實施方式相異之處。
於本實施方式中,語意分析裝置1被設計為用於關鍵字分析(亦即,分析中文字串10以辨識出其可能包含之關鍵字/詞彙)。為了達成前述分析,儲存器11所儲存之標籤10a、...、10b包含一空標籤(用於對應至不具有實質意義之群組或漢字及其他標籤無法對應的新詞,例如:「是」、「之」、「也」等連接詞)及多個具有文義屬性之標籤。舉例而言,儲存器11可儲存七個標籤,包含:「O」、「B.date」、「I.date」、「B.nationals」、「I.nationals」、「B.people」及「B.country」。標籤「O」代表「空標籤」,而其餘的六個標籤為具有文義屬性之標籤。前述六個具有文義屬性之標籤中的每一個由二部分組成,其中第一部分代表順序,而第二部分代表文義屬性。具體而言,六
個標籤(亦即,「B.date」、「I.date」、「B.nationals」、「I.nationals」、「B.people」及「B.country」)中的「B」代表順序為起始,「I」代表順序並非起始,「date」代表日期,「nationals」代表國籍,「people」代表人民,且「country」代表國家。須說明者,標籤中的「B」及「I」僅用於協助處理器13判斷群組或漢字的順序,並不會影響輸出結果。
於本實施方式中,處理器13對經由詞彙分析後所獲得之該等群組進行語意分析後係獲得複數個第一機率分布,其中該等第一機率分布一對一地對應至該等群組(亦即,一個群組對應至一個第一機率分布),且各該第一機率分布包含複數個第一機率值一對一地對應到標籤10a、...、10b。此外,處理器13對經由漢字分解所獲得之該等漢字進行語意分析後係獲得複數個第二機率分布,其中該等第二機率分布一對一地對應至該等漢字(亦即,一個漢字對應至一個第二機率分布),且各該第二機率分布各含複數個第二機率值一對一地對應到標籤10a、...、10b。
在獲得二種不同的語意分析結果(亦即,該等第一機率分布及該等第二機率分布)後,處理器13會整合此二種語意分析結果(亦即,處理器13根據該等第一機率分布及該等第二機率分布計算出複數個第三機率分布,其中各該第三機率分布包含複數個第三機率值一對一地對應至標籤10a、…、10b)。具體而言,處理器13對各該漢字進行以下運作:(a)根據該漢字選取該等群組其中之一作為一選定群組,其中該選定群組包含該漢字,以及(b)根據該漢字所對應之該第二機率分布及該選定群組所對應之該第一機率分布計算出該漢字之一修正機率分布,其中該修正機率分布為該等第三機率分布其中之一。
於某些實施方式中,處理器13係將互相對應之第一機率分布及第二機率分布(亦即,某一漢字之第二機率分布以及包含該漢字之群組之第一機率分布)平均以計算出該等第三機率分布。需說明者,於該等實施方式中,處理器13係將對應至同一標籤之第一機率值及第二機率值平均。另外,於某些實施方式中,處理器13係將互相對應之第一機率分布及第二機率分布(亦即,某一漢字之第二機率分布以及包含該漢字之群組之第一機率分布)分別地以一第一權重值及一第二權重值加權,甚至再加上一偏移值(可選擇地),藉此計算出該等第三機率分布。需說明者,於該等實施方式中,處理器13係將對應至同一標籤之第一機率值及第二機率值進行加權計算。此外,處理器13可採用神經網路、線性回歸或其他類似的技術進行前述加權計算。
在整合二種不同的語意分析結果(亦即,計算出該等第三機率分布)後,處理器13會根據該等第三機率分布決定中文字串10之複數個輸出資訊。具體而言,針對各該漢字,處理器13以該漢字所對應之該修正機率分布(為該等第三機率分布其中之一)所包含之該等第三機率值,決定該漢字所對應之輸出資訊。舉例而言,針對各該漢字,處理器13可根據該漢字所對應之該修正機率分布中最大的第三機率值決定該漢字之該輸出資訊。
為便於理解,茲以一具體範例說明,然而此具體範例並非用以限制本發明之範圍。茲假設中文字串10之內容為「今天是台灣人民主之日」,且儲存器11儲存七個標籤,包含:「O」、「B.date」、「I.date」、「B.nationals」、「I.nationals」、「B.people」及「B.country」,其中各標籤所代表之涵義如前所述。
於此具體範例中,處理器13對中文字串10進行詞彙分析後得到五個群組(包含:「今天」、「是」、「台灣」、「人民」及「主之日」,如第2A圖所示)。處理器13對此五個群組(亦即,「今天」、「是」、「台灣」、「人民」及「主之日」)進行語意分析,並因此得到五個第一機率分布。這五個第一機率分布一對一地對應至前述五個群組,且各該第一機率分布包含七個第一機率值一對一地對應至前述七個標籤。第2A圖亦繪示出各群組所對應之第一機率分布中之最大第一機率值所對應之標籤,例如:群組「今天」所對應之第一機率分布中之最大第一機率值對應至標籤「B.date」。需說明者,若採用習知技術,輸出資訊即為第2A圖所示之對應關係。
另一方面,處理器13將中文字串10區分為十個漢字(包含:「今」、「天」、「是」、「台」、「灣」、「人」、「民」、「主」、「之」及「日」,如第2B圖所示)。接著,處理器13以這十個漢字進行語意分析,並因此得到十個第二機率分布。這十個第二機率分布一對一地對應至前述十個漢字,且各該第二機率分布包含七個第二機率值一對一地對應至前述七個標籤。第2B圖亦繪示出各漢字所對應之第二機率分布中之最大第二機率值所對應之標籤,例如:漢字「今」所對應之第二機率分布中之最大第二機率值對應至標籤「B.date」。需說明者,若採用習知技術,輸出資訊即為第2A圖所示之對應關係。
於此具體範例中,在獲得二種不同的語意分析結果(亦即,該等第一機率分布及該等第二機率分布)後,處理器13係根據互相對應之第一機率分布及第二機率分布(亦即,某一漢字之第二機率分布以及包含該漢字之群組之第一機率分布)計算出多個第三機率分布(例如:將第一機率分
布及第二機率分布平均)。以漢字「今」為例,群組「今天」與其對應(因為群組「今天」包含漢字「今」)。處理器13將漢字「今」所對應之第二機率分布與群組「今天」所對應之第一機率分布平均,因此得到一第三機率分布,此第三機率分布可視為漢字「今」的修正機率分布。處理器13會對其他漢字進行雷同的運作,藉此得到其他的第三機率分布(亦即,其他漢字之修正機率分布)。
於此具體範例中,在處理器13計算出所有的第三機率分布(亦即,所有漢字之修正機率分布)後,便根據各該第三機率分布決定一輸出資訊。舉例而言,針對各該漢字,處理器13以其所對應之該第三機率分布中最大的第三機率值所對應之標籤作為輸出資訊。之後,處理器13可再整合這些輸出資訊,如第2C圖所示。
請一併參閱第2A、2B及2C圖。於第2A圖中,群組「台灣」所對應之第一機率分布中之最大第一機率值係對應至標籤「B.country」,且群組「人民」所對應之第一機率分布中之最大第一機率值係對應至標籤「B.people」。於第2B圖中,漢字「台」所對應之第二機率分布中之最大第二機率值係對應至標籤「B.nationals」,漢字「灣」所對應之第二機率分布中之最大第二機率值係對應至標籤「I.nationals」,且漢字「人」所對應之第二機率分布中之最大第二機率值係對應至標籤「I.nationals」。如前所述,處理器13會計算漢字「台」、「灣」及「人」之第三機率分布。依據計算後之數據,漢字「台」所對應之第三機率分布中之最大第三機率值係對應至標籤「B.nationals」,漢字「灣」所對應之第三機率分布中之最大第三機率值係對應至標籤「B.nationals」,且漢字「人」所對應之第三機率分布中之最大第三
機率值係對應至標籤「B.nationals」。由於此三個漢字在該中文字串中相鄰,且此三個漢字所對應之最大第三機率值所對應之標籤之文義屬性相同,故處理器13將此三個漢字整合為一詞彙,如第2C圖所示。
由上述說明可知,於第二實施方式中,處理器13對中文字串10做二種分解,且對二種不同的分解結果個別地進行語意分析,藉此獲得各個群組及漢字的文義屬性/順序。之後,處理器13整合此二種語意分析結果,藉此修正各漢字所對應之標籤,再進一步地根據該等漢字所對應之該等標籤所對應之文義屬性將某些漢字整合為詞彙。因此,本實施方式可分析中文字串10所包含之關鍵字。此外,由於本實施方式亦整合二種語意分析結果,因此同樣地能克服習知技術所無法處理之「歧義識別」及「新詞識別」等議題,且能較正確地決定出中文字串10所包含之詞彙/關鍵字及其文義屬性。
本發明之第三實施方式為一語意分析方法,其流程圖係描繪於第3圖。該語意分析方法適用於一電子計算裝置(例如:第一實施方式中之語意分析裝置1)。於本實施方式中,電子計算裝置已接收一中文字串。
於步驟S301中,由該電子計算裝置對該中文字串進行詞彙分析以得複數個群組,其中各該群組可包含一漢字或一詞彙。接著,於步驟S303,由該電子計算裝置對該等群組進行語意分析以得至少一第一機率分布,其中各該至少一第一機率分布包含複數個第一機率值一對一地對應至複數個標籤。另一方面,於步驟S305中,由該電子計算裝置將該中文字串區分為複數個漢字。接著,於步驟S307中,由該電子計算裝置對該等漢字進行語意分析以得至少一第二機率分布,其中各該至少一第二機率分布包含複數個第二機率值一對一地對應至該等標籤。須說明者,依據本發明之技術,
只要步驟S301早於步驟S303執行,且步驟S305早於步驟S307執行即可。
接著,於步驟S309中,由該電子計算裝置根據該至少一第一機率分布及該至少一第二機率分布計算出至少一第三機率分布。之後,於步驟S311中,由該電子計算裝置根據該至少一第三機率分布決定該中文字串之至少一輸出資訊,其中該至少一輸出資訊與該等標籤其中之一相關。
需說明者,於某些實施方式中,步驟S303對該等群組進行語意分析後係得到一第一機率分布,步驟S307對該等漢字進行語意分析係得到一第二機率分布,且步驟S309係根據該第一機率分布及該第二機率分佈計算出一第三機率分布,其中該第三機率分布包含複數個第三機率值一對一地對應至該等標籤。舉例而言,步驟S309在計算該第三機率分布時,可將對應至同一標籤之第一機率值及第二機率值平均。再舉例而言,步驟S309可根據一第一權重值加權該第一機率分布,根據一第二權重值加權該第二機率分布後,甚至再加上一偏移植(可選擇地),並以該結果作為該第三機率分布。於該等實施方式中,步驟S311可根據該第三機率分布之最大的第三機率值決定一輸出資訊。
需說明者,於某些實施方式中,步驟S303對該等群組進行語意分析後係得到複數個第一機率分布,步驟S307對該等漢字進行語意分析後係得到複數個第二機率分布,且步驟S309係根據該等第一機率分布及該等第二機率分布計算出複數個第三機率分布。需說明者,該等群組一對一地對應至該等第一機率分布,且該等漢字一對一地對應至該等第二機率分布。步驟S309係對各該漢字執行以下步驟:(1)根據該漢字選取該等群組其中之一作為選定群組,其中該選定群組包含該漢字,以及(2)根據該漢字所對應
之該第二機率分布及該選定群組所對應之該第一機率分布計算出該漢字之修正機率分布,其中該修正機率分布為該等第三機率分布其中之一。之後,步驟S311係根據各該漢字所對應之該修正機率分布(亦即,該等第三機率分布其中之一)決定該等輸出資訊其中之一。
除了上述步驟,第三實施方式亦能執行第一及第二實施方式所描述之所有運作及步驟,具有同樣之功能,且達到同樣之技術效果。本發明所屬技術領域中具有通常知識者可直接瞭解第三實施方式如何基於上述第一及第二實施方式以執行此等運作及步驟,具有同樣之功能,並達到同樣之技術效果,故不贅述。
第三實施方式中所闡述之語意分析方法可由包含複數個指令之一電腦程式產品實現。該電腦程式產品可為能被於網路上傳輸之檔案,亦可被儲存於一非暫態電腦可讀取儲存媒體中。針對該電腦程式產品,在其所包含之該等指令被載入一電子計算裝置(例如:語意分析裝置1)後,該電腦程式執行如在第三實施方式中所述之語意分析方法。該非暫態電腦可讀取儲存媒體可為一電子產品,例如:一唯讀記憶體(read only memory;ROM)、一快閃記憶體、一軟碟、一硬碟、一光碟(compact disk;CD)、一隨身碟、一可由網路存取之資料庫或本發明所屬技術領域中具有通常知識者所知且具有相同功能之任何其他儲存媒體。
需說明者,於本發明專利說明書中,第一機率分布、第二機率分布及第三機率分布中之「第一」、「第二」及「第三」僅用來表示該等機率分布為不同機率分布而已。第一機率值、第二機率值及第三機率值中之「第一」、「第二」及「第三」僅用來表示該等機率值為不同機率分布中之機
率值而已。
綜上所述,本發明所提供之語意分析技術(包含裝置、方法及其電腦程式產品)對一中文字串做二種不同的分解(亦即,以詞彙分析中文字串以得到多個群組,且以漢字為單位分解中文字串以獲得多個漢字),對二種不同的分解結果個別地進行語意分析以得到至少一第一機率分布及至少一第二機率分布,將之整合為至少一第三機率分布,再根據該至少一第三機率分布決定輸出資訊。由於本發明所提供之語意分析技術(包含裝置、方法及其電腦程式產品)整合了該等漢字之語意分析結果以及該等群組之語意分析結果(基於詞彙特性去分析所獲得之語意分析結果),故能克服習知技術所無法處理之「歧義識別」及「新詞識別」等議題,且能克服習知技術因錯誤的斷詞結果或錯誤的中文字串辨識所導致的語意分析錯誤。
上述實施方式僅用來例舉本發明之部分實施態樣,以及闡釋本發明之技術特徵,而非用來限制本發明之保護範疇及範圍。任何本發明所屬技術領域中具有通常知識者可輕易完成之改變或均等性之安排均屬於本發明所主張之範圍,而本發明之權利保護範圍以申請專利範圍為準。
Claims (18)
- 一種語意分析裝置,包含:一輸入介面,接收一中文字串;一儲存器,儲存複數個標籤;以及一處理器,電性連接至該輸入介面及該儲存器,對該中文字串進行詞彙分析以得複數個群組,將該中文字串區分為複數個漢字,對該等群組進行語意分析以得至少一第一機率分布,其中各該至少一第一機率分布包含複數個第一機率值一對一地對應至該等標籤,其中,該處理器更對該等漢字進行語意分析以得至少一第二機率分布,各該至少一第二機率分布包含複數個第二機率值一對一地對應至該等標籤,該處理器更根據該至少一第一機率分布及該至少一第二機率分布計算出至少一第三機率分布,且根據該至少一第三機率分布決定該中文字串之至少一輸出資訊,其中該至少一輸出資訊與該等標籤其中之一相關。
- 如請求項1所述之語意分析裝置,其中各該至少一第三機率分布包含複數個第三機率值一對一地對應至該等標籤,該處理器係以各該至少一第三機率分布之最大的該第三機率值決定該至少一輸出資訊。
- 如請求項1所述之語意分析裝置,其中該處理器對該等群組進行語意分析係得複數個第一機率分布,該處理器對該等漢字進行語意分析係得複數個第二機率分布,該處理器係根據該等第一機率分布及該等第二機率分布計算出複數個第三機率分布,且該處理器更根據該等第三機率分布決定該中文字串之複數個輸出資訊。
- 如請求項3所述之語意分析裝置,其中該等群組一對一地對應至該等第一機率分布,該等漢字一對一地對應至該等第二機率分布,該處理器對各該漢字進行以下運作:(a)根據該漢字選取該等群組其中之一作為一選定群組,其中該選定群組包含該漢字,(b)根據該漢字所對應之該第二機率分布及該選定群組所對應之該第一機率分布計算出該漢字之一修正機率分布,其中該修正機率分布為該等第三機率分布其中之一,以及(c)根據該修正機率分布決定出該等輸出資訊其中之一。
- 如請求項1所述之語意分析裝置,其中該處理器係根據一第一權重值加權該至少一第一機率分布且根據一第二權重值加權該至少一第二機率分布以計算出該至少一第三機率分布。
- 如請求項1所述之語意分析裝置,其中該處理器係將該至少一第一機率分布及該至少一第二機率分布平均以計算出該至少一第三機率分布。
- 一種語意分析方法,適用於一電子計算裝置,該分析方法包含下列步驟:(a)對一中文字串進行詞彙分析以得複數個群組;(b)將該中文字串區分為複數個漢字;(c)對該等群組進行語意分析以得至少一第一機率分布,其中各該至少一第一機率分布包含複數個第一機率值一對一地對應至複數個標籤;(d)對該等漢字進行語意分析以得至少一第二機率分布,各該至少一第二機率分布包含複數個第二機率值一對一地對應至該等標籤;(e)根據該至少一第一機率分布及該至少一第二機率分布計算出至少一第三機率分布;以及(f)根據該至少一第三機率分布決定該中文字串之至少一輸出資訊,其中該至少一輸出資訊與該等標籤其中之一相關。
- 如請求項7所述之語意分析方法,其中各該至少一第三機率分布包含複數個第三機率值一對一地對應至該等標籤,該步驟(f)係以各該至少一第三機率分布之最大的該第三機率值決定該至少一輸出資訊。
- 如請求項7所述之語意分析方法,其中該步驟(c)對該等群組進行語意分析係得複數個第一機率分布,該步驟(d)對該等漢字進行語意分析係得複數個第二機率分布,該步驟(e)係根據該等第一機率分布及該等第二機率分布計算出複數個第三機率分布,且該步驟(f)係根據該等第三機率分布決定該中文字串之複數個輸出資訊。
- 如請求項9所述之語意分析方法,其中該等群組一對一地對應至該等第一機率分布,該等漢字一對一地對應至該等第二機率分布,該步驟(e)係對各該漢字執行以下步驟:(e1)根據該漢字選取該等群組其中之一作為一選定群組,其中該選定群組包含該漢字;以及(e2)根據該漢字所對應之該第二機率分布及該選定群組所對應之該第一機率分布計算出該漢字之一修正機率分布,其中該修正機率分布為該等第三機率分布其中之一,其中,該步驟(f)係對各該漢字執行以下步驟:根據該漢字所對應之該修正機率分布決定出該等輸出資訊其中之一。
- 如請求項7所述之語意分析方法,其中該步驟(e)係根據一第一權重值加權該至少一第一機率分布且根據一第二權重值加權該至少一第二機率分布以計算出該至少一第三機率分布。
- 如請求項7所述之語意分析方法,其中該步驟(e)係將該至少一第一機率分布及該至少一第二機率分布平均以計算出該至少一第三機率分布。
- 一種電腦程式產品,經由一電子計算裝置載入該電腦程式產品後,該電子計算裝置執行該電腦程式產品所包含之複數個程式指令,以執行一種語意分析方法,該分析方法包含下列步驟:(a)對一中文字串進行詞彙分析以得複數個群組;(b)將該中文字串區分為複數個漢字;(c)對該等群組進行語意分析以得至少一第一機率分布,其中各該至少一第一機率分布包含複數個第一機率值一對一地對應至複數個標籤;(d)對該等漢字進行語意分析以得至少一第二機率分布,各該至少一第二機率分布包含複數個第二機率值一對一地對應至該等標籤;(e)根據該至少一第一機率分布及該至少一第二機率分布計算出至少一第三機率分布;以及(f)根據該至少一第三機率分布決定該中文字串之至少一輸出資訊,其中該至少一輸出資訊與該等標籤其中之一相關。
- 如請求項13所述之電腦程式產品,其中各該至少一第三機率分布包含複數個第三機率值一對一地對應至該等標籤,該步驟(f)係以各該至少一第三機率分布之最大的該第三機率值決定該至少一輸出資訊。
- 如請求項13所述之電腦程式產品,其中該步驟(c)對該等群組進行語意分析係得複數個第一機率分布,該步驟(d)對該等漢字進行語意分析係得複數個第二機率分布,該步驟(e)係根據該等第一機率分布及該等第二機率分布計算出複數個第三機率分布,且該步驟(f)係根據該等第三機率分布決定該中文字串之複數個輸出資訊。
- 如請求項15所述之電腦程式產品,其中該等群組一對一地對應至該等第一機率分布,該等漢字一對一地對應至該等第二機率分布,該步驟(e)係對各該漢字執行以下步驟:(e1)根據該漢字選取該等群組其中之一作為一選定群組,其中該選定群組包含該漢字;以及(e2)根據該漢字所對應之該第二機率分布及該選定群組所對應之該第一機率分布計算出該漢字之一修正機率分布,其中該修正機率分布為該等第三機率分布其中之一,其中,該步驟(f)係對各該漢字執行以下步驟:根據該漢字所對應之該修正機率分布決定出該等輸出資訊其中之一。
- 如請求項13所述之電腦程式產品,其中該步驟(e)係根據一第一權重值加權該至少一第一機率分布且根據一第二權重值加權該至少一第二機率分布以計算出該至少一第三機率分布。
- 如請求項13所述之電腦程式產品,其中該步驟(e)係將該至少一第一機率分布及該至少一第二機率分布平均以計算出該至少一第三機率分布。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106119812A TWI640877B (zh) | 2017-06-14 | 2017-06-14 | 語意分析裝置、方法及其電腦程式產品 |
US15/652,231 US10331789B2 (en) | 2017-06-14 | 2017-07-17 | Semantic analysis apparatus, method, and non-transitory computer readable storage medium thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106119812A TWI640877B (zh) | 2017-06-14 | 2017-06-14 | 語意分析裝置、方法及其電腦程式產品 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI640877B true TWI640877B (zh) | 2018-11-11 |
TW201905734A TW201905734A (zh) | 2019-02-01 |
Family
ID=64657446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106119812A TWI640877B (zh) | 2017-06-14 | 2017-06-14 | 語意分析裝置、方法及其電腦程式產品 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10331789B2 (zh) |
TW (1) | TWI640877B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI666558B (zh) * | 2018-11-20 | 2019-07-21 | 財團法人資訊工業策進會 | 語意分析方法、語意分析系統及非暫態電腦可讀取媒體 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107092588B (zh) * | 2016-02-18 | 2022-09-09 | 腾讯科技(深圳)有限公司 | 一种文本信息处理方法、装置和系统 |
CN111627423B (zh) * | 2019-02-27 | 2023-08-04 | 百度在线网络技术(北京)有限公司 | Vad尾点检测方法、装置、服务器和计算机可读介质 |
CN113836939B (zh) * | 2021-09-24 | 2023-07-21 | 北京百度网讯科技有限公司 | 基于文本的数据分析方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1571980A (zh) * | 2001-10-15 | 2005-01-26 | 西尔弗布鲁克研究有限公司 | 字符串识别 |
TW200515369A (en) * | 2003-05-29 | 2005-05-01 | Microsoft Corp | Semantic object synchronous understanding implemented with speech application language tags |
US20130041647A1 (en) * | 2011-08-11 | 2013-02-14 | Apple Inc. | Method for disambiguating multiple readings in language conversion |
TW201624312A (zh) * | 2014-12-22 | 2016-07-01 | 曾元顯 | 中文知識擷取系統與方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007066607A1 (ja) * | 2005-12-05 | 2007-06-14 | Sony Corporation | 情報処理装置および方法、並びにプログラム |
-
2017
- 2017-06-14 TW TW106119812A patent/TWI640877B/zh active
- 2017-07-17 US US15/652,231 patent/US10331789B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1571980A (zh) * | 2001-10-15 | 2005-01-26 | 西尔弗布鲁克研究有限公司 | 字符串识别 |
TW200515369A (en) * | 2003-05-29 | 2005-05-01 | Microsoft Corp | Semantic object synchronous understanding implemented with speech application language tags |
US20130041647A1 (en) * | 2011-08-11 | 2013-02-14 | Apple Inc. | Method for disambiguating multiple readings in language conversion |
US8706472B2 (en) * | 2011-08-11 | 2014-04-22 | Apple Inc. | Method for disambiguating multiple readings in language conversion |
CN102982021B (zh) * | 2011-08-11 | 2015-08-26 | 苹果公司 | 用于消除语言转换中的多个读法的歧义的方法 |
TW201624312A (zh) * | 2014-12-22 | 2016-07-01 | 曾元顯 | 中文知識擷取系統與方法 |
Non-Patent Citations (2)
Title |
---|
"Semantic Similarity in a Taxonomy: An Information-Based Measure and its Application to Problems of Ambiguity in Natural Language" by Philp Resnik 1999/07/31 * |
"Sentiment Anaylsis in Multiple Languages: Feature Selection for Opinion Classification in Web Forums" by Ahmed Abbasi etc. 2014/06/03 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI666558B (zh) * | 2018-11-20 | 2019-07-21 | 財團法人資訊工業策進會 | 語意分析方法、語意分析系統及非暫態電腦可讀取媒體 |
Also Published As
Publication number | Publication date |
---|---|
TW201905734A (zh) | 2019-02-01 |
US20180365223A1 (en) | 2018-12-20 |
US10331789B2 (en) | 2019-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102564144B1 (ko) | 텍스트 관련도를 확정하기 위한 방법, 장치, 기기 및 매체 | |
CN109241524B (zh) | 语义解析方法及装置、计算机可读存储介质、电子设备 | |
EP3852001A1 (en) | Method and apparatus for generating temporal knowledge graph, device, and medium | |
JP5936698B2 (ja) | 単語意味関係抽出装置 | |
US10915577B2 (en) | Constructing enterprise-specific knowledge graphs | |
WO2020119075A1 (zh) | 通用文本信息提取方法、装置、计算机设备和存储介质 | |
KR101662450B1 (ko) | 다중 소스 하이브리드 질의응답 방법 및 시스템 | |
US9773053B2 (en) | Method and apparatus for processing electronic data | |
US20180349377A1 (en) | Converting natural language input to structured queries | |
WO2020253355A1 (zh) | 用于实体融合的方法和设备、电子设备和存储介质 | |
WO2017063538A1 (zh) | 挖掘相关词的方法、搜索方法、搜索系统 | |
TWI640877B (zh) | 語意分析裝置、方法及其電腦程式產品 | |
CA2779349C (en) | Predictive analysis by example | |
US20200250380A1 (en) | Method and apparatus for constructing data model, and medium | |
US20220277005A1 (en) | Semantic parsing of natural language query | |
US10795878B2 (en) | System and method for identifying answer key problems in a natural language question and answering system | |
CN110727839A (zh) | 自然语言查询的语义解析 | |
US20230205996A1 (en) | Automatic Synonyms Using Word Embedding and Word Similarity Models | |
WO2020232898A1 (zh) | 文本分类方法、装置、电子设备及计算机非易失性可读存储介质 | |
US20220058191A1 (en) | Conversion of natural language query | |
WO2023029513A1 (zh) | 基于人工智能的搜索意图识别方法、装置、设备及介质 | |
WO2021159656A1 (zh) | 多轮对话中语义补齐的方法、装置、设备及存储介质 | |
CN105760462A (zh) | 基于关联数据查询的人机交互方法及装置 | |
CN114116997A (zh) | 知识问答方法、装置、电子设备及存储介质 | |
CN112148862A (zh) | 一种问题意图识别方法、装置、存储介质及电子设备 |