- splite train set into 5 parts with
sklearn StratifiedKFold
- 4 parts are used as train-1 set and 1 is used as valid-1 set
- this is done by StratifiedKFold.split method which returns indexes for train-1 set (80% of original train) and indexes for valid-1 set (20% of original train)
- tune a model
- do TTA predictions for test and valid-1 (20% of train set)
- iterate through this 5 times
@jamesrequa knows this better than me. I used two different ways:
- just avg(sum(all predictions))
- extracted features from convolutional layers from different models are stacked together and only than I feed them into FC layer.