【问题标题】:Training a Machine Learning predictor训练机器学习预测器
【发布时间】:2014-12-02 17:36:31
【问题描述】:

我一直在尝试使用用户数据构建预测模型。模型的输入是文档的元数据(发布日期、标题等),文档标签是用户的偏好(喜欢/不喜欢)。我想问一些我遇到的问题,希望得到一些答案:

  1. 喜欢的文档多于不喜欢的文档。我在某处读到,如果有人使用一个标签的更多输入来训练模型,这会以一种糟糕的方式影响性能(模型倾向于将所有内容分类到具有大部分输入的标签/结果
  2. 是否有可能对 ML 算法进行输入,例如逻辑回归在数字和单词方面是混合的,以及如何做到这一点,例如:

    输入 = [18,23,1,0,'cryptography'] 带有标签 = ['Like']

    我们还可以使用向量(表示单词,使用 tfidf 等)作为输入特征(例如 50 维向量)吗?

  3. 要使用文本数据构建预测模型,唯一的方法是从我们文档中提到的每个单词中导出一个字典,然后构建一个二进制输入来指示是否提到了某个术语?使用这样的版本虽然我们减轻了该术语在集合中的权重,对吗? 我们可以在监督学习模型中使用 word2vec 向量作为单个输入吗?

感谢您的宝贵时间。

【问题讨论】:

    标签: python machine-learning language-features feature-selection


    【解决方案1】:
    1. 您要么需要对较大的类进行欠采样(随机抽取一个小样本以匹配较小类的大小),要么对较小的类进行过采样(引导样本),或者使用支持不平衡的算法数据 - 为此您需要阅读文档。

    2. 你需要把你的词变成词向量。列是您的语料库中的所有唯一词。行是文档。单元格值是以下之一:单词是否出现在文档中、出现的次数、出现的相对频率或 TFIDF 分数。然后,您可以将这些列与其他非单词列一起使用。

    现在列数可能多于行数,这意味着基于矩阵的算法会出现奇点,在这种情况下,您需要 SVM 或朴素贝叶斯等算法。

    【讨论】:

    • 感谢有识之士!很好的建议!
    猜你喜欢
    • 2020-06-15
    • 2012-03-27
    • 2020-02-21
    • 2020-07-01
    • 2011-02-15
    • 2019-07-03
    • 1970-01-01
    • 1970-01-01
    • 2017-06-25
    相关资源
    最近更新 更多