首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >机器学习挑战:诊断java/groovy中的程序(数据挖掘、机器学习)

机器学习挑战:诊断java/groovy中的程序(数据挖掘、机器学习)
EN

Stack Overflow用户
提问于 2009-12-03 08:20:32
回答 5查看 2.4K关注 0票数 20

我计划用Java开发一个提供诊断的程序。数据集分为两部分,一部分用于训练,另一部分用于测试。我的程序应该学会从训练数据中进行分类(BTW在新列中包含30个问题的答案,新行中的每条记录最后一列将为诊断0或1,在数据诊断列的测试部分中将为空-数据集包含约1000条记录),然后在测试部分数据中进行预测:/

我从来没有做过类似的事情,所以我将感谢任何关于解决类似问题的建议或信息。

我在考虑Java Machine Learning库或Java Data Mining Package,但我不确定它是否是正确的方向……?我仍然不确定该如何应对这个挑战。

请给我建议。

万事如意!

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-12-03 09:30:07

正如Gann Bierner所说,这是一个分类问题。我所知道的最适合你需要的分类算法是,Ross Quinlan算法。它在概念上非常容易理解。

对于现成的分类算法实现,最好的选择是Weka。http://www.cs.waikato.ac.nz/ml/weka/。我学习过Weka,但没有用过,因为我发现它有点晚了。

我使用了一个简单得多的实现,称为JadTi。对于像您这样的较小数据集,它工作得非常好。我已经用过很多次了,所以我可以很有信心地告诉你。JadTi可在以下位置找到:

http://www.run.montefiore.ulg.ac.be/~francois/software/jaDTi/

话虽如此,你的挑战将是在web上构建一个可用的界面。为此,数据集的使用将是有限的。数据集基本上是在您已经拥有训练集的前提下工作的,并且您可以在一个步骤中提供新的测试数据集,并且您可以立即获得答案。

但我的应用程序,可能也是您的应用程序,是一步一步的用户发现,具有在决策树节点上来回移动的功能。

为了构建这样的应用程序,我根据我的训练集创建了一个PMML文档,并构建了一个Java引擎,该引擎遍历树的每个节点,要求用户提供一个输入(文本/广播/列表),并将这些值用作下一个可能的节点谓词的输入。

PMML标准可以在这里找到:http://www.dmg.org/在这里您只需要TreeModel。PMML Plugin是一个很好的模式感知编辑器,用于NetBeans创作。Altova XML可以做得更好,但要消耗$$。

还可以使用RDBMS来存储数据集并自动创建PMML!我还没试过呢。

祝你的项目好运,请随时让我知道,如果你需要进一步的投入。

票数 7
EN

Stack Overflow用户

发布于 2009-12-03 09:16:43

我强烈建议您使用Weka完成任务

它是机器学习算法的集合,具有用户友好的前端,有助于许多不同类型的特征和模型选择策略

您可以使用它来做很多非常复杂的事情,而不需要进行任何编码或数学运算

制造者还发布了一份pretty good textbook,解释了数据挖掘的实际方面

一旦掌握了它的诀窍,您就可以使用它的API将它的任何分类器集成到您自己的java程序中。

票数 13
EN

Stack Overflow用户

发布于 2009-12-03 09:10:40

有各种各样的算法属于“机器学习”的类别,哪种算法适合您的情况取决于您正在处理的数据类型。

如果您的数据基本上由一组问题到一组诊断的映射组成,其中每个诊断可以是是/否,那么我认为可能可行的方法包括神经网络和基于测试数据自动构建决策树的方法。

我会看看一些标准的文本,比如Russel & Norvig (“人工智能:现代方法”)和其他关于人工智能/机器学习的介绍,看看你是否可以很容易地调整他们提到的算法来适应你的特定数据。另请参阅O‘’Reilly,"Programming Collective Intelligence“,以获取可能适合您的情况的一种或两种算法的一些示例Python代码。

如果你能读懂西班牙语,墨西哥Alfaomega出版社近年来也出版了各种与AI相关的优秀介绍。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1836853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档