語句意圖類別識別方法及裝置的制造方法
【技術領域】
[0001] 本發明涉及計算機技術領域,特別是涉及一種語句意圖類別識別方法及裝置。
【背景技術】
[0002] 在現有技術中,在對用戶的問句進行意圖分析時,是直接將當前問句與知識庫中 的所有模板問句進行相似度計算,根據相似度最高的一個模板結構,分析用戶的意圖,理解 問句語義,整理返回對應的問題答案。但是,上述處理由于針對每個文件都要與所有模板問 句計算相似度,使得計算量非常大,從而導致了用戶問句意圖分析計算時間長,計算效率低 的問題。
【發明內容】
[0003] 鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上 述問題的語句意圖類別識別方法及裝置。
[0004] 本發明提供一種語句意圖類別識別方法,包括:
[0005] 提供問答日志信息,每條問答日志信息包括:問句和意圖類別;
[0006] 根據從問句中獲取的關鍵詞生成詞典;
[0007] 根據詞典分別對每個問句進行向量化計算,得到每個問句的向量;
[0008] 根據每個問句的向量及對應的意圖類別進行分類模型的訓練,獲取意圖分類模 型;
[0009] 對當前問句進行向量化計算,得到當前問句的向量,根據當前問句的向量和意圖 分類模型確定當前問句對應的意圖類別。
[0010] 本發明還提供了一種語句意圖類別識別裝置,包括:
[0011] 提供模塊,用于提供問答日志信息,每條問答日志信息包括:問句和意圖類別;
[0012] 生成模塊,用于根據從問句中獲取的關鍵詞生成詞典;
[0013] 計算模塊,用于根據詞典分別對每個問句進行向量化計算,得到每個問句的向 量;
[0014] 訓練模塊,用于根據每個問句的向量及對應的意圖類別進行分類模型的訓練,獲 取意圖分類模型;
[0015] 識別模塊,用于對當前問句進行向量化計算,得到當前問句的向量,根據當前問句 的向量和意圖分類模型確定當前問句對應的意圖類別。
[0016] 本發明有益效果如下:
[0017] 通過從問答系統中日志信息的問句中獲取關鍵詞,并利用這些關鍵詞初步確定用 戶的意圖,解決了現有技術中用戶問句意圖分析計算時間長,計算效率低的問題,能夠初步 準確地識別用戶的問句意圖,提高語義理解的執行效率,降低了成本,節約了答案回復的時 間,提高了用戶的使用體驗。
[0018] 上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段, 而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠 更明顯易懂,以下特舉本發明的【具體實施方式】。
【附圖說明】
[0019] 通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通 技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明 的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0020] 圖1是本發明實施例的語句意圖類別識別方法的流程圖;
[0021] 圖2是本發明實施例的語句意圖類別識別方法的詳細處理的流程圖;
[0022] 圖3是本發明實施例的語句意圖類別識別裝置的結構示意圖。
【具體實施方式】
[0023]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開 的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例 所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍 完整的傳達給本領域的技術人員。
[0024] 為了解決現有技術用戶問句意圖分析計算時間長,計算效率低的問題,本發明提 供了一種語句意圖類別識別方法及裝置,以下結合附圖以及實施例,對本發明進行進一步 詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不限定本發明。
[0025] 方法實施例
[0026] 根據本發明的實施例,提供了一種語句意圖類別識別方法,圖1是本發明實施例 的語句意圖類別識別方法的流程圖,如圖1所示,根據本發明實施例的語句意圖類別識別 方法包括如下處理:
[0027] 步驟101,提供問答日志信息,每條問答日志信息包括:問句和意圖類另I」。其中,上 述意圖類別可以包括:天氣、購物、工作、旅游等等;
[0028] 步驟102,根據從問句中獲取的關鍵詞生成詞典。
[0029] 步驟102中生成詞典具體包括如下處理:
[0030] 步驟1021,根據從問句中獲取的關鍵詞生成詞典包括:
[0031] 步驟1022,對從問句獲取的語料進行預處理,得到文本數據。其中,預處理包括: 將問句的格式統一為文本格式,過濾臟詞、敏感詞和停用詞中的一種或多種,并將過濾后的 文本數據按照標點劃分為多行。例如,上述標點可以是問號、嘆號、分號或句號,也就是說, 可以將過濾后的文本數據按照問號、嘆號、分號或句號劃分為多行。
[0032] 步驟1023,對文本數據進行分詞處理,得到多個語料詞語。在本發明實施例中,分 詞處理可以采用字典雙向最大匹配法、viterbi方法、HMM方法和CRF方法中的一種或多種。
[0033] 步驟1024,對語料詞語進行過濾處理,得到包括多個關鍵詞的詞典。其中,過濾處 理包括以下任一種或兩種方式:
[0034] 方式一:根據詞性對語料詞語進行過濾,保留名詞、動詞以及形容詞;
[0035] 方式二:根據頻次對語料詞語進行過濾,保留頻次大于頻次閾值的語料詞語,其 中,頻次是指語料詞語在語料數據中出現的頻率或者次數。
[0036] 本實施例中,先根據詞性對語料詞語進行過濾,僅保留名詞、動詞以及形容詞,去 除其它詞性的語料詞語;然后根據頻次對保留的名詞、動詞以及形容詞進行過濾,保留頻次 大于頻次閾值的語料詞語,從而字典中為頻次大于頻次閾值的名詞、動詞和形容詞。
[0037] 在本發明的其它實施例中,可以僅根據詞性進行過濾,也可以僅根據頻次進行過 濾,還可以先根據頻次進行過濾再根據詞性進行過濾,其都在本發明的保護范圍之內。
[0038] 步驟1025,對詞典進行降維處理。
[0039] 其中,降維處理具體包括:根據問答日志統計問句對應的意圖類別,計算詞典中每 個關鍵詞的信息熵,將信息熵小于信息熵閾值的關鍵詞從詞典中刪除,其中,信息熵表示該 關鍵詞在各意圖類別中出現的概率。計算詞典中關鍵詞的信息熵包括:計算詞典中每個關 鍵詞在每個意圖類別中出現的概率。
[0040] 信息熵的計算公式為:Η(Χ) = -Σρ(Χ?)logp(Xi),其中,H(X)表示關鍵詞的信息 熵,P(Xl)表示關鍵詞在第i個意圖類別中出現的概率,i= 1,2,…,η,η為意圖類別的個 數。
[0041] 由于關鍵詞的信息熵可以直接根據上述計算公式計算出來,計算復雜度非常低, 因此,本發明實施例的技術方案利用信息熵能夠快速準確將信息熵小于信息熵閾值的關鍵 詞從詞典中刪除,大大提高了詞典降維的準確率和效率。
[0042] 需要說明的是,在本發明的其它實施例中,也可以采用其它現有的方法進行降維 處理,如:SVD、LDA或PCA等,其不影響本發明的保護范圍。
[0043] 本發明實施例通過對詞典進行降維,使得詞典更加的準確和精簡,在后續進行問 句的向量化計算和分類模型訓練時,大大降低了計算的復雜度,有效提高了計算效率。
[0044] 步驟103,根據詞典分別對每個問句進行向量化計算,得到每個問句的向量。
[0045] 在步驟103中,對問句進行向量化計算包括:
[0046] 步驟1031,對問句進行預處理和分詞處理。
[0047] 其中,預處理具體包括:將問句的格式統一為文本格式,過濾臟詞、敏感詞和停用 詞中的一種或多種,并將過濾后的文本數據按照標點劃分為多行。例如,上述標點可以是問 號、嘆號、分號或句號,也就是說,可以將過濾后的文本數據按照問號、嘆號、分號或句號劃 分為多行。
[0048] 所述分詞處理可以采用字典雙向最大匹配法、viterbi方法、ΗΜΜ方法和CRF方法 中的一種或多種。
[0049] 步驟1032,根據詞典的大小和相應問句中出現的關鍵詞的TF-IDF值,對該問句生 成向量,其中,向量的維度是詞典的大小,每個維度的值為:相應問句中未出現在詞典中的 詞的維度值為〇,相應問句中出現在詞典中的關鍵詞的維度值為該關鍵詞的TF-IDF值。
[0050] 其中,關鍵詞的TF-IDF值通過以下方式獲取:
[0051] 1、將問答日志中包括的問句總數目除以包含關鍵詞的問句的數目,將得到的商取 對數得到關鍵詞的IDF值;
[0052]2、計算關鍵詞在對應問句中出現的頻率,確定TF值;
[0053] 3、將TF值乘以IDF值得到關鍵詞的TF-IDF值。
[0054]步驟104,根據每個問句的向量及對應的意圖類別進行