你在这里提出了一些很好的问题。我将尽我所能依次覆盖它们中的每一个。这不是一个详尽的治疗,但希望它有助于...
1.如何规范分类。
首先,评估您的分类变量是否可以被视为零方差(例如,所有记录仅拥有一个类别)或接近零方差(绝大多数记录属于极少数类别)。创建一个基本频率分布来识别这一点。
虽然在神经上下文本身中并不重要,但考虑从模型中过滤低方差变量是一个好主意。请小心,因为消除接近零的方差变量可能会让您将婴儿与洗澡水一起扔掉。
您之前使用过神经网络,因此您知道需要将类别转换为数值。一个很好的问题是给定的分类值是否本质上是有序的(例如,在 1 到 5 的李克特量表上)以及您是否想要保持有序性。这会将您推向一个领域,例如 Pinto da Costa 和 Cardoso 所描述的领域 ( https://www.researchgate.net/publication/221112186_Classification_of_Ordinal_Data_Using_Neural_Networks )。
2.如何处理缺失数据。
假设您正在谈论缺失的连续值,您将希望根据整个属性中存在的值共同估算这些数值。这里有许多方法可以使用,但要记住的重要一点是分散。从基本意义上说,如果您的属性因异常值而出现偏差,您将需要避开基于均值的计算并采用基于中值的方法。
3. 如何处理“默认值”约占数据的 5% 的事实。
这不是一个直接的问题,因为您有 2500 个表示“默认”的示例(在 50,000 个数据集中)。这里一个理智的方法是确保您使用 K 折交叉验证方案(例如 10 折),以确保您真正随机化训练与测试。这将有助于防止过度拟合。同样,这是相当高水平的指导,但它是谨慎的。
额外积分:
我还没有涉及其他标准策略,例如连续属性的标准化,但您可能希望加快速度以更好地概括您的模型(同时更深入地了解数据中的动态)。这可能会指向您尝试其他算法等。