ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Structuring ML projects - 1
    Google ML Bootcamp/structuring Machine Learning Projects 2023. 9. 16. 18:05
    728x90

    1. Orthogonalization

    - Fit training set well on cost function   : Adam과 같은 최적화

    - Fit dev set well on cost function   : 정규화, training set을 크게 만들기

    - Fit test set well on cost function   : dev set을 크게 만들기

    - Performs well in real world   : 현실적인 알고리즘에 적용 X -> 개발 세트나 비용함수를 바꿔야 한다.

     

     

    2. Single Number Evaluation Metric

    - 단일 실수 평가 지표를 사용하는 것이 유용하다

    - 분류기 선택 시에는 Precision과 Recall 두 가지를 모두 가지고 평가하기 보다는 두 가지 성능 지표를 합쳐서 새로운 평가 지표를 만드는 것이 좋다.

    - 정밀도와 재현율을 합한 지표로 F1-score를 쓰는 것이 일반적이다.(F1 score = Average of P and R)

    - F1 score = 2 / (1/P + 1/R) : 정밀도와 재현율의 균형을 맞추는데에 장점이 있음. F1-score ↑ - 성능 ↑

     

     

    3. Satisficing and Optimizing Metric

    - 고려해야할 요소가 여러개 일 경우 : 가장 좋은 결과가 나왔으면 하는 부분을 최적화 지표로 설정하고, 어느정도 이상이면 충분한 요소 한 개 이상을 만족 지표로 설정한다. -> 다양한 선택지를 자동적으로 처리할 수 있다.

    - train, dev, test set으로 잘 설정하는 것이 중요하다.

    - train, dev, test set은 모두 같은 분포에서 만들어져야 한다.

     

     

    4. Size of the Dev and Test Sets

    - Old way of splitting data : 7:3 or 6:2:2 정도의 비율이 합리적이었음.

    - 현재 : 데이터가 너무나 방대해지고 있어서 test set을 20% 미만으로 설정하는 것이 합리적

     

     

    5. When to Change Dev/Test Sets and Metrics?

    - A Algorithm : 3% error -> in porno image

    - B Algorithm : 5% error -> no porno image

    -> error 상으로는 A를 선호하는 것이 맞지만, 고객의 입장에서는 B를 선호한다.

    -> 평가 지표가 더 이상 제 역할을 하지 못하고 있기 때문에 dev/test sets를 바꿔야한다.

     

     

    6. Avoidable Bias

    - 인간과 알고리즘 훈련 셋의 오류 차이가 너무 큰 경우 : 알고리즘이 훈련 세트에 잘 fitting 되지 않았다. -> 편향을 줄이는 것이 중요 -> 더 큰 신경망을 훈련하거나 훈련 세트를 더 오랫동안 돌려보는 방식을 선택 가능.

    - 인간과 알고리즘 훈련 셋의 오류 차이가 거의 없는 경우 : 학습 알고리즘의 분산을 줄인다. -> 정규화 -> dev error를 train error와 비슷한 수준으로 만든다.

    - Human error가 Bayse error와 거의 비슷하지만 무엇을 달성 가능하다고 생각하는가에 따라 1. 편향 감소 전략, 2. 분산 감소전략으로 전략이 달라진다.

    - 인간과 알고리즘 훈련 셋의 오류 차이가 너무 큰 경우 : 편향 감소 전략(왼쪽) -> 1%와 8%의 차이를 줄이는 편향감소전략이 효율적

    - 인간과 알고리즘 훈련 셋의 오류 차이가 거의 없는 경우 : 분산 감소 전략(오른쪽) -> Human과 Training error 차이가 너무 적어서 Dev error와 Training error의 차이를 줄이는 분산 감소 전략이 효율적

    - Avoidable Bias : |Human error - Training error|

     

     

    7. Understanding Human-level Performance

     

     

    8. Surpassing Human-level Performance

    - 충분한 데이터가 있는 경우 딥 러닝 시스템이 단일 지도 학습 문제에서는 인간을 넘어서고 있다.

     

     

    9. Improving your Model Performance

    728x90
Designed by Tistory.