【问题标题】:What representation of chat text data should I use for user classification? [closed]我应该使用哪种聊天文本数据表示来进行用户分类? [关闭]
【发布时间】:2023-03-16 03:02:01
【问题描述】:

我正在尝试训练一个分类器来对来自 2 个用户之间聊天的文本进行分类,以便稍后我可以预测这两个用户中谁更有可能说 X 个句子/单词。为了到达那里,我从聊天日志中挖掘了文本,最后得到了两个单词数组,UserA_wordsUserB_words

我必须以哪种格式转换此数组以将其传递给分类器,如 naiveBayes 或 SVM?我如何通过例如一袋词表示到分类器?

【问题讨论】:

  • 在姐妹网站DataScience.SE 上询问将什么 ML 表示用于特定分类任务是主题。请迁移到那里。
  • 搁置它是没有建设性的:要么迁移到 DataScience.SE,要么在此处保持打开状态。我的回答表明这有一个实际的答案。
  • @smci 抱歉,我是新来的,我在 Data Science SE 中发布了一个类似的问题,但是如何迁移这个问题?提前谢谢你
  • whiteTea 你无能为力 - 是 >3k reputation 的用户投票关闭而不是迁移,而不是投票重新打开或迁移。
  • 请不要交叉发帖,但既然你已经在 DataScience.SE 上发布了this,我们就去那边发帖吧。

标签: python machine-learning scikit-learn svm naivebayes


【解决方案1】:

您是在询问应该使用哪种 ML 表示来对聊天文本进行用户分类。

词袋和词向量是文本处理中通常使用的主要表示。然而,聊天的用户分类不是通常的文本处理任务,我们寻找指示特定用户的明显特征。 以下是一些:

  • 每条评论的字长、字长、句长
  • 打字速度(尤其是如果您有以秒为单位的时间戳)
  • 标点符号的比率(例如 80 个字符中的 17 个标点符号 = 17/80)
  • 大写比例
  • 数字的比例
  • 空白比例
  • 字符 n-gram(注意这些可以提取例如 l0ser, f##k, :-)
  • Unicode 的使用(表情符号、符号,例如星号)
  • 特定标点符号的比例(例如,有多少个 '.'、'!'、'?'、'*'、'#')
  • 字数,特别是。任何统计异常
  • 您能想到的其他任何东西似乎对这两个用户都有预测性,例如每句拼写错误的单词数(可能是实际的拼写错误,或者来自手机上的预测性滑动)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-20
    • 2013-03-13
    相关资源
    最近更新 更多