使用Mahout實現自然語言處理
cestella/NLPWithMahout · GitHub是一個使用Mahout實現自然語言處理(NLP:Natural Language Processing)的開源專案。
NLP一詞來自於統計自然語言處理,來自google的研究主管Peter Norvig評價這本書:如果有人告訴我在一年內能賺一百萬,那麼就只有這本書能做到,我複製了這本書,並開始啟動一個web 文字處理公司。
Apache Mahout is 一個能夠執行在Hadoop上的分散式機器學習演算法高效能庫,可用演算法如下:
Mahout 提供了很多工具庫,允許從hadoop中以ML演算法格式獲取資料。
基本模式有:
1.將文字轉為序列檔案 SequenceFiles,透過 seqdirectory
命令。
2.將序列檔案轉為一系列稀疏向量,使用seq2sparse,根據選擇使用 word-integer和feature-weight.
3.轉換與稀疏向量關聯的Key到使用rowid命令的可增量整數。
另外,可在Mahout中使用Latent Dirichlet Allocation(LDA),透過客戶一遍一遍購買記錄,能夠猜測其購買偏好。Mahout是LDA原始實現的效能15倍。
LDA在Mahout使用方式:
輸入資料作為一個稀疏向量;
建立來自文件欄位的管道,如下三個步驟:
1. seqdirectory ! 轉換包含每行一個文件的系列文件到序列檔案
2. seq2sparse ! 將序列檔案作為條目字典轉為稀疏向量。
3. rowid !轉為稀疏向量的key到整數
cvb工具能夠執行LDA演算法。輸入是字數加權頻率的序列檔案,輸出是topic 模型。
NLP一詞來自於統計自然語言處理,來自google的研究主管Peter Norvig評價這本書:如果有人告訴我在一年內能賺一百萬,那麼就只有這本書能做到,我複製了這本書,並開始啟動一個web 文字處理公司。
Apache Mahout is 一個能夠執行在Hadoop上的分散式機器學習演算法高效能庫,可用演算法如下:
型別:演算法 Linear Algebra : Stochastic Gradient Descent Linear Algebra : Stochastic Singular Value Decomposition Classification: Random Forests Classification : Naïve Bayesian Classification :Hidden Markov Models Clustering :Normal and Fuzzy K-Means Clustering :Expectation Maximization Clustering :Dirichlet Process Clustering Clustering :Latent Dirichlet Allocation Clustering :Spectral Clustering Clustering :MinHash Clustering Pattern Mining: Parallel FP Growth <p class="indent"> |
Mahout 提供了很多工具庫,允許從hadoop中以ML演算法格式獲取資料。
基本模式有:
1.將文字轉為序列檔案 SequenceFiles,透過 seqdirectory
命令。
2.將序列檔案轉為一系列稀疏向量,使用seq2sparse,根據選擇使用 word-integer和feature-weight.
3.轉換與稀疏向量關聯的Key到使用rowid命令的可增量整數。
另外,可在Mahout中使用Latent Dirichlet Allocation(LDA),透過客戶一遍一遍購買記錄,能夠猜測其購買偏好。Mahout是LDA原始實現的效能15倍。
LDA在Mahout使用方式:
輸入資料作為一個稀疏向量;
建立來自文件欄位的管道,如下三個步驟:
1. seqdirectory ! 轉換包含每行一個文件的系列文件到序列檔案
2. seq2sparse ! 將序列檔案作為條目字典轉為稀疏向量。
3. rowid !轉為稀疏向量的key到整數
cvb工具能夠執行LDA演算法。輸入是字數加權頻率的序列檔案,輸出是topic 模型。
相關文章
- 自然語言處理(NLP)自然語言處理
- 自然語言處理的最佳實踐自然語言處理
- 自然語言處理(NLP)系列(一)——自然語言理解(NLU)自然語言處理
- 自然語言處理(NLP)概述自然語言處理
- 自然語言處理NLP(四)自然語言處理
- Python自然語言處理Python自然語言處理
- Python自然語言處理 1 語言處理與PythonPython自然語言處理
- HanLP 自然語言處理 for nodejsHanLP自然語言處理NodeJS
- [譯] 自然語言處理真是有趣!自然語言處理
- 自然語言處理:分詞方法自然語言處理分詞
- 自然語言處理與分析(one)自然語言處理
- 中國語文(自然語言處理)作業自然語言處理
- Python自然語言處理 3 處理原始文字Python自然語言處理
- hanlp自然語言處理包的基本使用--pythonHanLP自然語言處理Python
- 《Python自然語言處理實戰》連結表Python自然語言處理
- 自然語言處理在eBay的技術實踐自然語言處理
- 自然語言處理之jieba分詞自然語言處理Jieba分詞
- 人工智慧 (06) 自然語言處理人工智慧自然語言處理
- 機器學習工作坊 - 自然語言處理機器學習自然語言處理
- 配置Hanlp自然語言處理進階HanLP自然語言處理
- 自然語言處理NLP快速入門自然語言處理
- 自然語言處理(NLP)入門指南自然語言處理
- 自然語言處理與情緒智慧自然語言處理
- Python自然語言處理實戰(1):NLP基礎Python自然語言處理
- 《NLP漢語自然語言處理原理與實踐》學習四自然語言處理
- 自然語言處理NLP(6)——詞法分析自然語言處理詞法分析
- Pytorch系列:(六)自然語言處理NLPPyTorch自然語言處理
- 自然語言處理怎麼最快入門?自然語言處理
- 深度解析自然語言處理之篇章分析自然語言處理
- 自然語言處理(NLP)的主要範疇自然語言處理
- 人工智慧--自然語言處理簡介人工智慧自然語言處理
- 自然語言處理中的語言模型預訓練方法自然語言處理模型
- 精通Python自然語言處理 2 :統計語言建模Python自然語言處理
- 使用 Python+spaCy 進行簡易自然語言處理Python自然語言處理
- 自然語言處理標註工具——Brat(安裝、測試、使用)自然語言處理
- 使用Spark MLlib訓練和提供自然語言處理模型Spark自然語言處理模型
- 2023nlp影片教程大全 NLP自然語言處理教程 自然語言處理NLP從入門到專案實戰自然語言處理
- 基於 Python 的簡單自然語言處理實踐Python自然語言處理