使用 3 个不同的参数对数据进行分类的算法是啥?

Posted

技术标签:

【中文标题】使用 3 个不同的参数对数据进行分类的算法是啥?【英文标题】:Which algorithm to use to classify data by using 3 different parameters?使用 3 个不同的参数对数据进行分类的算法是什么? 【发布时间】:2014-04-29 22:50:41 【问题描述】:

我正在尝试为我的人工智能论文开发一个 android (java) 项目。它很快基于故事阅读和单词测验。一个人读一个故事并标记他不知道的单词。这些单词被注册到 WordPortfolio db,其中包含“Word_id”、“Seen”(多少次)、“Asked”(在测验中被问了多少次)、“Right”(正确回答了多少次)。

我的数据库中有“单词”表,它有 3 个不同的参数来使一个单词独一无二。这些是“优先级”、“级别”和说明符,无论它是动词、名词、Adj、Adv。等等

我想问的是;

我可以使用哪种算法对这些词进行分类,以便明智地向学习者提出“词义问题”?我希望学习者看到他在故事阅读部分看到的单词不止一个,以巩固它的含义,我也希望他学习新单词。

【问题讨论】:

如果我很好地理解了这个问题,您需要在您的数据库中添加一个标签“同义词”。在那里你会存储一个单词的 id 和 id 一个同义词,以及同一个词越来越多的同义词。因此您可以为同义词表中出现的每个单词提供替代词 @Vyger 不,不是我的意思。我需要一种算法来分类词义问题,通过使用这些 db 参数来区分具有难度和询问周期的问题。 【参考方案1】:

有许多类型的算法旨在做到这一点。例如,您可以使用线性回归、最近邻、聚类或神经网络。 http://en.wikipedia.org/wiki/List_of_machine_learning_algorithms 提供了一个非常全面的选项列表。

我还想看看您的图书馆是否有 Toby Segaran (http://shop.oreilly.com/product/9780596529321.do) 的《Programming Collective Intelligence》一书或类似的书。

【讨论】:

谢谢,我将使用 K-means 聚类。【参考方案2】:

分类和聚类算法已经在MATLAB、WEKA等许多人工智能软件中实现。您可以在WEKA Text Classification for First Time & Beginner Users 中看到此示例,但我认为您的问题在 MAP/REDUCE Freamework 上会有很好的表现。我建议您在具有并行框架的问题中使用 MAHOUT,您可以使用它来降低其他平台的速度。

【讨论】:

以上是关于使用 3 个不同的参数对数据进行分类的算法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

weka中用J48(即C4.5)算法对数据集进行训练建模与测试,结果不是很理想,

使用未知标签对数据进行分类并在 matlab 中验证结果

历史上第一个机器学习算法是啥?

用matlab对数据分类汇总

KNN-分类算法

k-近邻算法(KNN)