gpt4 book ai didi

java - 如何提高weka中SMO分类器的性能?

转载 作者:行者123 更新时间:2023-11-29 05:55:48 31 4
gpt4 key购买 nike

我正在使用 weka SMO 分类器对文档进行分类。smo 有许多参数可用,例如 Kernal、tolerance 等。我使用不同的参数进行了测试,但在大数据集上没有得到好的结果。

对于超过 90 个类别,只有 20% 的文档被正确分类。

请任何人告诉我在 SMO 中获得最高性能的最佳参数集。

最佳答案

这里的主要问题不是分类本身,而是选择合适的特征。使用原始 HTML 会导致非常大的噪声,这反过来又会使分类结果非常差。因此,要获得良好的结果,请执行以下操作:

  1. 提取相关文本。不只是删除 HTML 标签,而是准确地获取描述项目的文本。
  2. 创建关键词词典。例如。卡布奇诺咖啡、拿铁咖啡、白米饭等。
  3. 使用stemminglemmatization获取单词的基本形式并避免计数,例如,“cotton”和“cottons”作为 2 个不同的单词。
  4. 根据文本制作特征向量。属性(特征名称)应该是字典中的所有单词。值可以是:二进制(如果单词出现在文本中则为 1,否则为 0)、整数(相关单词在文本中出现的次数)、tf-idf (如果您的文本长度非常不同,请使用这个)和其他。
  5. 只有完成所有这些步骤后,您才能使用classifer

很可能分类器类型在这里不会发挥重要作用:无论使用何种分类技术,基于字典的特征通常都会产生非常准确的结果。您可以使用 SVM (SMO)、朴素贝叶斯、ANN 甚至 kNN。更复杂的方法包括创建类别层次结构,例如,类别“咖啡”包含在类别“饮料”中,而类别“饮料”又是类别“食品”的一部分。

关于java - 如何提高weka中SMO分类器的性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12174825/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com