我已经开始学习数据挖掘,并希望在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. HTML数据挖掘
- 2. python数据挖掘
- 3. Kissmetrics数据挖掘
- 4. 数据挖掘 - K近邻
- 5. 休眠4数据挖掘
- 6. JSON到R数据挖掘
- 7. 数据挖掘字符串
- 8. hadoop的数据挖掘库
- 9. 数据挖掘情况
- 10. R数据挖掘语法
- 11. “相似性”数据挖掘
- 12. Google数据挖掘工具
- 13. 数据挖掘教科书
- 14. 从内联框架数据挖掘
- 15. 从AJAX数据挖掘下拉列表
- 16. 的Oracle SQL导航数据挖掘文本挖掘
- 17. 数据挖掘海量数据
- 18. 数据挖掘和频繁数据集
- 19. Web刮,数据挖掘,数据提取
- 20. 数据挖掘项目数据集
- 21. JXMapKit/-Viewer极其缓慢,因为webstartable - 从哪里开始挖掘?
- 22. .net图挖掘
- 23. 从数据中获取信息 - 数据挖掘实用技术
- 24. 错误(数据挖掘):在挖掘模型中未指定任何案例
- 25. 数据挖掘库和许可限制
- 26. Twitter的数据挖掘:分离
- 27. 如何文本挖掘特定数据
- 28. 如何数据挖掘文本?
- 29. MySQL查询与数据挖掘
- 30. 数据挖掘KNN分类器
但是我能在一台没有hdfs的PC上运行hadoop吗? –
是的,您可以在单个节点上运行hadoop以开始使用。我不确定它是否可以从本地文件系统读取,或者您是否必须使用HDFS。自从我使用它以来已经很长时间了。该社区是非常有帮助的,所以如果你想提出具体问题,请注册邮件列表。 – jimbojw