需要多标签分层kfold的帮助
Posted
技术标签:
【中文标题】需要多标签分层kfold的帮助【英文标题】:need help for stratifiedkfold with multilabels 【发布时间】:2022-01-22 10:25:57 【问题描述】:我想使用基因组数据预测生存。我的标签(y)存在于两列中,“vital_status”和“time”。第一个是二进制的,第二个是连续的。我想使用 10 折交叉验证,但数据分布需要在每个列中正确fold。我知道我应该为此使用 stratifiedkfold,但是如何转换两列以便我可以使用它?
我在某个可以使用 to_categorical 的地方阅读,但这给了我一个 3d 数组。我不认为这是正确的..
from tensorflow.keras.utils import to_categorical
y_train_categorical = to_categorical(y)
skf = StratifiedKFold(n_splits=10)
for fold, (traincv, testcv) in enumerate(skf.split(x, y)):
还有其他人知道该怎么做吗? 谢谢
【问题讨论】:
【参考方案1】:我建议将时间变量拆分为小时/天/周/月(取决于哪个更重要)列。这样,您的 kfold 分层将最有意义,并且您可能会在不同的折叠中获得最稳定的结果。
【讨论】:
以上是关于需要多标签分层kfold的帮助的主要内容,如果未能解决你的问题,请参考以下文章