챕터 11. Practical Methodology(실용적 방법론)

  • 딥러닝을 성공적으로 적용하는데는 무슨 알고리즘이 있는지, 그리고 그 동작 원리가 무엇인지 보다 더 많은 것을 요구함
  • 훌륭한 머신러닝 개발자들은 특정 어플리케이션에 대한 알고리즘을 선택하는 법을 알고, 시스템을 개선하기 위해 실험으로 부터 얻은 피드백에서 반응하는 법을 안다.
  • 머신러닝 시스템 개발 간에, 개발자들은 더 많은 데이터를 수집하고, feature regularizng을 더하거나 제거하고, 모델 용량을 증가시키거나 감소시키고, 모델을 최적화 시키고, 모델의 approximate inference(?)를 증가시키고, 모델의 소프트웨어를 디버깅하는 법을 안다.
  • 이 책의 대부분은 다른 기계학습 모델들, 학습 알고리즘, 목적 함수에 관한 것이다. 이것은 기계 학습 전문가가되기위한 가장 중요한 요소가 다양한 기계 학습 기술을 알고 있고 다른 종류의 수학에 능숙하다는 인상을 줄 수 있습니다.
  • 실제로, 모호한 알고리즘을 어물쩡하게 적용하는 것보단 평범한 알고리즘을 옳바르게 적용하는 것이 훨씬 더 잘 동작합니다.
  • 알고리즘의 정확한 적용은 몇몇 단순한 방법론을 완전히 습득하는데 있습니다.
  • 이 chapter의 대부분의 추천은 Advice for applying Machine Learning Andrew Ng Stanford University에서 채택되어 졌다.

    아래와 같은 디자인 프로세스를 추천한다.

  • 목표를 결정하라(사용할 error metric이 무엇인지, 이 error metric을 위한 target value는 무엇인지)
    이러한 목표와 error metric은 application이 풀기를 원하는 문제에 의해 driven 되어진다.

  • 가능한 작업 종단 간 파이프라인을 설립하라. 그 파이프라인에 적절한 performance metrics를 추정하라.

  • 성능 병목을 결정하기 위해 시스템의 성능을 잘 측정하라. 어느 부분이 성능이 하락되었는지, 그 이유가 over-fitting, under-fitting, 데이터 결함, 소프트웨 결함 등 어디서 오는지 파악하라.

  • 성능 측정에 기반한 특정한 결과를 바탕으로, 점진적인 변경을 반복 수행한다. 각 변경은 새로운 데이터 수집, hyper-parameter 조정, 알고리즘 변화 등을 의미한다.

11.1 성능 측정자

  • error metric의 관점에서 목표를 정하는 것과 달성할 성능 레벨을 정하는 것은 첫번째 step이다. 특히, error metric은 일련의 action들을 가이드해줄 것이기 때문에 매우 중요하다.
  • 절대적인 zero error 달성은 불가능하다. Bayes error는 우리가 무한한 학습 데이터를 가지거나, 실제 확률 분포를 알고 있더라도, 절대 달성할 수 없는 최소 에러율을 정의한다. 그 이유는 input feature들이 output variable에 대해 완벽한 정보를 포함하지 못하기 때문이기도 하고, 시스템 자체가 본질적으로 stochastic일 수도 있기 때문이다. 더더군다나, 학습데이터 양 자체도 한정되어져 있다.

  • 학습 데이터 양은 여러 이유에서 제한되어 진다. 현실적으로 실제 제품을 만들때, DB를 획득하지만, 에러를 감소시키는 가치와 DB를 수집하는 가치를 저울질 해야한다. 또 다르게, 연구자의 입장이라면, DB는 고정되어 있으므로, 추가 데이터 수집은 금지된다.

  • 합당한 성능 목표치는 어떻게 정할 수 있을까? 전형적으로, 학문 관점에서 이전에 배포된 벤치마킹 결과에 기반해서 받아들일 만한 에러율에 대한 생각을 가진다. 실제 세계 관점에서, 고객에게 안전하고, 가치있을 만한 에러율에 대한 아이디어를 가진다. 현실적으로 도달할만한 에러율이 정해진다면, 향후의 설계 상 의사결정은 이 에러율에 도달하기 위한 길로 인도(?)된다.

  • 모델을 학습하기 위한 Cost function 외에 performance metric도 중요하다. (딥러닝북, 섹션 5.1.2에 일반적인 측정자가 있다.하지만, 많은 어플리케이션이 더 발전된 metric이 필요하다.)

  • 스팸메시지의 예시 : 스팸메시지는 스팸메일을 제대로 걸러내지 못하는 것보다, 정상 메일을 스팸메일로 처리하는 것이 더욱 나쁜 상황이다. 이런 경우 스팸 분류기의 에러율을 측정하기 보다, 정상 메일을 거르는 것이 스팸 메일을 못거르는 것보다 더욱 cost가 큰 측정 기준을 사용해야 한다.

  • 성능 측정에서, rare event detection(10,000 명 중 1명 병걸림) 같은 경우에 있어서, precision과 recall은 대안이 된다. precision은 모델이 옳게 검출한 비율이고, recall은 검출된 비율 중 true event의 비율이다. 만약에, detector가 모든 이가 병에 걸렸다고 한다면, recall은 100%를 달성할 것이다. 반대로, precision은 0.0001%를 달성 할 것이다.

  • 일반적으로 precision과 recall을 사용할 때, PR curve를 그리는데, recall은 x축, precision은 y축에 그린다.

results matching ""

    No results matching ""