[語料庫模型] 01-TF-IDF與餘弦相似性
TF-IDF(Term Frequency - Inverse Document Frequency)和餘弦相似性是整套系統很重要的部分,主要用來建立整個問答集的模型,還有比對使用者輸入的句子和問答集的哪一句最相似。
TF-IDF(Term Frequency - Inverse Document Frequency)和餘弦相似性是整套系統很重要的部分,主要用來建立整個問答集的模型,還有比對使用者輸入的句子和問答集的哪一句最相似。
接續上一篇,昨天已經把問答集的內容都爬下來了,再來要把內容整理成下一個階段(訓練模型),方便使用的格式。
完整的程式碼可以參考: https://github.com/dreambo4/MOHW-QandA
撰寫 Python 程式碼蒐集網路上的長照相關問答資訊,相比使用人工蒐集的方式,程式自動化蒐集方便又快速,也比較不會有缺漏。本研究將程式蒐集到的資料彙整成 CSV 格式,問答集來源包括:愛長照(愛長照編輯團隊,2017)、臺中市長期照顧管理中心(臺中市長期照顧管理中心,2020)、皇家護理集團(皇家護理集團,2019)、臺中市輔具資源整合網(臺中市輔具資源整合網,2015)、衛生福利部(衛生福利部,2017、2020)、宜蘭縣長期照護管理所(宜蘭縣長期照護管理所,2019),共六個來源。
演算法與邏輯是一個系統的核心,聊天機器人的重點當然就是如何處理輸入句子與如何回覆。本研究開發一套 Android App 以 Zenbo 為媒介,使用者可以用語音方式詢問 Zenbo 長照相關問題。後端程式比對使用者輸入語句與長照問題集中最相似的問題,回傳相對應的答案,最後再由 Zenbo 以語音方式回答使用者。流程分別是資料蒐集、分類問答組合、選擇適當斷詞方式、實體對應、比對最符合問答組合、回饋機制。每個部份在後續的文章都會有相應的主題。
隨著科技的發展,人工智慧近年來也越來越普及。人工智慧可以協助人們處理很多事情,如:車牌辨識、自駕車,影像辨識…等等,而聊天機器人也是人工智慧的一項重要應用。
聊天機器人是一種模擬溝通的電腦程式。透過聊天機器人,使用者可以輕鬆地使用自然語言來獲取資訊。自然語言就是像我們一般的講話方式,可以跟聊天機器人說「可以幫我開燈嗎」,而不是指令式的說「開燈」。
大家好,其實這個長照小幫手是我的論文題目,所以這系列的多文章,會有一大部分來自簡化的論文內容,再加上一些沒有收錄進論文的研究心得。
聊天機器人整套系統都是我一個人開發的,所以這系列文章應該會分為 Zenbo、爬蟲、TF-IDF、API、Android APP 幾個部分來介紹,之後會有一篇介紹整體系統架構。
研究過程中,要把 DDE 安裝到 Zenbo 的時候,卡關超久…🙃
試過好多方法,當然也包括 App Builder (下面簡稱 AB)。AB 就是像 App Inventor 或 Scrach 的積木程式,可以讓小朋友玩,訓練邏輯。可能是身為 Android 工程師的堅持(?),本來很抗拒使用積木程式的,但實在卡關太久了,隨便啦,就試試看吧!
今天使用的範例出自高煥堂老師的書《AI機器人、藍芽與Android整合開發技術》,需要完整程式碼請參考書中內容喔。
本篇會以 Ex14-01-ZenboWiFi
這份程式碼說明如何將語料安裝到 Zenob 中。
這篇主要是我之前看官方文件的筆記,還有對於幾個 Basic Concepts 的理解,可能比較沒有結構一點。建議以官方文件的教學為主,再參考我的筆記,這篇紀錄了我之前不懂地方,希望也能幫到你。
為了寫這篇文章,今天又上去翻了一下官方文件,發現還有在更新呢!
想想之前做要做 DDE 語料,看官方文件踩了不少雷💣