999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向情緒感知的多功能對話系統的設計與實現

2019-05-29 11:18:10王明鍵梁浩純高大拯馮時
軟件工程 2019年3期

王明鍵 梁浩純 高大拯 馮時

摘? 要:現如今,自然語言處理技術不僅可以實現人機對話,還能從對話中提取出用戶所表達的情感。本文中所介紹的對話系統將以上兩項技術結合起來,使用Web開發相關技術構建了一個功能較為完備的多功能對話系統,不僅具有查詢天氣、新聞、一對一閑聊等基礎功能,還可以將用戶的實時情緒統計展示出來,進而分析用戶情緒變化趨勢生成圖表。本文對此系統整體設計和實現過程中用到的HTML、Django和數據庫等相關技術進行了詳細說明。

關鍵詞:對話系統;情感分析;Django

中圖分類號:TP311.1? ? ?文獻標識碼:A

Abstract:Nowadays,natural language processing technology can not only realize man-machine dialogue but also analyze the emotions expressed in the dialogue process.The dialogue system introduced in this paper combines these two technologies together,building a multi-functional dialogue system with not only the basic functions of weather query,news and one-on-one chat,but also the function of displaying the users real-time emotion statistics to analyze the user's emotional trend and to generate a chart.This paper elaborates on the related technologies such as HTML,Django and database used in the overall design and implementation of the system.

Keywords:dialogue system;sentiment analysis;Django

1? ?引言(Introduction)

聊天機器人的研究開始與1950年,英國知名數學家圖靈在《Mind》上發表了一篇經典論文——《計算機器與智能》[1]。在文中,圖靈第一次提出“機器智能”的概念。如今,在深度神經網絡技術的推動下,自然語言處理學科日益完善,計算機對人類使用自然語言描述的需求識別地越來越準確,對簡單問題和命令可以十分準確地做出回應[2-5]。因此催生出了許多“語音助手”程序,可以實現諸如查詢天氣、新聞等功能,極大程度方便了人們的生活。然而現有的“語音助手”工具僅僅能夠回應單一的指令,無法捕捉和應用語句中的情感信息[6]。

本文中實現的對話系統對現有“語音助手”進行了功能上的擴展,不僅可以實現查天氣等基本功能,還可以分析用戶輸入語句的情感,將其以emoji表情的形式直觀顯示在對話界面上,并且使用帶有情感指定功能的聊天機器人后端生成契合當前用戶情感的回復語句。用戶還可以隨時查詢自己在一段時間內的情感變化情況,以及用戶總體的情感偏好。

2? ?需求分析(Requirements analysis)

本系統所要實現的目標為一個多功能對話系統,擁有查天氣、查新聞、講笑話和閑聊四項基本功能。在用戶與本系統交互時,系統可以實時分析出用戶每句話所蘊含的情感傾向信息,在做出回復的同時將情感傾向以emoji表情的方式顯示在每條消息上,并統計用戶感情變化趨勢生成折線圖。用戶可選擇匿名或者登錄賬號使用本系統。用戶登錄后可獲得修改頭像和保存聊天記錄的功能。登錄信息保存在Cookie和Session中,以實現記住登錄狀態避免重復登錄。

3? ?系統設計和實現(System design and implementation)

3.1? ?總體設計

本系統基于Web技術開發,運行在網頁瀏覽器上。前端采用Bootstrap和JQuery工具,以HTML和JavaScript語言編寫,后端采用Django框架,以Python語言編寫。前后端之間通過Ajax技術異步通信,數據全部以JSON格式包裝。用戶在網頁上產生請求后,后端通過http協議將請求內容轉發到相應的功能模塊服務器上,各個模塊產生的回應再通過網頁后端服務器返回給用戶。通過這樣的設計,將系統本身與各個功能模塊分離,結構清晰易于擴展,如圖2所示。

3.2? ?數據庫設計

經過分析,需要保存到數據庫的僅有用戶信息和聊天記錄兩項。使用sqlite作為數據庫引擎,其結構通過Django的Model模型功能定義。由于Django自帶了User數據表,其中包含用戶名、密碼等基本信息,因此不再進行重復設計,數據庫結構如圖3所示。

為了保存用戶頭像,新建了一個Avatar數據表,其中的user字段一對一關聯到User表中的一個項目,相當于對User表進行了擴展。上傳的頭像文件會自動以用戶名重命名,保存到/media/avatar/中。Avatar表中avatar字段為Text類型,為頭像文件的路徑。該數據表使用了Django提供的信號功能添加了一個回調函數以實現當用戶上傳新頭像時自動刪除舊頭像文件,釋放存儲空間。

ChatHistory表用于保存聊天記錄,其中字段如下:user為外鍵,多對一關聯到User表中的一個項目;is_response字段為Boolean型,用于區分該條記錄是否為系統做出的回復;text字段為Text類型,保存聊天記錄;emotion為Float類型,記錄該條記錄的情感傾向;time字段為該條記錄產生的時間,設置其auto_now屬性為True,在進行數據插入時該字段會自動被設置為當前時間。

3.3? ?后端設計

本系統后端使用Django框架制作。Django是一個基于Python編程語言的MVT Web應用框架。其提供了一個基于正則表達式的URL分發器,可以在特定URL被請求時自動執行相應的Python函數。本系統所有功能全部通過http請求的形式調用。可請求URL如表1所示。

