Keras的flow_from_dataframe中class_mode的raw与multi_output区别及适用场景
Keras
flow_from_dataframe 方法 class_mode 参数 raw 与 multi_output 选型说明 结论
你当前的场景应当选择 class_mode="multi_output"。
两个参数的适用场景区别
multi_output适用场景
当你需要给y_col参数传入多个独立的标签列时使用,完全匹配你当前的需求:你的DataFrame包含两个分开的类别标签列,该模式会自动将每一列作为模型一个独立输出分支的对应标签,返回的标签为形状(样本数, 标签列数)的数组,不需要额外做标签合并处理,直接适配多输出分类模型的训练要求。raw适用场景
当你的标签已经提前完成所有预处理(比如单标签的编码、多标签的多热编码、回归任务的连续值等),且所有标签内容都存储在单个DataFrame列中时使用。该模式下方法不会对标签做任何额外的转换处理,直接原样返回该列的内容作为训练标签,适合已经提前完成全量标签预处理的场景。
补充说明
你当前的两个标签为独立的分列,如果使用raw模式需要先手动将两个标签合并为单个列中的数组元素,反而增加不必要的处理步骤,因此multi_output是最优选择。
内容的提问来源于stack exchange,提问作者Saneyar
相关产品推荐
相关产品推荐

