国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

使用 Python 創建一個簡單的基于規則的聊天機器人

開發 后端
聊天機器人本身是一種機器或軟件,它通過文本或句子模仿人類交互。 簡而言之,可以使用類似于與人類對話的軟件進行聊天。

[[431911]]

還記得這個價值一個億的AI核心代碼?

 

使用 Python 創建一個簡單的基于規則的聊天機器人

 

 

  1. while True
  2.   AI = input('我:'
  3.   print(AI.replace("嗎"" ").replace('?','!').replace('?','!')) 

 

以上這段代碼就是我們今天的主題,基于規則的聊天機器人

聊天機器人

聊天機器人本身是一種機器或軟件,它通過文本或句子模仿人類交互。 簡而言之,可以使用類似于與人類對話的軟件進行聊天。

為什么要嘗試創建聊天機器人? 也許你對一個新項目感興趣,或者公司需要一個,或者想去拉投資。 無論動機是什么,本文都將嘗試解釋如何創建一個簡單的基于規則的聊天機器人。

基于規則的聊天機器人

什么是基于規則的聊天機器人?它是一種基于特定規則來回答人類給出的文本的聊天機器人。由于它基于強加的規則所以這個聊天機器人生成的響應幾乎是準確的;但是,如果我們收到與規則不匹配的查詢,聊天機器人將不會回答。與它相對的另一個版本是基于模型的聊天機器人,它通過機器學習模型來回答給定的查詢。(二者的區別就是基于規則的需要我們指定每一條規則,而且基于模型的會通過訓練模型自動生成規則,還記得我們上一篇的”機器學習介紹“嗎,"機器學習為系統提供無需明確編程就能根據經驗自動學習和改進的能力。")

基于規則的聊天機器人可能基于人類給出的規則,但這并不意味著我們不使用數據集。聊天機器人的主要目標仍然是自動化人類提出的問題,所以我們還是需要數據來制定特定的規則。

在本文中,我們將利用余弦相似距離作為基礎開發基于規則的聊天機器人。余弦相似度是向量(特別是內積空間的非零向量)之間的相似度度量,常用于度量兩個文本之間的相似度。

我們將使用余弦相似度創建一個聊天機器人,通過對比查詢與我們開發的語料庫之間的相似性來回答查詢提出的問題。這也是我們最初需要開發我們的語料庫的原因。

創建語料庫

對于這個聊天機器人示例,我想創建一個聊天機器人來回答有關貓的所有問題。 為了收集關于貓的數據,我會從網上抓取它。

 

  1. import bs4 as bs 
  2. import urllib.request#Open the cat web data page 
  3. cat_data = urllib.request.urlopen('https://simple.wikipedia.org/wiki/Cat').read() 
  4. #Find all the paragraph html from the web page 
  5. cat_data_paragraphs = bs.BeautifulSoup(cat_data,'lxml').find_all('p'
  6. #Creating the corpus of all the web page paragraphs 
  7. cat_text = '' 
  8. #Creating lower text corpus of cat paragraphs 
  9. for p in cat_data_paragraphs: 
  10. cat_text += p.text.lower() 
  11. print(cat_text) 

 

 

使用 Python 創建一個簡單的基于規則的聊天機器人

 

使用上面的代碼,會得到來自wikipedia頁面的段落集合。 接下來,需要清理文本以去除括號編號和空格等無用的文本。

 

  1. import re 
  2. cat_text = re.sub(r'\s+'' ',re.sub(r'\[[0-9]*\]'' ', cat_text)) 

 

上述代碼將從語料庫中刪除括號號。我特意沒有去掉這些符號和標點符號,因為當與聊天機器人進行對話時,這樣聽起來會很自然。

最后,我將根據之前創建的語料庫創建一個句子列表。

 

  1. import nltk 
  2. cat_sentences = nltk.sent_tokenize(cat_text) 

 

 

 

我們的規則很簡單:將聊天機器人的查詢文本與句子列表中的每一個文本之間的進行余弦相似性的度量,哪個結果產生的相似度最接近(最高余弦相似度)那么它就是我們的聊天機器人的答案。

創建一個聊天機器人

我們上面的語料庫仍然是文本形式,余弦相似度不接受文本數據;所以需要將語料庫轉換成數字向量。通常的做法是將文本轉換為詞袋(單詞計數)或使用TF-IDF方法(頻率概率)。在我們的例子中,我們將使用TF-IDF。

我將創建一個函數,它接收查詢文本,并根據以下代碼中的余弦相似性給出一個輸出。讓我們看一下代碼。

  1. from sklearn.metrics.pairwise import cosine_similarity 
  2. from sklearn.feature_extraction.text import TfidfVectorizer 
  3. def chatbot_answer(user_query): 
  4.  
  5. #Append the query to the sentences list 
  6. cat_sentences.append(user_query)  
  7. #Create the sentences vector based on the list 
  8. vectorizer = TfidfVectorizer() 
  9. sentences_vectors = vectorizer.fit_transform(cat_sentences) 
  10.  
  11. #Measure the cosine similarity and take the second closest index because the first index is the user query 
  12. vector_values = cosine_similarity(sentences_vectors[-1], sentences_vectors) 
  13. answer = cat_sentences[vector_values.argsort()[0][-2]]  
  14. #Final check to make sure there are result present. If all the result are 0, means the text input by us are not captured in the corpus 
  15. input_check = vector_values.flatten() 
  16. input_check.sort() 
  17.  
  18. if input_check[-2] == 0: 
  19. return "Please Try again" 
  20. else:  
  21. return answer 

 

我們可以把上面的函數使用下面的流程圖進行表示:

 

使用 Python 創建一個簡單的基于規則的聊天機器人

 

最后,使用以下代碼創建一個簡單的回答交互。

 

  1. print("Hello, I am the Cat Chatbot. What is your meow questions?:"
  2. while(True): 
  3. query = input().lower() 
  4. if query not in ['bye''good bye''take care']: 
  5. print("Cat Chatbot: "end=""
  6. print(chatbot_answer(query)) 
  7. cat_sentences.remove(query) 
  8. else
  9. print("See You Again"
  10. break 

 

上面的腳本將接收查詢,并通過我們之前開發的聊天機器人處理它們。

 

 

從上面的圖片中看到的,結果還是可以接受的,但有也有些奇怪的回答。但是我們要想到,目前只從一個數據源中得到的結果,并且也沒有做任何的優化。如果我們用額外的數據集和規則來改進它,它肯定會更好地回答問題。

總結

聊天機器人項目是一個令人興奮的數據科學項目,因為它在許多領域都有幫助。在本文中,我們使用從網頁中獲取的數據,利用余弦相似度和TF-IDF,用Python創建了一個簡單的聊天機器人項目,真正的將我們的1個億的項目落地。其實這里面還有很多的改進:

  • 向量化的選擇,除了TF-IDF還可以使用word2vec,甚至使用預訓練的bert提取詞向量。
  • 回答環節,其實就是通過某種特定的算法或者規則從我們的語料庫中搜索最匹配的答案,本文中使用的相似度TOP1的方法其實就是一個最簡單的類greedsearch的方法,對于答案結果的優化還可以使用類beamsearch 的算法提取回答的匹配項。
  • 等等很多

 

在端到端的深度學習興起之前,很多的聊天機器人都是這樣基于規則來運行的并且也有很多落地案例,如果你想快速的做一個POC展示,這種基于規則方法還是非常有用的。

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2021-11-30 10:56:43

ChatterBot機器人人工智能

2020-12-02 13:00:17

Recast.AI聊天機器人人工智能

2022-08-04 07:03:41

AnswersInfobip無代碼

2022-09-30 13:55:46

Python機器人

2023-04-05 19:32:28

2021-05-24 15:29:24

人工智能機器人聊天

2022-07-05 06:42:01

聊天機器人人工智能

2025-06-04 08:21:28

2020-02-26 17:39:18

Python機器人Word

2018-06-08 16:18:43

Python微信聊天機器人

2023-03-08 08:00:00

機器人開發

2016-10-09 13:40:44

PythonSlack聊天機器人

2017-06-08 10:07:53

機器人銀行微軟

2023-12-18 19:05:34

2017-03-28 12:21:21

機器人定義

2013-04-15 17:02:33

2019-04-19 14:40:15

代碼Python機器人

2020-02-20 09:00:00

網絡應用數據技術

2016-02-16 14:46:33

聊天機器人機器學習自然語言

2020-08-14 16:18:30

人工智能
點贊
收藏

51CTO技術棧公眾號

国产精品天堂蜜av在线播放| 日本精品久久久久影院| 久久一夜天堂av一区二区三区| 7777女厕盗摄久久久| 国产熟女高潮视频| 视频在线不卡免费观看| 欧美日产在线观看| 中文字幕日韩精品久久| 成人黄色91| 亚洲成人久久一区| av电影免费| 久久91精品国产91久久小草| 九九九九九九精品| 国产日韩精品视频一区二区三区 | 51成人做爰www免费看网站| 樱花在线免费观看| 欧美少妇一区二区| www黄色在线| 欧美写真视频网站| 亚洲啪啪av| 国模 一区 二区 三区| 午夜精品福利电影| 中文成人在线| 亚洲欧美综合精品久久成人| 最新国产在线拍揄自揄视频| **在线精品| 精品视频资源站| 性网站在线播放| 亚洲欧美偷拍卡通变态| 各处沟厕大尺度偷拍女厕嘘嘘| 美女mm1313爽爽久久久蜜臀| 精品久久久久久中文字幕动漫| 婷婷激情图片久久| 国产精品人成电影| 欧美日韩第一| 国产精品爱久久久久久久| 波多野结衣在线一区二区| 欧美成人免费全部| 91国产精品| 欧美老女人性生活| 一级毛片精品毛片| 欧美激情一区二区三区久久久 | 婷婷久久免费视频| 日韩精品黄色网| 欧洲一级精品| 国产一区二区三区在线| yiren22亚洲综合| 久久综合久久88| 久久wwww| 欧美一级电影久久| 日韩一区三区| 亚洲va电影大全| 精品不卡视频| 欧美精品v日韩精品v国产精品| 99成人精品| 午夜精品视频在线观看一区二区| 视频在线观看一区二区三区| 亚洲欧洲日韩综合二区| 国产精品一级片在线观看| 国产原创中文在线观看| 久久久久久久久岛国免费| 三级短视频在线| 欧美视频在线免费| 麻豆网站在线免费观看| 亚洲国产精品va在线| 亚洲天堂一区二区| 欧美精品videosex牲欧美| 俺要去色综合狠狠| 精品久久久久亚洲| 成人一区二区三区视频 | 国产手机视频在线观看| 国产成人精品1024| 午夜宅男在线视频| 粉嫩av一区二区三区免费野| 秋霞a级毛片在线看| 日韩成人在线视频网站| 一区二区三区| 国产日产欧美精品| 性感少妇一区| 欧美 日韩 国产一区| 亚洲国产精品欧美一二99| 69久久夜色| 日韩中文在线观看| 欧洲福利电影| 日本午夜精品一区二区| 91视频免费播放| 成人看片人aa| 日本中文字幕一区二区有限公司| 国产精品va在线观看无码| 久草在线在线视频| 久久久成人精品| 国产亚洲成av人片在线观看| 精品国产一区二区三区久久| 欧美久久综合网| 一区二区av| 亚洲激情av在线| 国产美女一区视频| 久久久久在线观看| 国产精品毛片在线| 污污网站免费看| 成人亚洲免费| 亚洲码国产岛国毛片在线| av天在线观看| 成年人精品视频| 亚洲女同一区| 欧美,日韩,国产在线| 一本大道av一区二区在线播放| gogo亚洲高清大胆美女人体| 国产精品久久久久久久久久小说 | 欧美性三三影院| 亚洲毛片在线免费| 国产精品18毛片一区二区| 久久在线免费观看| 超碰在线观看免费| 国产盗摄xxxx视频xxx69| 精品写真视频在线观看| 最美情侣韩剧在线播放| 最新日韩中文字幕| 色综合蜜月久久综合网| 成年女人18级毛片毛片免费| 欧美少妇xxx| 老牛影视av一区二区在线观看| 日韩一区不卡| 亚洲第一激情av| 久久精品国产福利| 欧美一区视久久| 亚洲成人你懂的| 一区二区在线免费播放| 色乱码一区二区三区熟女| 日韩欧美aaa| 精品成人自拍视频| 无码粉嫩虎白一线天在线观看| 在线播放中文字幕一区| 手机亚洲手机国产手机日韩| 一级特黄性色生活片| 亚洲老头老太hd| 国产精品久久777777毛茸茸| 欧美精品一区二区三区涩爱蜜| 欧美福利视频在线观看| 国产·精品毛片| 亚洲h片在线看| 国产伦精品一区二区三区在线| 亚洲视频一二三| 欧美h版在线观看| 妞干网在线观看视频| 亚洲国产精品成人精品| 99精品视频免费观看| 在线国产网址| 日本高清不卡在线| 国产三级一区二区| 精品视频国内| www.av蜜桃| 夜夜嗨av色综合久久久综合网| 国产精品久久久久久久久免费| 国产欧美日韩中文久久| 国产 日韩 欧美一区| 中文字幕欧美日韩一区二区三区| 7777精品伊人久久久大香线蕉完整版| 91精品推荐| 狠狠色伊人亚洲综合网站l | 女同视频在线观看| 久久精品美女| 4438x成人网最大色成网站| 在线中文一区| 成人在线免费视频| 国产一区二区免费在线观看| 欧美三片在线视频观看| 国产精品久久久久久久久久妞妞 | 美女性感视频久久久| 国产成人综合在线观看| se69色成人网wwwsex| 欧美大片在线播放| 一区二区欧美亚洲| 久久免费的精品国产v∧| 在线播放一区二区精品视频| 欧美三级午夜理伦三级富婆| 欧美亚洲国产精品| 丁香五六月婷婷久久激情| 欧美aⅴ99久久黑人专区| 国产高清免费av在线| 免费在线成人av| 亚洲精品日韩久久久| 91在线看国产| 要久久电视剧全集免费 | 高清不卡一二三区| 91丨精品丨国产| 国产特级毛片| 国产a一区二区| 亚洲精品一区二区三区蜜桃下载| 精彩视频一区二区| 麻豆久久一区| 天堂av免费观看| 国产精品区二区三区日本| 亚洲第一中文字幕| 久久久久久久久久看片| 蜜桃一区二区| 麻豆电影在线播放| 人妻少妇精品久久| 国产精品一区二区三区免费视频| 日韩一区二区三区视频|