我已經開始學習數據挖掘,並希望在C++/Java中創建一個小型項目,使我能夠利用數據庫,從twitter發佈數據,然後發佈一組特定的結果(例如,所有新聞項目在飼料)。我想知道如何去解決它?我應該從哪裏開始?從數據挖掘開始
從數據挖掘開始
回答
這是一個非常廣泛的問題,所以很難回答。以下是需要考慮的一些事項:
您打算何時獲取數據?你提到Twitter,但你仍然需要以某種方式收集數據。可能有用於收聽推特流的圖書館,或者如果有人正在銷售它,你可能會購買這些數據。
你打算如何存儲數據?取決於你有多少以及你打算如何處理它,傳統的關係數據庫可能最適合或不適合。使用支持直接運行mapreduce作業的東西可能會更好。
基礎上回答這些問題,編程語言和庫的選擇上會更容易做。
如果你真的設置了Java,那麼我認爲Hadoop羣集可能是你想要開始的。它支持使用Java編寫mapreduce作業,並可作爲其他系統(如HBase,一種面向列的數據存儲)的有效平臺。
如果您的數據將會相當規律(即從一個記錄到下一個記錄的結構變化不大),也許Hive會更合適。通過Hive,您可以編寫類似SQL的查詢,只給出數據文件作爲輸入。我從來沒有使用過Mahout,但我知道它的機器學習功能適合數據挖掘任務。
這些只是想到一些想法。這裏有很多選擇,在它們之間進行選擇與你試圖解決的特定問題以及你自己的個人品味是一樣的。
數據挖掘是廣泛的領域,有許多不同的技術;分類,聚類,關聯和模式挖掘,異常值檢測等。
你應該先決定你想要做什麼,然後決定你需要的最佳算法。
如果您不熟悉數據挖掘,那麼我建議您閱讀Tan,Steinbach和Kumar撰寫的「數據挖掘簡介」等書籍。
如果你只是想開始有兩本書,我特別真的很喜歡學習數據挖掘:
模式識別和機器學習。克里斯托弗M.畢曉普。斯普林格。
而這一次,它是免費的:
很好的參考因爲你是
AI course taught by people who actually know the subject,Weka website,Machine Learning datasets,Even more datasets,Framework for supporting the mining of larger datasets。
第一個鏈接是由Peter Norvig和Google研究總監Sebastian Thrun和Stanley的創作者(自主汽車)分別講授的AI的一個很好的介紹。
第二個鏈接,你讓你到Weka網站。下載該軟件 - 這非常直觀 - 並獲得本書。確保你理解了所有的概念:什麼是數據挖掘,什麼是機器學習,什麼是最常見的任務,以及它們背後的原理是什麼。在示例中玩很多 - 軟件包會捆綁一些數據集 - 直到您理解生成結果的內容。
接下來,轉到真實的數據集並與他們一起玩。在處理大量數據集時,您可能會面臨Weka的幾個性能問題 - 根據我的經驗可以看出,這更像是一種學習工具。因此,我建議你看看第五個鏈接,它會讓你訪問Apache Mahout網站。
然而,這不是一個簡單的話題,而是非常有趣。
- 1. python數據挖掘
- 2. Kissmetrics數據挖掘
- 3. 數據挖掘字符串
- 4. 數據挖掘情況
- 5. 數據挖掘教科書
- 6. 「相似性」數據挖掘
- 7. R數據挖掘語法
- 8. Google數據挖掘工具
- 9. 從內聯框架數據挖掘
- 10. 數據挖掘海量數據
- 11. JXMapKit/-Viewer極其緩慢,因爲webstartable - 從哪裏開始挖掘?
- 12. .net圖挖掘
- 13. 從數據中獲取信息 - 數據挖掘實用技術
- 14. 錯誤(數據挖掘):在挖掘模型中未指定任何案例
- 15. Twitter的數據挖掘:分離
- 16. C#的數據挖掘資源
- 17. 微軟數據挖掘外接辦公
- 18. DMQL數據挖掘查詢語言
- 19. 數據挖掘引擎和框架?
- 20. 3維數據挖掘性能
- 21. 輕鬆挖掘數據庫的工具
- 22. 用於MPI的數據挖掘庫
- 23. 數據挖掘算法比較
- 24. 與Django的數據挖掘問題
- 25. 數據挖掘庫和許可限制
- 26. 哪種數據挖掘算法最好?
- 27. 數據挖掘模型名稱由DMX
- 28. 什麼是數據挖掘模型?
- 29. 數據挖掘SSE通過集羣K
- 30. SQL Server數據挖掘資源
但是我能在一臺沒有hdfs的PC上運行hadoop嗎? –
是的,您可以在單個節點上運行hadoop以開始使用。我不確定它是否可以從本地文件系統讀取,或者您是否必須使用HDFS。自從我使用它以來已經很長時間了。該社區是非常有幫助的,所以如果你想提出具體問題,請註冊郵件列表。 – jimbojw