這裡通常有兩種方式:1種是用正則,2是計算相似度。
基於概率的,是需要訓練資料的。
通用處理流程:
先分詞,後門的預處理操作:spell correctness(拼寫糾錯)、找出原形、stopwords(停用詞過濾)、word filter(過濾詞)、同義詞
文字--->向量的方法:boolean vector(布林向量)、conf vector(統計詞出現的頻率)、tf-idf、word2vec(詞向量)、seq2seq
為什麼要轉換為向量,因為有了向量就能計算相似度。
計算相似度(前一步轉換的2個向量):歐式距離、cos 距離、jacrad 距離
排序:-》過濾 返回結果
智慧型問答系統。上面的方案:
基於已有的問答,去匹配是一種。
還有就是根據知識圖譜(實體抽取、關係抽取),從查詢中提取實體,然後從知識圖譜查詢關聯節點。進而找到答案。
後面的一節,跨度比較大。跳到:心理學與dl 深度學習。
老師用巴布洛夫的狗試驗,來對比機器學習,狗通過不斷訓練獲得了鈴聲響起和有食物可吃之間的聯絡,就是類似的給機器屬入x,輸出y。反覆訓練之後,機器也會對輸入的x輸出y的期望。這兩者是類似的。詞向量模型訓練好之後,以後不斷更新、訓練,不然很多新詞識別不好類似於消退,
泛化與dl的過擬合。
泛化:
泛化能力用來表徵學習模型對於未知資料的**能力。通常使用測試集中的資料來近似泛化能力(就是大部跑模型,小部分做測試)。
從生活來看,教小孩過馬路看汽車,類似的電單車也會注意到。
過擬合:
當某個模型過度的學習訓練資料中的細節和噪音,以至於模型在新的資料上表現很差。
老師給的例子是「一朝被蛇咬十年怕井繩」,你不只是對蛇害怕,甚至對類似的繩子就是太泛化了。
分化:
在巴布洛夫的狗試驗的中,如果聲音赫茲不一樣,多次訓練後狗會識別出差別,只針對性產生反應。
再dl中,相當於輸入類似的x與x1,一開始因為泛化的存在,機器都會輸出y,隨著訓練的進行,機器也會對x與x1 有個辨別的過程。
總結下:經典條件反射,就是乙個連線,分別給與x,y,中間是黑盒,多次重複後,x跟y就是有個聯結。
不合理性:不一定靠簡單的訓練就能產生效果,只是關注端到端的。
斯金納的鼠:
斯金納箱裡有一塊踏板,踏板被踩下去後,會有老鼠愛吃的糖球投放進來。當老鼠無意中踩到踏板時,糖球出現了。而當它踩踏其他位置時,沒有食物出來。老鼠意識到踩踏板會有糖球,它會更頻繁的去踩踏板。這就是操作條件學習的過程。雖然動物也需要建立起兩個刺激之間的偶聯,但動物的反應卻是需要花功夫去學習的,是在機體意識控制下的自主行為。
強化學習:
獎勵機制非常重要。強化學習的過程是不斷嘗試,並記錄所處的狀態和行為,找到某個狀態下獎勵最大的行為。
心理學上分為:正強化、負強化,正懲罰,負懲罰。強化學習上只有兩個。
hubel和wiesel 的貓
hubel和wiesel的貓的試驗,提出腦部的視覺處理是基於層級結構。也就是說,視覺處理不是由單個處理器一步完成,而是經過了一層一層的處理。最簡單的資訊在較低的層級完成,資訊逐級被萃取,並隨著層級提高而加深。這啟發了其他研究者,提出卷積神經網路結構(cnn)。
而且大腦的不同的區域,負責不同的功能。生活中的例子,小孩學語言快。類似外語的例子,中序才開始學習的,非母語環境,後面幾年不用很快遺忘。
問答系統筆記1
1.聊天資料中詞語在不同位置的概率分布具有非常明顯的長尾特性。詞語概率分布上的模式會優先被decoder的語言模型學到,並在生成過程中嚴重抑制query和response之間詞語關聯模式的作用,即便有了query的語義向量作為條件,decoder仍然會挑選概率最大的 我 作為response的第乙個...
NLP學習筆記 nlp入門介紹
為什麼計算機難以理解人類的自然語言呢?主要是下面6個特性 詞彙量在自然語言中含有很豐富的詞彙,而程式語言中能使用的關鍵字數量是有限的 結構化自然語言是非結構化的,而程式語言是結構化的,例如類和成員。自然語言是線性字串,要分析它,需要用到分詞 命名實體識別 指代消解和關係抽取等。歧義性我們說話含有大量...
NLP學習筆記1 2
開始學習nlp的第乙個模組jieba import nltk setence hello,world token nltk.word tokenize setence list token hello world import jieba 模糊模式 seg list list jieba.cut 2...