(1)注冊/登錄/修改密碼功能

注冊與登錄功能共用一個頁面,修改密碼功能在用戶中心二級頁面中。此三項功能的核心部分均為輸入表單和驗證碼。當頁面加載完成時,客戶端會自動請求pc-geetest/get獲取驗證碼,用戶在表單中填寫必要信息后點擊驗證碼進行身份驗證,此時會彈出滑動驗證窗口,若用戶成功通過驗證,則在表單中自動添加challenge、validate和seccode三個隱藏的input元素。點擊確定按鈕時,以上三個元素與用戶填寫的信息被一同發往服務器。若表單中此三元素不存在或此三元素的值通過特定算法計算失敗,則認為用戶沒有通過驗證碼測試,直接返回錯誤信息。驗證通過后,對數據庫進行增刪改查,實現注冊/登錄/修改密碼功能。

登錄、注冊、修改密碼等需要傳遞敏感信息的場合,為防止跨站請求攻擊,在生成的表單內部含有一個隱藏的input項目,其name為csrfmiddlewaretoken,value為服務器自動生成的驗證代碼,在提交時必須將csrf token與表單信息同時提交到服務器,否則服務器會拒絕此次請求。

用戶登錄后,系統自動將登錄信息寫入到Cookie和Session中。Cookie可以讓瀏覽器記住登錄狀態。用戶在進行請求時系統后端可以直接從Session中取得登錄信息,從而對登錄用戶和匿名用戶做出不同的響應。

(2)聊天功能

本系統后端與各種功能模塊完全分離,由于功能模塊可能分布在不同的服務器上,因此后端通過http請求的方式調用各種功能模塊。當后端接收到用戶在聊天界面輸入的內容后,首先計算該段文字的情感傾向,再先檢查其是否包含“天氣”“新聞”或“笑話”字樣,若包含,則調用相應的API進行處理。若不包含,則將對話內容和情感傾向值轉發至聊天機器人后端,最后將各個模塊的回復和情感值一同作為http響應返回給前端。

在查詢天氣指令中,需要在對話內容中提取出要查詢的城市信息,方法為對內容字符串正向掃描,首個與已知城市最大匹配的字串即為要查詢的城市名。已經預先將已知城市列表構建成前綴樹,用于加速匹配過程。在前綴樹中,所有節點擁有final屬性表示到該節點是否為一個完整的城市。樹的節點與子節點通過字符串中的下一個字符進行狀態轉移。

(1234);,若直接將其添加到頁面上,瀏覽器會運行其中代碼,攻擊者可以利用此特性執行惡意代碼,造成潛在的安全漏洞。因此當用戶進行輸入時,本系統使用JavaScript自動將輸入內容中的符號轉換對應的html實體,如

主站蜘蛛池模板: 91福利片| av在线无码浏览| 中文字幕2区| 亚洲国产中文精品va在线播放| 亚洲人成网站18禁动漫无码| 91综合色区亚洲熟妇p| 久无码久无码av无码| 欧美视频二区| 伊人久久综在合线亚洲2019| 亚洲人成电影在线播放| 无码一区18禁| 精品国产99久久| 精品久久久久成人码免费动漫| 国产噜噜在线视频观看| 免费A∨中文乱码专区| 伊人91视频| 国产福利小视频在线播放观看| 毛片在线看网站| 免费日韩在线视频| 国产麻豆精品久久一二三| 久久国产V一级毛多内射| 日韩av无码精品专区| 日韩欧美视频第一区在线观看| www成人国产在线观看网站| 亚洲AV无码久久天堂| 国模私拍一区二区三区| 999福利激情视频| 欧美h在线观看| 亚洲欧美成aⅴ人在线观看| 91丝袜美腿高跟国产极品老师| 91国内视频在线观看| 日本亚洲成高清一区二区三区| 欧美成人日韩| 中文字幕在线观| 亚洲欧美国产五月天综合| 日韩国产欧美精品在线| 亚洲男人天堂久久| 国产不卡国语在线| 亚洲高清中文字幕在线看不卡| 欧洲精品视频在线观看| 亚洲av无码久久无遮挡| 美女被操91视频| 国产精品毛片在线直播完整版| 一级毛片免费的| 草草线在成年免费视频2| 狼友视频一区二区三区| 永久免费AⅤ无码网站在线观看| 国产丝袜啪啪| 国产精品白浆在线播放| 国产精品自在在线午夜区app| 国产日韩欧美在线视频免费观看| aⅴ免费在线观看| 色综合天天综合中文网| 日本国产精品| 国产h视频在线观看视频| 亚洲一区二区三区中文字幕5566| 亚洲中文字幕av无码区| 国产精品视频3p| 在线看AV天堂| 精品国产成人高清在线| 高清免费毛片| 日本亚洲国产一区二区三区| 欧美精品一二三区| 午夜啪啪网| 免费可以看的无遮挡av无码| 午夜啪啪网| 久久99这里精品8国产| 精品伊人久久久久7777人| 精品小视频在线观看| 亚洲av片在线免费观看| 亚洲综合久久成人AV| 久久久久久久久亚洲精品| 欧美视频在线观看第一页| 久久无码av一区二区三区| 9999在线视频| 四虎成人精品| 国产天天射| 中文字幕在线欧美| 91探花国产综合在线精品| 婷婷久久综合九色综合88| 亚洲不卡网| 免费啪啪网址|