我正在处理一个包含 200,000 多个样本和每个样本大约 50 个特征的数据集:10 个连续变量,其他约 40 个是分类变量(国家、语言、科学领域等)。对于这些分类变量,您有例如 150 个不同的国家、50 种语言、50 个科学领域等......
到目前为止,我的方法是:
对于每个具有许多可能值的分类变量,只取具有超过 10000 个样本的那个取该值。这减少到 5-10 个类别而不是 150 个。
为每个分类变量构建虚拟变量(如果有 10 个国家,则为每个样本添加一个大小为 10 的二进制向量)。
用这些数据提供一个随机森林分类器(交叉验证参数等)。
目前使用这种方法,我只能获得 65% 的准确率,而且我觉得可以做得更多。特别是我对我的 1) 不满意,因为我觉得我不应该根据他们拥有的样本数量任意删除“最不相关的值”,因为这些较少表示的值可能更具辨别力。另一方面,我的 RAM 无法通过保留所有可能的值来向数据添加 500 列 * 200000 行。
您对处理这么多分类变量有什么建议吗?