问题描述
我有一个数据集,其中总共有 10,000 行和 11 个特征(customerId、firstVisitDate、secondVisitDate、articleId、section、作者、标题、topicKeywords、totalVisits、wordCount 和 videoCount)。
我正在构建一个具有上述特征的机器学习模型,用于预测首次访问者返回文章的可能性。换言之,文章的首次访问者转化为同一文章的第二次访问者的可能性。
在这个问题中,我需要将 articleId 作为一个特征来训练具有其他重要特征的模型,但 articleId 是一个具有 1206 个唯一值的字符串变量。
问题:将具有 1206 个唯一值的 articleId 视为分类变量,然后对其进行虚拟编码是否合理?如何解决这个问题。任何关于如何以更好的方式完成这项工作的反馈。
数据集链接:https://drive.google.com/file/d/1EkLxsZgXhLhS6_8eoc-rhDOzAzltyeri/view?usp=sharing
解决方法
是的,articleId 是一个分类变量。您可以对其进行一次性编码,但也知道 hashing 是处理高基数分类变量的可行方法。