接上文~~
6
6th
对3D fMRI数据进行了autoencoder和PCA的降维操作,把每个3D数据压缩成12048个特征,加入其他的组织者提供特征FC和structual的数据。作者对整个流程的描述都比较简单,比如target binning,site classifier怎么做的,blending时meta-model用的是什么都没有提及。
autoencoder?
自动编码器是一种数据的压缩算法,其中数据的压缩和解压缩函数是1)数据相关的,2)有损的,3)从样本中自动学习的。在大部分提到自动编码器的场合,压缩和解压缩的函数是通过神经网络实现的。目前自编码器的应用主要有两个方面,第一是数据去噪,第二是为进行可视化而降维。配合适当的维度和稀疏约束,自编码器可以学习到比PCA等技术更有意思的数据投影。
该方案的亮点便是使用了3d-cnn的autoencoder,见以下Github
https://github.com/gkiar/3d-cnn-ae/
一个对stat map的自编码的例子:
Siamese Network?
Siamese是暹罗的意思,为什么Siamese Neural Network可以称为孪生神经网络,这种网络有什么用。推荐以下知乎文章介绍Siamese Network,有奇怪的知识~~~
7
7th
使用了3D CNN并且用训练集median的值对预测结果进行调整,有不错的效果。
作者说:resnet10 and started to boost from median predictions
什么意思:
medians = [50.42774666, 51.84730591, 60.05253491, 47.81120495, 52.57203216]
out = out + Variable(torch.Tensor(medians)).cuda()
该作者在比赛刚开始的时候便贡献了一个高质量的notebook,使用了Rapids中GPU版的SVM,仅用了tablular的数据(没有加入3D fMRI的数据)就达到了public和priviate leaderboard的0.160,并成为很多人的baseline model。
Rapids是Nvidia孵化的一个项目,GPU版的SVM比CPU的快5倍。
Notebook里还不忘嘲讽一下sklearn。。。。
8
8th
同样使用了RestNet对3D fMRI数据进行降维,后续的操作和第六名极其相似(!),作者分享了NN的结构,代码见原帖。
参数优化用了一个懒人包:Optuna (不仅仅是简单的gridsearch)。
使用optuna进行优化,同时它还支持distributed optimization。
关于optuna推荐阅读:
Project’s website: https://optuna.org/
Project’s GitHub repository: https://github.com/pfnet/optuna
Example Notebooks: https://github.com/PiotrekGa/optuna_article
How to make your model awesome with Optuna:https://towardsdatascience.com/how-to-make-your-model-awesome-with-optuna-b56d490368af
9
9th
对于3D fMRI数据,每个被试有53个IC map,计算IC maps之间的相关是一个有效的特征工程的方法。处理完3D fMRI的数据,剩下的步骤很直接,用了24个baseline model:
6x Ridge
1x Lasso
3x RAPIDS SVR
2x XGboost
2x KNN
9x MLP
1x 2D CNN
进行stacking,stacking用的model 为:
BaggingRegressor( base_estimator=Ridge )
KNeighborsRegressor
NuSVR
RandomForestRegressor
10
10th
思路比较清晰。首先对于3D fMRI数据进行了降维。一方面和原始3D数据使用deep learning的模型进行预测;另一方面提取3D map中的特征,和其他已有的特征loading(structural数据)和FNC进行特征选择。最后使用Ridge作为meta的模型进行预测。可以看到CV的分数达到了0.512,没有考虑site特征可能是public和private分数下降的原因。本次比赛中,testing的数据中包含了两个site的数据,而training的数据只包括了一个site,也就是说用这个模型有overfitting site 1。
~
Bonus
第二名在说
第四名在说
但是Top10中有一部分方案都提到,他们借鉴一位在腾讯工作的kaggle大神(seotao)的baseline 模型。Github有共享代码和pretained的模型。Tencent MedicalNet和MONAI都是基于医疗影像数据的3D-CNN模型构架值得关注。
去年3月seotao的kaggle经验分享,怎么只用了半年拿到了kaggle的Grandmaster。
传送门
在随后时间里他再次提升了自己的成绩
Recap
Autoencoder
Siamese Network
RAPIDS
Optuna
Tencent MedicalNet和MONAI
下次分享如何使用kaggle
Stay tuned