논문을 읽던 도중 실험 데이터에 적용할 수 있는 좋은 K-fold 방법이 소개된 피규어가 있어서 가져와 보았다.
논문은
Freenome 사에서 나온 논문이다.
Stratified k-fold 에 기반한 4가지 방법을 설명하고 있다.
1) k-fold
일반 stratified k fold. class 만 고려한 cross-validation 이다.
2) k-batch
실험상에서, 생물학적 요인이 아닌 외부적인 요인으로 인해 batch effect 가 생길 수 있다. 따라서 이를 제거해주거나, 이를 고려한 sampling 이 필요한데, 해석하는 측면에서 잘못된 해석을 낼 수 있기 때문이다.
이 논문에서는 실험상 batch 를 고려한 k-batch 방법을 제안하는데, 이는 train, test 상에서 batch 별로 묶어서 하는 과정이다.
3) ordered k-batch
앞서 말했던 batch 는 sequencing 한 날짜같은 시간적인 것도 고려하여 나눌 수 있는데, ordered k-batch 는 batch 가 만들어진 순서대로 train, test 에서 사용하는 방식이다.
4) balanced k-batch
이 방법은 1)+2)+3) 을 합친 방법으로 batch 의 순서 + batch 안의 class 의 비율을 맞춰서 한 방법이다.
논문에서는 1) 의 일반적인 stratified k-fold 가 성능이 가장 좋았다고 말하고 있다.
'데이터 > Data Manipulation' 카테고리의 다른 글
[Python] Missingno Package : Overview of new datasets (0) | 2022.10.20 |
---|---|
[Pandas] Stratified sampling with pd.DataFrame.sample() (0) | 2022.10.13 |
[4] Python list comprehension 써보기. (0) | 2022.05.29 |
[3] Pandas transform : lambda 대신 데이터프레임에 사용가능, 하지만 더 다양하게. (0) | 2022.05.29 |
[2] Pandas cut : 조건식 있는 loc 대신 쓸 수 있는 방법. (0) | 2022.05.29 |
댓글