本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及用于輸出信息的方法和裝置。
背景技術(shù):
近來,隨著互聯(lián)網(wǎng)的飛速發(fā)展,各種社交媒體大量涌現(xiàn),在健康相關(guān)的醫(yī)療領(lǐng)域,出現(xiàn)了許多在線疾病問答網(wǎng)站,它們?yōu)榛颊咛峁┝烁嘣尼t(yī)療信息獲取渠道。這些網(wǎng)站主要以健康知識(shí),疾病信息,醫(yī)療新聞等為主要內(nèi)容,同時(shí)也提供用戶在線疾病問答功能。
在線疾病問答主要采用基于檢索的技術(shù),檢索與新問題最相似的已知問題,把答案作為回復(fù)。該技術(shù)的缺點(diǎn)是如果已知問題中檢索不到則不知道該如何回答,即使有語義上很相似但使用詞語不同的已知問題也無法回答,此問題對(duì)于文本較長(zhǎng)或者低頻問題比較明顯。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)的目的在于提出一種改進(jìn)的用于輸出信息的方法和裝置,來解決以上背景技術(shù)部分提到的技術(shù)問題。
第一方面,本申請(qǐng)?zhí)峁┝艘环N用于輸出信息的方法,該方法包括:響應(yīng)于接收到癥狀描述信息,判斷癥狀描述信息是否為文本形式,若不是文本形式則對(duì)癥狀描述信息進(jìn)行預(yù)處理得到文本形式的癥狀描述信息;對(duì)文本形式的癥狀描述信息進(jìn)行切詞以獲得詞序列;將詞序列輸入預(yù)先訓(xùn)練的咨詢模型,由咨詢模型生成候選咨詢建議信息集合,其中,咨詢模型用于表征癥狀描述信息與咨詢建議信息的對(duì)應(yīng)關(guān)系;計(jì)算候選咨詢建議信息集合中每條候選咨詢建議信息切詞后的詞數(shù)量;從候選咨詢建議信息集合中選擇切詞后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出。
在一些實(shí)施例中,該方法還包括建立咨詢模型的步驟,包括:獲取文本形式的癥狀描述信息和與癥狀描述信息對(duì)應(yīng)的咨詢建議信息;將癥狀描述信息進(jìn)行切詞以獲得癥狀描述信息的詞序列;將咨詢建議信息進(jìn)行切詞以獲得咨詢建議信息的詞序列;將癥狀描述信息詞序列和咨詢建議信息詞序列利用深度神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,多次迭代后得到咨詢模型。
在一些實(shí)施例中,將詞序列輸入預(yù)先訓(xùn)練的咨詢模型,由咨詢模型生成候選咨詢建議信息集合,包括:將詞序列輸入預(yù)先訓(xùn)練的咨詢模型得到包含匹配度的候選咨詢建議信息,其中,匹配度用于表征根據(jù)癥狀描述信息確定候選咨詢建議信息的準(zhǔn)確性;按匹配度由大到小的順序選擇預(yù)定數(shù)目個(gè)候選咨詢建議信息組成候選咨詢建議信息集合。
在一些實(shí)施例中,從候選咨詢建議信息集合中選擇切詞后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出包括:獲取每條候選咨詢建議信息的匹配度;將每條候選咨詢建議信息切詞后的詞數(shù)量乘以各自的匹配度作為每條候選咨詢建議信息的修正后的詞數(shù)量;從候選咨詢建議信息集合中選擇修正后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出。
在一些實(shí)施例中,癥狀描述信息包括以下至少一項(xiàng):文本形式的癥狀描述信息、語音形式的癥狀描述信息、圖片形式的癥狀描述信息。
在一些實(shí)施例中,對(duì)文本形式的癥狀描述信息進(jìn)行切詞,包括:采用逆向最大匹配法以及條件隨機(jī)場(chǎng)算法對(duì)文本形式的癥狀描述信息進(jìn)行切詞。
在一些實(shí)施例中,從候選咨詢建議信息集合中選擇切詞后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出,包括:判斷所選擇的咨詢建議信息是否為語音形式,若不是語音形式,則將所選擇咨詢建議信息轉(zhuǎn)化成語音形式的咨詢建議信息再進(jìn)行輸出。
第二方面,本申請(qǐng)?zhí)峁┝艘环N用于輸出信息的裝置,該裝置包括:接收單元,配置用于響應(yīng)于接收到癥狀描述信息,判斷癥狀描述信息是否為文本形式,若不是文本形式則對(duì)癥狀描述信息進(jìn)行預(yù)處理得到文本形式的癥狀描述信息;切詞單元,配置用于對(duì)文本形式的癥狀描述信息進(jìn)行切詞以獲得詞序列;生成單元,配置用于將詞序列輸入預(yù)先訓(xùn)練的咨詢模型,由咨詢模型生成候選咨詢建議信息集合,其中,咨詢模型用于表征癥狀描述信息與咨詢建議信息的對(duì)應(yīng)關(guān)系;計(jì)算單元,配置用于計(jì)算候選咨詢建議信息集合中每條候選咨詢建議信息切詞后的詞數(shù)量;輸出單元,配置用于從候選咨詢建議信息集合中選擇切詞后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出。
在一些實(shí)施例中,該裝置還包括咨詢模型建立單元,包括:獲取子單元,配置用于獲取文本形式的癥狀描述信息和與癥狀描述信息對(duì)應(yīng)的咨詢建議信息;癥狀切詞子單元,配置用于將癥狀描述信息進(jìn)行切詞以獲得癥狀描述信息的詞序列;建議切詞子單元,配置用于將咨詢建議信息進(jìn)行切詞以獲得咨詢建議信息的詞序列;訓(xùn)練子單元,配置用于將癥狀描述信息詞序列和咨詢建議信息詞序列利用深度神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,多次迭代后得到咨詢模型。
在一些實(shí)施例中,生成單元配置用于:將詞序列輸入預(yù)先訓(xùn)練的咨詢模型得到包含匹配度的候選咨詢建議信息,其中,匹配度用于表征根據(jù)癥狀描述信息確定候選咨詢建議信息的準(zhǔn)確性;按匹配度由大到小的順序選擇預(yù)定數(shù)目個(gè)候選咨詢建議信息組成候選咨詢建議信息集合。
在一些實(shí)施例中,輸出單元進(jìn)一步配置用于:獲取每條候選咨詢建議信息的匹配度;將每條候選咨詢建議信息切詞后的詞數(shù)量乘以各自的匹配度作為每條候選咨詢建議信息的修正后的詞數(shù)量;從候選咨詢建議信息集合中選擇修正后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出。
在一些實(shí)施例中,癥狀描述信息包括以下至少一項(xiàng):文本形式的癥狀描述信息、語音形式的癥狀描述信息、圖片形式的癥狀描述信息。
在一些實(shí)施例中,切詞單元進(jìn)一步配置用于:采用逆向最大匹配法以及條件隨機(jī)場(chǎng)算法對(duì)文本形式的癥狀描述信息進(jìn)行切詞。
在一些實(shí)施例中,輸出單元進(jìn)一步配置用于:判斷所選擇的咨詢建議信息是否為語音形式,若不是語音形式,則將所選擇咨詢建議信息轉(zhuǎn)化成語音形式的咨詢建議信息再進(jìn)行輸出。
本申請(qǐng)將癥狀描述信息輸入預(yù)先訓(xùn)練好的咨詢模型生成咨詢建議信息,該咨詢模型是利用深度學(xué)習(xí)網(wǎng)絡(luò),通過多次迭代后得到的,該咨詢模型的輸入是癥狀描述信息的文本,輸出則是癥狀的咨詢建議信息,癥狀描述信息到咨詢建議信息的語義映射存在于該咨詢模型的各個(gè)參數(shù)之中,這個(gè)語義映射空間可以理解為醫(yī)療相關(guān)知識(shí),是一種端到端的自動(dòng)問答解決方案。與已有的在線咨詢的技術(shù)方案相比,它更能有效的利用互聯(lián)網(wǎng)上大量的已有問答;對(duì)于癥狀的理解以及相關(guān)醫(yī)療知識(shí)的學(xué)習(xí)完全交給咨詢模型學(xué)習(xí),不需要更多的人為參與。
附圖說明
通過閱讀參照以下附圖所作的對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本申請(qǐng)的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
圖1是本申請(qǐng)可以應(yīng)用于其中的示例性系統(tǒng)架構(gòu)圖;
圖2是根據(jù)本申請(qǐng)的用于輸出信息的方法的一個(gè)實(shí)施例的流程圖;
圖3a和圖3b是根據(jù)本申請(qǐng)的用于輸出信息的方法的一個(gè)應(yīng)用場(chǎng)景的示意圖;
圖4是根據(jù)本申請(qǐng)的用于輸出信息的方法的又一個(gè)實(shí)施例的流程圖;
圖5是根據(jù)本申請(qǐng)的用于輸出信息的裝置的一個(gè)實(shí)施例的結(jié)構(gòu)示意圖;
圖6是適于用來實(shí)現(xiàn)本申請(qǐng)實(shí)施例的服務(wù)器的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本申請(qǐng)作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖牵颂幩枋龅木唧w實(shí)施例僅僅用于解釋相關(guān)發(fā)明,而非對(duì)該發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與有關(guān)發(fā)明相關(guān)的部分。
需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本申請(qǐng)。
圖1示出了可以應(yīng)用本申請(qǐng)的用于輸出信息的方法或用于輸出信息的裝置的實(shí)施例的示例性系統(tǒng)架構(gòu)100。
如圖1所示,系統(tǒng)架構(gòu)100可以包括終端設(shè)備101、102、103,網(wǎng)絡(luò)104和服務(wù)器105。網(wǎng)絡(luò)104用以在終端設(shè)備101、102、103和服務(wù)器105之間提供通信鏈路的介質(zhì)。網(wǎng)絡(luò)104可以包括各種連接類型,例如有線、無線通信鏈路或者光纖電纜等等。
用戶可以使用終端設(shè)備101、102、103通過網(wǎng)絡(luò)104與服務(wù)器105交互,以接收或發(fā)送消息等。終端設(shè)備101、102、103上可以安裝有各種通訊客戶端應(yīng)用,例如就醫(yī)指導(dǎo)類應(yīng)用、網(wǎng)頁瀏覽器應(yīng)用、購物類應(yīng)用、搜索類應(yīng)用、即時(shí)通信工具、社交平臺(tái)軟件等。
終端設(shè)備101、102、103可以是具有顯示屏并且支持網(wǎng)頁瀏覽的各種電子設(shè)備,包括但不限于智能手機(jī)、平板電腦、電子書閱讀器、MP3播放器(Moving Picture Experts Group Audio Layer III,動(dòng)態(tài)影像專家壓縮標(biāo)準(zhǔn)音頻層面3)、MP4(Moving Picture Experts Group Audio Layer IV,動(dòng)態(tài)影像專家壓縮標(biāo)準(zhǔn)音頻層面4)播放器、膝上型便攜計(jì)算機(jī)和臺(tái)式計(jì)算機(jī)等等。
服務(wù)器105可以是提供各種服務(wù)的服務(wù)器,例如對(duì)終端設(shè)備101、102、103上顯示的咨詢建議信息提供支持的后臺(tái)咨詢服務(wù)器。后臺(tái)咨詢服務(wù)器可以對(duì)接收到的癥狀描述信息等數(shù)據(jù)進(jìn)行分析等處理,并將處理結(jié)果(例如咨詢建議信息)反饋給終端設(shè)備。
需要說明的是,本申請(qǐng)實(shí)施例所提供的用于輸出信息的方法一般由服務(wù)器105執(zhí)行,相應(yīng)地,用于輸出信息的裝置一般設(shè)置于服務(wù)器105中。
應(yīng)該理解,圖1中的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器的數(shù)目?jī)H僅是示意性的。根據(jù)實(shí)現(xiàn)需要,可以具有任意數(shù)目的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器。
繼續(xù)參考圖2,示出了根據(jù)本申請(qǐng)的用于輸出信息的方法的一個(gè)實(shí)施例的流程200。該用于輸出信息的方法,包括以下步驟:
步驟201,響應(yīng)于接收到癥狀描述信息,判斷癥狀描述信息是否為文本形式,若不是文本形式則對(duì)癥狀描述信息進(jìn)行預(yù)處理得到文本形式的癥狀描述信息。
在本實(shí)施例中,用于輸出信息的方法運(yùn)行于其上的電子設(shè)備(例如圖1所示的服務(wù)器)可以通過有線連接方式或者無線連接方式從用戶利用其進(jìn)行病癥咨詢的終端接收癥狀描述信息。癥狀描述信息可以是描述疾病癥狀的信息,如:咳嗽、流鼻涕等。還可以是自然語言表達(dá)的描述信息,例如“我肚子疼”,也可以是專業(yè)術(shù)語表達(dá)的描述信息,例如“腹痛”,還可以是自然語言和專業(yè)術(shù)語相結(jié)合表達(dá)的描述信息,例如“肚子疼,眩暈”,本申請(qǐng)對(duì)此不做限定。若用戶輸入的中文文本中夾雜著一些外文單詞,則可以進(jìn)行預(yù)處理以轉(zhuǎn)換成全中文文本形式的癥狀描述信息。若癥狀描述信息不是文本形式,則對(duì)癥狀描述信息進(jìn)行預(yù)處理得到文本形式的癥狀描述信息。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,該癥狀描述信息包括以下至少一項(xiàng):文本形式的癥狀描述信息、語音形式的癥狀描述信息、圖片形式的癥狀描述信息。通過語音識(shí)別技術(shù)將語音形式的癥狀描述信息轉(zhuǎn)化成文本形式的癥狀描述信息。語音識(shí)別技術(shù)還可以與其他自然語言處理技術(shù)如機(jī)器翻譯相結(jié)合,可以將輸入的外語翻譯成中文再進(jìn)行后續(xù)的處理。若用戶輸入的中文語音中夾雜著一些外文單詞,則可以轉(zhuǎn)換成全中文文本形式的癥狀描述信息。通過圖像識(shí)別技術(shù)識(shí)別出描述癥狀的圖片中是帶有血跡的鼻子,可得到文本形式的癥狀描述信息“鼻子出血怎么辦?”。
步驟202,對(duì)文本形式的癥狀描述信息進(jìn)行切詞以獲得詞序列。
在本實(shí)施例中,癥狀描述信息可以是一句話或者多句話,需要對(duì)文本形式的癥狀描述信息進(jìn)行切詞以獲得詞序列。切詞可以采用多種方法,例如,正向最大匹配法、逆向最大匹配法、最少切分法、雙向最大匹配法。作為示例,電子設(shè)備可以利用全切分方法切分出癥狀描述信息中與語言詞庫匹配的所有可能的詞,再運(yùn)用統(tǒng)計(jì)語言模型確定最優(yōu)的切分結(jié)果。以用戶輸入信息“我這兩天一直頭暈”為例,可以首先進(jìn)行語言詞庫匹配,找到匹配的所有詞——我,這,兩天,這兩天,天一,一直,直頭,頭暈;這些詞以詞網(wǎng)格(word lattices)形式表示,接著基于詞網(wǎng)格做路徑搜索,再基于統(tǒng)計(jì)語言模型(例如N-Gram模型,)找到最優(yōu)路徑。如果結(jié)果顯示“我這兩天一直頭暈”的語言模型得分最高,則“我這兩天一直頭暈”即為“我這兩天一直頭暈”。在這里的N-Gram模型是常用的一種語言模型,對(duì)中文而言,可以稱之為漢語語言模型(CLM,Chinese Language Model)。該N-Gram模型基于這樣一種假設(shè),第N個(gè)詞的出現(xiàn)只與前面N-1個(gè)詞相關(guān),而與其它任何詞都不相關(guān)。進(jìn)行切詞之后,電子設(shè)備還可以對(duì)切分后的詞進(jìn)行初步篩選,以去除“我”、“了”等一些與輸出信息無關(guān)的詞匯。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,采用逆向最大匹配法以及條件隨機(jī)場(chǎng)算法對(duì)文本形式的癥狀描述信息進(jìn)行切詞。逆向最大匹配法從被處理癥狀描述信息的末端開始從右到左將待分詞文本中的幾個(gè)連續(xù)字符與詞表匹配,如果匹配上,則切分出一個(gè)詞。條件隨機(jī)場(chǎng)(CRF,Conditional Random Field)算法是近幾年自然語言處理領(lǐng)域常用的算法之一,常用于句法分析、命名實(shí)體識(shí)別、詞性標(biāo)注等。CRF通過發(fā)掘詞語本身的特征(如長(zhǎng)度,大小寫,匹配特定詞表等,也可以包括詞語本身),把每個(gè)詞語轉(zhuǎn)化成為一個(gè)一維特征向量(vector),然后對(duì)于每個(gè)特征計(jì)算特征到詞性的條件概率,這樣每個(gè)詞語對(duì)候選詞性的條件概率即為所有特征條件概率的加和。
步驟203,將詞序列輸入預(yù)先訓(xùn)練的咨詢模型,由咨詢模型生成候選咨詢建議信息集合。
在本實(shí)施例中,將步驟202獲得的詞序列輸入預(yù)先訓(xùn)練的咨詢模型,由咨詢模型生成候選咨詢建議信息集合。該咨詢模型用于表征癥狀描述信息與咨詢建議信息的對(duì)應(yīng)關(guān)系,該咨詢模型能夠?qū)W習(xí)到癥狀描述信息與咨詢建議信息中的語義映射,利用這個(gè)語義映射自動(dòng)生成針對(duì)癥狀的咨詢建議信息。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,將詞序列輸入預(yù)先訓(xùn)練的咨詢模型得到包含匹配度的候選咨詢建議信息,其中,匹配度用于表征根據(jù)癥狀描述信息確定候選咨詢建議信息的準(zhǔn)確性;按匹配度由大到小的順序選擇預(yù)定數(shù)目個(gè)候選咨詢建議信息組成候選咨詢建議信息集合。該咨詢模型根據(jù)當(dāng)前的語義向量與前一個(gè)詞的語義信息共同預(yù)測(cè)下一個(gè)位置出現(xiàn)不同詞的概率,選擇出現(xiàn)的概率最高的詞作為下一個(gè)生成的詞匯。匹配度與由咨詢模型確定的候選咨詢建議信息的詞匯出現(xiàn)的概率相關(guān)聯(lián),概率越高則該條候選咨詢建議信息的匹配度越大??梢杂?jì)算候選咨詢建議信息中每個(gè)詞匯出現(xiàn)的概率的平均值作為匹配度。還可以根據(jù)不同類型關(guān)鍵詞出現(xiàn)的概率所占的權(quán)重進(jìn)行加權(quán)后再歸一化得到匹配度。然后按匹配度由大到小的順序選取預(yù)定數(shù)目個(gè)候選咨詢建議信息組成候選咨詢建議信息集合。一般選取匹配度最高的3條??蛇x地,如果匹配度低于預(yù)設(shè)的值時(shí),或者候選咨詢建議信息的數(shù)量超過預(yù)設(shè)的推薦閾值條數(shù)時(shí),可以提示用戶進(jìn)一步輸入可用信息以縮小咨詢建議信息集合的范圍,例如,用戶輸入:“脫發(fā)怎么治?。俊睍r(shí),咨詢模型生成回答:“你好,請(qǐng)問多長(zhǎng)時(shí)間了?一天大概掉多少根頭發(fā)?頭發(fā)出油多不多?”。
步驟204,計(jì)算候選咨詢建議信息集合中每條候選咨詢建議信息切詞后的詞數(shù)量。
在本實(shí)施例中,咨詢模型生成的候選咨詢建議信息集合中每條候選咨詢建議信息可以包含多個(gè)詞匯,統(tǒng)計(jì)每條候選咨詢建議信息切詞后的詞數(shù)量,其中,該詞匯量是去除了“我”、“了”等一些與咨詢建議的結(jié)果無關(guān)的詞匯后,統(tǒng)計(jì)的與咨詢建議的結(jié)果相關(guān)的詞的總量。
步驟205,從候選咨詢建議信息集合中選擇切詞后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出。
在本實(shí)施例中,候選咨詢建議信息集合中的每條候選咨詢建議信息的準(zhǔn)確性達(dá)到預(yù)設(shè)的標(biāo)準(zhǔn),從中選出詞匯量最大的咨詢建議信息作為最優(yōu)的結(jié)果進(jìn)行輸出,該詞匯量用于表征咨詢建議信息的信息量多少。例如,咨詢建議信息集合中包括:可選項(xiàng)A“可以吃媽咪愛”,可選項(xiàng)B“可以吃媽咪愛和思密達(dá)”,則計(jì)算出選項(xiàng)B的切詞后的詞數(shù)量大于選項(xiàng)A切詞后的詞數(shù)量,最終選擇選項(xiàng)B“可以吃媽咪愛和思密達(dá)”進(jìn)行輸出。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,從候選咨詢建議信息集合中選擇切詞后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出包括:獲取每條候選咨詢建議信息的匹配度;將每條候選咨詢建議信息切詞后的詞數(shù)量乘以各自的匹配度作為每條候選咨詢建議信息的權(quán)重;從候選咨詢建議信息集合中選擇權(quán)重最大的候選咨詢建議信息進(jìn)行輸出。上述處理將原來詞數(shù)量用匹配度進(jìn)行了修正,例如,選項(xiàng)A的匹配度為95%,詞數(shù)量為10,修正后的詞數(shù)量為9.5。選項(xiàng)B的匹配度為85%,詞數(shù)量為11,修正后的詞數(shù)量為9.35。進(jìn)行詞數(shù)量修正后采用選項(xiàng)A的結(jié)果。用匹配度進(jìn)行詞數(shù)量的修正有利于提高輸出的咨詢建議信息的準(zhǔn)確性。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述咨詢模型的輸出可以是文本形式或者是語音形式的??梢詫⑤敵龅男问脚c癥狀描述信息的輸入形式相匹配。若以語音形式輸入癥狀描述信息,則判斷所選擇的咨詢建議信息是否為語音形式,若不是語音形式,則將所選擇咨詢建議信息轉(zhuǎn)化成語音形式的咨詢建議信息再進(jìn)行輸出。
繼續(xù)參見圖3a和3b,圖3a和3b是根據(jù)本實(shí)施例的用于輸出信息的方法的應(yīng)用場(chǎng)景的一個(gè)示意圖。在圖3a的應(yīng)用場(chǎng)景中,用戶首先通過終端輸入問題:“2歲寶寶拉肚子怎么辦?”;之后,咨詢服務(wù)器可以后臺(tái)獲取上述問題的內(nèi)容,并采用獨(dú)熱編碼(One-hot Representation)把每個(gè)詞表示為一個(gè)很長(zhǎng)的向量。這個(gè)向量的維度是詞表大小,其中絕大多數(shù)元素為0,只有一個(gè)維度的值為1,這個(gè)維度就代表了當(dāng)前的詞。再通過詞嵌入(Word Embedding)轉(zhuǎn)換成低維實(shí)數(shù)向量。然后分別接入前向遞歸神經(jīng)網(wǎng)絡(luò)和后向遞歸神經(jīng)網(wǎng)絡(luò)兩個(gè)遞歸神經(jīng)網(wǎng)絡(luò)(RNN,Recurrent neural Network),最終相當(dāng)于把每個(gè)輸入詞映射為兩個(gè)向量,這兩個(gè)向量可以理解為這個(gè)詞語的語義向量。在圖3b的應(yīng)用場(chǎng)景中,咨詢服務(wù)器將語義向量輸入注意力模型(用于在生成該詞時(shí)需要多注意對(duì)應(yīng)的輸入詞),然后輸入前向RNN進(jìn)行選詞后生成回答:“可以吃媽咪愛和思密達(dá)調(diào)理”。再發(fā)送給用戶的終端進(jìn)行輸出顯示。
本申請(qǐng)的上述實(shí)施例提供的方法通過將癥狀描述信息輸入預(yù)先訓(xùn)練的咨詢模型,由咨詢模型生成候選咨詢建議信息集合,并從中選出最優(yōu)的候選咨詢建議信息進(jìn)行輸出,可以提高自然語言理解能力,回復(fù)地更加自然而非機(jī)器語言,并且是純機(jī)器學(xué)習(xí),無需人工參與模型定義以及知識(shí)庫建設(shè)等繁瑣工作。
進(jìn)一步參考圖4,其示出了用于輸出信息的方法的又一個(gè)實(shí)施例的流程400。該用于輸出信息的方法的流程400,包括以下步驟:
步驟401,獲取文本形式的癥狀描述信息和與癥狀描述信息對(duì)應(yīng)的咨詢建議信息。
在本實(shí)施例中,用于輸出信息的方法運(yùn)行于其上的電子設(shè)備(例如圖1所示的服務(wù)器)可以通過有線連接方式或者無線連接方式獲取互聯(lián)網(wǎng)大量的癥狀描述信息和與癥狀描述信息對(duì)應(yīng)的咨詢建議信息,將其轉(zhuǎn)化成文本形式。還可從第三方數(shù)據(jù)源獲取癥狀描述信息和與癥狀描述信息對(duì)應(yīng)的咨詢建議信息,例如,醫(yī)藥詞典等。
步驟402,將癥狀描述信息進(jìn)行切詞以獲得癥狀描述信息的詞序列。
在本實(shí)施例中,將步驟401所獲取的癥狀描述信息進(jìn)行切詞以獲得癥狀描述信息的詞序列。切詞方法與步驟201基本相同,因此不再贅述。
步驟403,將咨詢建議信息進(jìn)行切詞以獲得咨詢建議信息的詞序列。
在本實(shí)施例中,將步驟401所獲取的咨詢建議信息進(jìn)行切詞以獲得咨詢建議信息的詞序列。切詞方法與步驟201基本相同,因此不再贅述。
步驟404,將癥狀描述信息詞序列和咨詢建議信息詞序列利用深度神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,多次迭代后得到咨詢模型。
在本實(shí)施例中,將步驟402得到的癥狀描述信息詞序列和步驟403得到的咨詢建議信息詞序列作為訓(xùn)練樣本訓(xùn)練咨詢模型。
該咨詢模型是一種深度神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)的結(jié)構(gòu)分為兩部分:編碼(Encoder)和解碼(Decoder):
編碼階段是把輸入的癥狀描述信息切詞序列首先映射為0-1向量,再對(duì)應(yīng)映射為固定長(zhǎng)度的連續(xù)值向量,即詞嵌入(word embedding),然后分別接入前向RNN和后向RNN兩個(gè)遞歸神經(jīng)網(wǎng)絡(luò),最終相當(dāng)于把每個(gè)輸入詞映射為兩個(gè)向量,這兩個(gè)向量可以理解為這個(gè)詞語的語義。
解碼階段是把編碼階段的語義向量通過注意力(attention)模型加權(quán)平均形成新的語義向量輸入到一個(gè)遞歸神經(jīng)網(wǎng)絡(luò)中,RNN根據(jù)當(dāng)前的語義向量與前一個(gè)詞的語義信息共同預(yù)測(cè)下一個(gè)位置出現(xiàn)不同詞的概率,選擇概率最大的作為下一個(gè)生成的詞匯,直到生成句子結(jié)束符。
該咨詢模型中的語義向量與加強(qiáng)平均的系數(shù)等,都是基于訓(xùn)練樣本通過隨機(jī)梯度下降方法計(jì)算得到。
從圖4中可以看出,與圖2對(duì)應(yīng)的實(shí)施例相比,本實(shí)施例中的用于輸出信息的方法的流程400突出了對(duì)建立咨詢模型的步驟。由此,本實(shí)施例描述的方案可以建立咨詢模型以用于輸出與用戶輸入的癥狀描述信息對(duì)應(yīng)的咨詢建議信息,從而快速、準(zhǔn)確地理解并回答用戶提出的問題,純機(jī)器學(xué)習(xí),無需人工參與模型定義以及知識(shí)庫建設(shè)等繁瑣工作。
進(jìn)一步參考圖5,作為對(duì)上述各圖所示方法的實(shí)現(xiàn),本申請(qǐng)?zhí)峁┝艘环N用于輸出信息的裝置的一個(gè)實(shí)施例,該裝置實(shí)施例與圖2所示的方法實(shí)施例相對(duì)應(yīng),該裝置具體可以應(yīng)用于各種電子設(shè)備中。
如圖5所示,本實(shí)施例的用于輸出信息的裝置500包括:接收單元501、切詞單元502、生成單元503、計(jì)算單元504和輸出單元505。其中,接收單元501配置用于響應(yīng)于接收到癥狀描述信息,判斷癥狀描述信息是否為文本形式,若不是文本形式則對(duì)癥狀描述信息進(jìn)行預(yù)處理得到文本形式的癥狀描述信息;切詞單元502配置用于對(duì)文本形式的癥狀描述信息進(jìn)行切詞以獲得詞序列;生成單元503配置用于將詞序列輸入預(yù)先訓(xùn)練的咨詢模型,由咨詢模型生成候選咨詢建議信息集合,其中,咨詢模型用于表征癥狀描述信息與咨詢建議信息的對(duì)應(yīng)關(guān)系;計(jì)算單元504配置用于計(jì)算候選咨詢建議信息集合中每條候選咨詢建議信息切詞后的詞數(shù)量;輸出單元505配置用于從候選咨詢建議信息集合中選擇切詞后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出。
在本實(shí)施例中,接收單元501將文本形式的癥狀描述信息輸入切詞單元502得到詞序列,然后將詞序列輸入生成單元503生成候選咨詢建議信息集合,最后根據(jù)計(jì)算單元504的計(jì)算結(jié)果由輸出單元505選擇一條候選咨詢建議信息進(jìn)行輸出。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,裝置500還包括咨詢模型建立單元,包括:獲取子單元,配置用于獲取文本形式的癥狀描述信息和與癥狀描述信息對(duì)應(yīng)的咨詢建議信息;癥狀切詞子單元,配置用于將癥狀描述信息進(jìn)行切詞以獲得癥狀描述信息的詞序列;建議切詞子單元,配置用于將咨詢建議信息進(jìn)行切詞以獲得咨詢建議信息的詞序列;訓(xùn)練子單元,配置用于將癥狀描述信息詞序列和咨詢建議信息詞序列利用深度神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,多次迭代后得到咨詢模型。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,生成單元503配置用于:將詞序列輸入預(yù)先訓(xùn)練的咨詢模型得到包含匹配度的候選咨詢建議信息,其中,匹配度用于表征根據(jù)癥狀描述信息確定候選咨詢建議信息的準(zhǔn)確性;按匹配度由大到小的順序選擇預(yù)定數(shù)目個(gè)候選咨詢建議信息組成候選咨詢建議信息集合。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,輸出單元505進(jìn)一步配置用于:獲取每條候選咨詢建議信息的匹配度;將每條候選咨詢建議信息切詞后的詞數(shù)量乘以各自的匹配度作為每條候選咨詢建議信息的修正后的詞數(shù)量;從候選咨詢建議信息集合中選擇修正后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,癥狀描述信息的形式包括以下任何一項(xiàng):文本形式、語音形式、圖片形式。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,切詞單元502進(jìn)一步配置用于:采用逆向最大匹配法以及條件隨機(jī)場(chǎng)算法對(duì)文本形式的癥狀描述信息進(jìn)行切詞。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,輸出單元505進(jìn)一步配置用于:判斷所選擇的咨詢建議信息是否為語音形式,若不是語音形式,則將所選擇咨詢建議信息轉(zhuǎn)化成語音形式的咨詢建議信息再進(jìn)行輸出。
下面參考圖6,其示出了適于用來實(shí)現(xiàn)本申請(qǐng)實(shí)施例的服務(wù)器的計(jì)算機(jī)系統(tǒng)600的結(jié)構(gòu)示意圖。
如圖6所示,計(jì)算機(jī)系統(tǒng)600包括中央處理單元(CPU)601,其可以根據(jù)存儲(chǔ)在只讀存儲(chǔ)器(ROM)602中的程序或者從存儲(chǔ)部分608加載到隨機(jī)訪問存儲(chǔ)器(RAM)603中的程序而執(zhí)行各種適當(dāng)?shù)膭?dòng)作和處理。在RAM 603中,還存儲(chǔ)有系統(tǒng)600操作所需的各種程序和數(shù)據(jù)。CPU 601、ROM 602以及RAM 603通過總線604彼此相連。輸入/輸出(I/O)接口605也連接至總線604。
以下部件連接至I/O接口605:包括鍵盤、鼠標(biāo)等的輸入部分606;包括諸如液晶顯示器(LCD)等以及揚(yáng)聲器等的輸出部分607;包括硬盤等的存儲(chǔ)部分608;以及包括諸如LAN卡、調(diào)制解調(diào)器等的網(wǎng)絡(luò)接口卡的通信部分609。通信部分609經(jīng)由諸如因特網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理。驅(qū)動(dòng)器610也根據(jù)需要連接至I/O接口605??刹鹦督橘|(zhì)611,諸如磁盤、光盤、磁光盤、半導(dǎo)體存儲(chǔ)器等等,根據(jù)需要安裝在驅(qū)動(dòng)器610上,以便于從其上讀出的計(jì)算機(jī)程序根據(jù)需要被安裝入存儲(chǔ)部分608。
特別地,根據(jù)本公開的實(shí)施例,上文參考流程圖描述的過程可以被實(shí)現(xiàn)為計(jì)算機(jī)軟件程序。例如,本公開的實(shí)施例包括一種計(jì)算機(jī)程序產(chǎn)品,其包括有形地包含在機(jī)器可讀介質(zhì)上的計(jì)算機(jī)程序,計(jì)算機(jī)程序包含用于執(zhí)行流程圖所示的方法的程序代碼。在這樣的實(shí)施例中,該計(jì)算機(jī)程序可以通過通信部分609從網(wǎng)絡(luò)上被下載和安裝,和/或從可拆卸介質(zhì)611被安裝。在該計(jì)算機(jī)程序被中央處理單元(CPU)601執(zhí)行時(shí),執(zhí)行本申請(qǐng)的方法中限定的上述功能。
附圖中的流程圖和框圖,圖示了按照本申請(qǐng)各種實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段、或代碼的一部分,模塊、程序段、或代碼的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來實(shí)現(xiàn)。
描述于本申請(qǐng)實(shí)施例中所涉及到的單元可以通過軟件的方式實(shí)現(xiàn),也可以通過硬件的方式來實(shí)現(xiàn)。所描述的單元也可以設(shè)置在處理器中,例如,可以描述為:一種處理器包括接收單元、切詞單元、生成單元、計(jì)算單元和輸出單元。其中,這些單元的名稱在某種情況下并不構(gòu)成對(duì)該單元本身的限定,例如,接收單元還可以被描述為“響應(yīng)于接收到癥狀描述信息,判斷癥狀描述信息是否為文本形式,若不是文本形式則對(duì)癥狀描述信息進(jìn)行預(yù)處理得到文本形式的癥狀描述信息的單元”。
作為另一方面,本申請(qǐng)還提供了一種非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì),該非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)可以是上述實(shí)施例中裝置中所包含的非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì);也可以是單獨(dú)存在,未裝配入終端中的非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)。上述非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)存儲(chǔ)有一個(gè)或者多個(gè)程序,當(dāng)一個(gè)或者多個(gè)程序被一個(gè)設(shè)備執(zhí)行時(shí),使得設(shè)備:響應(yīng)于接收到癥狀描述信息,判斷癥狀描述信息是否為文本形式,若不是文本形式則對(duì)癥狀描述信息進(jìn)行預(yù)處理得到文本形式的癥狀描述信息;對(duì)文本形式的癥狀描述信息進(jìn)行切詞以獲得詞序列;將詞序列輸入預(yù)先訓(xùn)練的咨詢模型,由咨詢模型生成候選咨詢建議信息集合,其中,咨詢模型用于表征癥狀描述信息與咨詢建議信息的對(duì)應(yīng)關(guān)系;計(jì)算候選咨詢建議信息集合中每條候選咨詢建議信息切詞后的詞數(shù)量;從候選咨詢建議信息集合中選擇切詞后的詞數(shù)量最大的候選咨詢建議信息進(jìn)行輸出。
以上描述僅為本申請(qǐng)的較佳實(shí)施例以及對(duì)所運(yùn)用技術(shù)原理的說明。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本申請(qǐng)中所涉及的發(fā)明范圍,并不限于上述技術(shù)特征的特定組合而成的技術(shù)方案,同時(shí)也應(yīng)涵蓋在不脫離發(fā)明構(gòu)思的情況下,由上述技術(shù)特征或其等同特征進(jìn)行任意組合而形成的其它技術(shù)方案。例如上述特征與本申請(qǐng)中公開的(但不限于)具有類似功能的技術(shù)特征進(jìn)行互相替換而形成的技術(shù)方案。