淺談文字詞向量轉換的機制embedding
首先感謝大家對上一篇文章的關注吧,建議看這篇文章前先看下上一篇我推送的《20行程式碼實現電影評論情感分析》,上篇文章其實留了個坑,不過不一定坑到大家,因為可能90%的同學可能不會去認真讀一遍程式碼,或者去跑一下程式。上文說道關於文字詞向量轉換的embedding相關的內容,其實是沒有詳細說明的,那這一篇我嘗試著去解釋一些,說的不對的還望各位大神指正,我也是自學的,沒人一起討論,可能有理解不到位的地方。
其實機器學習演算法,無非是矩陣的加減乘除,對於文字string型的資料,必然需要把這類資料轉成數值型的向量,才能方便計算。文字轉詞向量就是起到這樣的作用,當然,方法有很多,這裡我們提到的機制有點類似於演算法word2vector,它會把文字轉成帶有語意的向量。
什麼是帶有語意的向量?就拿上一篇推送裡出現的tflearn.embedding它起到的作用說起。它其實是通過大量的語句分析挖掘出詞語之間的相似度,舉個簡單的例子,假設有大量的語句中都出現“美女喜歡帥哥”、“美女喜歡好看的男人”,那麼演算法會挖掘出“帥哥”和“好看的男人”可能是相似的語意,於是可以通過向量表示,以下向量純屬yy,為了舉例:
美女=[3,5,7]
帥哥=[5,3,9]
好看的男人=[5.1,2.9,9]
“帥哥”和“好看的男人”會被用距離更近的向量表示起來。另外,向量間的距離也可能會建立聯絡,比方說“北京”是“中國”的首都,“巴黎”是“法國”的首都,那麼向量:|中國|-|北京|=|法國|-|巴黎|
通過embedding函式把所有詞向量距離計算出來後,其實每句話就可以通過詞向量組裝成矩陣,簡單的方式是第一行是第一個詞向量,第二行是第二個。那麼兩句話的語意相似度就可以通過簡單的矩陣減法計算啦,感謝收看。
上一篇《20行程式碼實現電影評論情感分析》程式碼地址,我只放了一點點測試資料,完整的資料大家自己去IMDB下吧:https://github.com/jimenbian/sentiment-analysis
相關文章
- 文字向量化模型acge_text_embedding模型
- 如何將文字轉換為向量?(方法二)
- 如何將文字轉換為向量?(方法三)
- 淺談 LiveData 的通知機制LiveData
- 淺談JavaScript的型別轉換JavaScript型別
- 淺談Kotlin的Checked Exception機制KotlinException
- 淺談JS事件機制與React事件機制JS事件React
- 淺談Java —— Reflection機制(一)Java
- 淺談Java的反射機制和作用Java反射
- 淺談小程式執行機制
- 淺談Android中的事件分發機制Android事件
- Android IPC機制(三):淺談Binder的使用Android
- 淺談瀏覽器快取機制瀏覽器快取
- 淺談Android 事件分發機制(二)Android事件
- 淺談Go型別轉換之間的那些事Go型別
- 淺談 Go 型別轉換之間的那些事Go型別
- 深入淺出說強制型別轉換型別
- 文字資料分析——主題提取+詞向量化
- 淺談多型機制的意義及實現多型
- 淺談promise和js執行機制(一)PromiseJS
- 淺談promise和js執行機制(二)PromiseJS
- 淺談:Redis持久化機制(二)AOF篇Redis持久化
- 淺談:Redis持久化機制(一)RDB篇Redis持久化
- 淺談TCP(1):狀態機與重傳機制TCP
- 淺談JS詞法環境JS
- 淺談任務分發中的機制與併發
- 淺談 React、Flux 與 Redux(各個的執行機制)ReactRedux
- 淺談 K8s Service 網路機制K8S
- 淺談雲端計算與安全沙箱機制!
- 淺談 Java執行緒狀態轉換及控制Java執行緒
- 談談JavaScript中的this機制JavaScript
- 文字情感分析(二):基於word2vec和glove詞向量的文字表示
- 計算機中進位制轉換計算機
- 深度有趣 | 15 淺談中文分詞中文分詞
- 進位制的轉換
- 談談ConcurrentHashMap的擴容機制HashMap
- IPv6轉換技術是什麼?淺談IPv6轉換的兩種技術方式
- 淺談瀏覽器執行環境下的event loop機制瀏覽器OOP