对于信用卡数据的无监督异常检测/欺诈分析(我没有标记欺诈案例),有很多变量需要考虑。数据是混合类型的,包含连续/数值变量(例如花费的美元金额)以及分类变量(例如帐号)。
包含具有大量唯一类的分类变量的最合适方法是什么?到目前为止我的想法:
- 标签编码(scikit-learn):即将整数映射到类。虽然它返回了一个很好的单个编码特征列,但它强加了一种错误的序数关系感(例如 135 > 72)。
- 一种热/虚拟编码(scikit-learn):即将分类特征扩展为许多取值在 {0,1} 中的虚拟列。这对于具有例如 >10,000 个唯一值的分类特征是不可行的。我知道模型会在稀疏和大数据方面遇到困难。
还有哪些其他(更高级?)合适的方法可以包含大型分类特征列?是否仍然可以通过一些技巧使用 One Hot Encoding?尽管我没有找到任何与入侵检测/欺诈分析相关的应用程序,但我阅读了有关 bin 计数的信息(Microsoft 博客)。
PS:在我看来,在处理无监督入侵检测时,这个问题似乎与编码 IP 地址特征列非常相似。