데이터과학 삼학년

Dealing with Data Scarcity 본문

Machine Learning

Dealing with Data Scarcity

Dan-k 2020. 6. 2. 14:44
반응형

Dealing with Data Scarcity

- transfer learning : boost, bagging 등

- 충분한 양의 레이블이 없는 데이터가 있을때 어떻게 해야할까?

  > Data augmentation, Transfer learning

 

Data augmentation (데이터 증식)

- 이미지의 경우, 회전시키거나 대칭 또는 일부분을 확대, 브루밍 등을 시켜서 데이터를 증식시킬 수 있음

- 국기 같은 경우는 대칭시킬수가 없지, 대칭시키면 아예 다른 label을 갖게 되는 경우 있음

- 때로는 작은 디테일이 더 정보를 줄 수 있음

- 예측시에 노이즈를 데이터에 추가하는 것은 노노노

- dataflow 등을 통해 pipeline을 구성하여 적용하는 것이 나음

- .cache()를 통해서 dataset을 로딩하는 시간을 줄일 수 있음 

- image 변환을 이용해 데이터 증식 → 에폭이 들어가면서 에폭수와 같이 데이터는 계속변형되어 학습에 제공됨

Transfer Learning (전이 학습)

- shortcut이라 생각하면 좋음

  > imagenet은 수천개의 많은 그림들 레이블 이용하여 학습된 모델

- big dataset을 가진 imagenet을 활용

  > output과 가까이 있는 layer을 잘라 예측의 활용에 맞게 재구성한 다음 imagenet에 붙여서 사용(복잡한 구조의 networks는 이미 학습된 파라미터를 그대로 사용)

- 이미지넷 데이터와 예측하고자 하는 데이터가 많이 다르다면 model을 freeze하지 않는게 좋음

  > hub api를 사용하여 imagenet 붙이기!

 

- tf.keras.applications 에 어떤모델을 고르고, 해당 모델의 어느 layer까지 쓸건지 정할 수 있음

https://keras.io/applications/

 

728x90
반응형
LIST

'Machine Learning' 카테고리의 다른 글

Sequence Model (RNN, LSTM)  (0) 2020.06.02
Going Faster and Deeper  (0) 2020.06.02
Image Classification (Linear, DNN, CNN)  (0) 2020.06.02
Graph 기초  (0) 2020.06.02
Isolation Forest (for anomaly detection)  (0) 2020.04.13
Comments