Artificial intelligence 多语言数据的特征选择和无监督学习&x2B;机器学习算法选择
问题 我想将数千个网站分类/分类/集群/分组在一起。我们可以利用一些数据进行训练,这样我们就可以进行有监督的学习,但我们收集的不是数据,我们也不坚持使用这些数据,所以我们也在考虑无监督学习Artificial intelligence 多语言数据的特征选择和无监督学习&x2B;机器学习算法选择,artificial-intelligence,nlp,machine-learning,data-mining,classification,Artificial Intelligence,Nlp,Machine Learning,Data Mining,Classification,问题 我想将数千个网站分类/分类/集群/分组在一起。我们可以利用一些数据进行训练,这样我们就可以进行有监督的学习,但我们收集的不是数据,我们也不坚持使用这些数据,所以我们也在考虑无监督学习 我可以在机器学习算法中使用哪些功能来处理多语言数据?请注意,其中一些语言可能没有在自然语言处理领域中处理过 如果我要使用无监督学习算法,我是否应该按语言划分数据,并以不同的方式处理每种语言?不同的语言可能有不同的相关类别(或者没有,取决于你的心理语言学理论倾向),这可能会影响划分的决定 我在考虑使用决策树,
- 我可以在机器学习算法中使用哪些功能来处理多语言数据?请注意,其中一些语言可能没有在自然语言处理领域中处理过
- 如果我要使用无监督学习算法,我是否应该按语言划分数据,并以不同的方式处理每种语言?不同的语言可能有不同的相关类别(或者没有,取决于你的心理语言学理论倾向),这可能会影响划分的决定
- 我在考虑使用决策树,或者支持向量机(SVM),以允许更多的功能(根据我对它们的理解)。建议使用随机林而不是支持向量机。有什么想法吗
我们打算使用机器学习软件包。根据您提供的上下文,这是一个有监督的学习问题。 因此,您正在进行分类,而不是聚类。如果我误解了,请更新你的问题,这样说
我将从最简单的特征开始,即对页面的Unicode文本进行标记,并使用字典将每一个新的令牌转换为一个数字,并简单地考虑令牌的存在作为特征。 接下来,我将使用我能使用的最简单的算法——我倾向于使用朴素贝叶斯,但是如果你有一个简单的方法来运行SVM,这也很好
将您的结果与一些基线进行比较——比如为所有页面分配最频繁的类最简单的方法足够好吗?如果没有,就开始迭代算法和功能。如果你选择受监督的方式,那么网页使用多种语言这一事实应该不会有什么区别。如果你使用词汇特征(bag-o'-words风格),那么每种语言最终都会产生不相交的特征集,但这没关系。所有的标准算法都可能给出可比的结果,所以只需选择一个,然后继续。我同意Yuval的观点,NaiveBayes是一个很好的起点,只有当它不能满足您的需求时,才尝试使用SVM或随机森林 但是,如果你选择无监督的方式,那么文本并非都使用同一种语言这一事实可能是一个大问题。任何合理的聚类算法都将首先按语言对文本进行分组,然后在每个语言簇内按主题(如果您使用内容词作为特征)进行分组。这是一个bug还是一个特性将完全取决于您为什么要对这些文本进行分类。如果重点是按主题对文档进行分组,而不考虑语言,那么这是不好的。但是如果你对每种语言都有不同的分类没问题的话,那么是的,你就有了和其他语言一样多的分类问题 如果您确实想要一组统一的类,那么您需要某种方法跨语言链接类似的文档。是否有超过一种语言的文档?如果是这样的话,你可以把它们当作一种统计罗塞塔石,用来连接不同语言中的单词。然后,使用类似潜在语义分析的方法,您可以将其扩展到二阶关系:不同语言中的单词从未出现在同一文档中,但往往与出现在同一文档中的单词同时出现。或者,您可以使用锚文本或URL属性之类的东西,以独立于语言的方式为文档分配一个粗略的分类,并以此作为开始的一种方式
但是,老实说,在不清楚类是什么(或者至少什么算是好的分类)的情况下讨论分类问题似乎很奇怪。完成课程是最困难的部分,也是决定项目成败的部分。实际的算法部分相当死记硬背。主要答案是:尝试不同的方法。没有实际的测试,很难预测哪种方法会给出最好的结果。所以,我将提出一些我将首先尝试的方法,并描述它们的优缺点 首先,我建议监督学习。即使数据分类不是很准确,它仍然可能比无监督聚类提供更好的结果。其中一个原因是聚类过程中使用了许多随机因素。例如,k-means算法在启动过程时依赖于随机选择的点,这可能导致不同程序运行的结果非常不同(尽管x-means修改似乎规范了这种行为)。只有当底层元素在特征空间中产生分离良好的区域时,聚类才会产生良好的结果 处理多语言数据的方法之一是