Category的值以及所述歷史目的壓力感知結 果的Subcategory的值與所述目標中間結果的Subcategory的值是否相等,若相等,則將所 述目標中間結果的Stress的值更新為所述歷史目的壓力感知結果的Stress的值,或者
[0052] 若所述歷史目的壓力感知結果的Stress的值與所述目標中間結果的Stress的值 為有壓力所對應的值,則判斷所述目標中間結果的Category的值與Subcategory的值是否 為空值,若為空值,則將所述目標中間結果的Category的值更新為所述歷史目的壓力感知 結果的Category的值,將所述目標中間結果的Subcategory的值更新為所述歷史目的壓 力感知結果的Subcategory的值,否則,若所述目標中間結果的Category的值不為空值, Subcategory的值為空值,則判斷所述歷史目的壓力感知結果的Category的值與所述目標 中間結果的Category的值是否相等,若相等,則將所述目標中間結果的Subcategory的值 更新為所述歷史目的壓力感知結果的Subcategory的值。
[0053] 可選地,在本發(fā)明疏導青少年心理壓力的虛擬聊天方法的另一實施例中,所述根 據所述目的壓力感知結果得到目標應答語句,包括:
[0054] 確定出所述第一會話語句的類型,其中,所述類型包括疑問句和非疑問句;
[0055] 判斷所述第一會話語句的類型是否為非疑問句以及目的壓力感知結果的Stress 的值是否為有壓力所對應的值,若所述第一會話語句的類型為非疑問句,目的壓力感知結 果的Stress的值為有壓力所對應的值,或者若所述第一會話語句的類型為疑問句,目的壓 力感知結果的Stress的值為無壓力所對應的值,則查找預先建立的第一知識庫,得到所述 目的壓力感知結果的Category的值和Subcategory的值所對應的應答語句,并將查找得 到的應答語句作為所述目標應答語句,其中,所述第一知識庫中保存有多條由Category的 值、Subcategory的值和應答語句組成的記錄,或者
[0056] 若所述第一會話語句的類型為非疑問句,目的壓力感知結果的Stress的值為無 壓力所對應的值,則從第二知識庫中選取所述目標應答語句,其中,所述第二知識庫中保存 有多條應答語句,或者
[0057] 若所述第一會話語句的類型為疑問句,目的壓力感知結果的Stress的值為有壓 力所對應的值,則從第三知識庫中獲取所述目標應答語句,其中,所述第三知識庫中包括多 個問題語句以及相應的答案。
[0058] 本發(fā)明實施例中,基于用戶輸入語句的類型和目標壓力感知結果(c. Stress, c. Category,c. Subcategory),本聊天工具的應答策略如圖4所示。
[0059] 情況一:有壓力感知到(c. Stress = 1)
[0060] (1)對于陳述句和反問句,本發(fā)明會從第一知識庫(可以為本地的知識庫)中選擇 一條合適的應答返回給用戶。本地知識庫中存儲著大量的針對不同壓力類型和子類型的能 夠起到安慰,鼓勵,或者引導用戶的應答語句。
[0061] (2)對于疑問句,本聊天工具會從第三知識庫(中文的最大問答社區(qū))中搜尋一條 最合適的應答語句返回給用戶,其具體的工作原理如下:
[0062] 令Qu和Qb分別為用戶輸入的問題語句和從第三知識庫中搜索到的最相關的問題 語句。當MatchDegree(Qu,Qb)大于一個閾值(即問題語句Qu和最相關的問題語句Qb的匹 配度),且該問題的答案被用戶采納或者至少有一個人贊同時,本發(fā)明會根據是否被提問者 采納以及贊同數目選取最好的答案返回給用戶。否則,本發(fā)明返回到本地知識庫中選擇一 個通用的鼓勵話語或者一個笑話返回給用戶。
[0063] 其中MatchDegree(Qu,Qb)基于Qu和Qb的依存關系樹中的有效節(jié)點對進行計算。 令有效節(jié)點對為nOii, n2),為依存關系樹中的中心節(jié)點即根節(jié)點,n 2為與n i節(jié)點具有直 接依存關系的節(jié)點,它可以為一個動詞,名詞或者是形容詞。假設兩個有效節(jié)點對為u = (Ui, u2)和b = (bi, b2),則可以定義相似度sim(u, b)如下:
[0064]
[0065] 令E(QU)和E(Qb)分別為Qu和Qb的依存關系樹種的有效節(jié)點對集??紤]到節(jié)點的 語義相似性,可以同時用每個節(jié)點中詞的義原(可以從知網中文詞庫Hownet中獲得)替換 掉原始的單詞以保證獲得更準確的相似度。由此獲得有效節(jié)點對集為EYQJ和EYQb)。由 此可以定義MatchDegree(Qu,Qb)為:
[0066] MatchDegree(Qu,Qb) =aSIM(E(Qu),E(Qb)) + (1-a)SIM(E* (Qu),E* (Qb)),
[0067] 情況二:沒有壓力感知到(c.Stress= 0)
[0068] (1)對于非疑問句,本發(fā)明將調用開源的聊天機器人simsimi的API,該API接受 用戶的一條聊天語句輸入,返回應答語句;
[0069] (2)對于疑問句,與情況一⑵相同。
[0070] 可選地,在本發(fā)明疏導青少年心理壓力的虛擬聊天方法的另一實施例中,所述從 第三知識庫中獲取所述目標應答語句,包括:
[0071] 從第三知識庫中獲取與所述第一會話語句最相關的問題語句,其中,所述第三知 識庫中還包括多個問題語句相應的答案是否被采納的信息和相應的答案被贊同的數量信 息;
[0072] 計算所述第一會話語句與最相關的問題語句的匹配度,判斷所述匹配度是否大于 預設的數值,若大于所述數值,則判斷所述最相關的問題語句的答案是否被采納,若被采 納,則從被采納的答案中選取贊同數量最多的被采納的答案作為所述目標應答語句,或者, 若不大于所述數值或者不被采納,則從所述第一知識庫保存的鼓勵話語中隨機選取一個鼓 勵話語作為所述目標應答語句。
[0073] 可選地,在本發(fā)明疏導青少年心理壓力的虛擬聊天方法的另一實施例中,所述計 算所述第一會話語句與最相關的問題語句的匹配度,包括:
[0074] 對所述最相關的問題語句Qb進行中文分詞,并建立第二依存關系樹;
[0075] 確定出所述第一依存關系樹的有效節(jié)點對u= (+,u2)和第二依存關系樹的有效 節(jié)點對b= 其中,u= (Ui,%),!^為所述第一依存關系樹的根節(jié)點,u2為與Ui具有 直接依存關系的節(jié)點,h為所述第二依存關系樹的根節(jié)點,b2為與bi具有直接依存關系的 節(jié)點;
[0076] 計算所述第一會話語句Qu與最相關的問題語句Qb的匹配度,
[0077] 計算公式為MatchDegree(Qu,Qb) =aSIM(E(Qu),E(Qb)) + (1-a) S頂(E* (Qu),E* (Qb)),其中,MatchDegree(Qu,Qb)為所述第一會話語句Qu與最相關的 問題語句Qb的匹配度,a(aG(〇,1))為常數,E(QU)為所述第一依存關系樹的有 效節(jié)點對的集合,E(Qb)為所述第二依存關系樹的有效節(jié)點對的集合,E\QU)為將 所述第一依存關系樹的各個節(jié)點用其義原替代后得到的依存關系樹的有效節(jié)點對 的集合,E\Qb)為將所述第二依存關系樹的各個節(jié)點用其義原替代后得到的依存 關系樹的有效節(jié)點對的集合,
k ) -,:f為E\QU)的元素,f為 E*(Qb)的元素,
[0078] 可選地,在本發(fā)明疏導青少年心理壓力的虛擬聊天方法的另一實施例中,在所述 獲取用戶的第一會話語句之前,還包括:
[0079] 接收用戶的直接登錄指令,并將第一應答語句反饋給用戶,或者
[0080] 接收用戶的登錄指令,并在用戶授權連接微博時,獲取用戶的原創(chuàng)微博,根據所述 原創(chuàng)微博判斷用戶是否有壓力情緒,若有,則將第二應答語句反饋給用戶,否則,則將第三 應答語句反饋給用戶。
[0081] 可選地,在本發(fā)明疏導青少年心理壓力的虛擬聊天方法的另一實施例中,在所述 獲取用戶的第一會話語句之前,還包括:
[0082] 在將所述第一應答語句、第二應答語句或者第三應答語句反饋給用戶之后,獲取 用戶的第二會話語句,對所述第二會話語句進行壓力情緒和壓力類型檢測;
[0083] 若所述第二會話語句中檢測出壓力情緒,未檢測出壓力類型,則對所述原創(chuàng)微博 進行壓力檢測,并基于所述壓力檢測結果將第四應答語句反饋給用戶,或者[0084] 若所述第二會話語句中檢測出壓力情緒和壓力類型或者未檢測出壓力情緒,則執(zhí) 行步驟S1。
[0085] 此外,文本情感分析是對主觀性文本進行分析、歸納,獲取其情緒特征的過程。通 過抽取文本中的情感信息、對情感信息進行分類、分析情感詞匯的描述對象來判斷短語、句 子甚至是整篇文章中的情感傾向。依存文法是由法國語言學L.Tesniere在其編寫的《結構 句法基礎》中提出的?;谖⒉┢脚_的情感分析工作較為成熟,現有文獻(Qi Li, Yuanyuan Xue, Jia Jia, Ling Feng:Helping Teenagers Relieve Psychological Pressures:A Micro-blog Based System. [C]EDBT 2014:660-663;ff.Che, Z. Li, Y. Li, Y. Guo, B. Qin, and T. Liu, "Multilingual dependency-based syntactic and semantic parsing, ',in Pro