본문 바로가기

728x90

DeepLearning Specialization(Andrew Ng)/Structuring Machine Learning Projects

(7)
[Week 2] 4. End-to-end Deep Learning 1. What is end-to-end deep learning? 전통적으로는 위쪽과 같이 여러 단계를 거치면서 최종 결과물을 산출하나, end-to-end 방식은 audio에서 바로 transcript를 산출한다. 이게 가능해지는 이유는 더 많은 데이터가 학습되었기 때문. 정말 많은 데이터가 있다면 image에서 바로 identity를 찾을 수 있지만, 그렇지 않다면 먼저 얼굴을 찾고 그 얼굴을 통해 identity를 찾는 것이 효율적이다. 다른 예로는 번역, 뼈로 나이 유추하기 등이 있다. 2. Whether to use and-to-end deep learning 다 당연한 얘기인데, 단점 중에 hand-design을 배제하는 점도 있다. 즉, input하자마자 output이 튀어나오니 중간에 수동..
[Week 2] 3. Learning from multiple tasks Learning from multiple tasks 1. Transfer learning 2. Multi-tasking learning 1. Transfer learning 1) 기본 개념 Transfer learning이란 특정 task(A)를 위해 만든 모델을 다른 task(B)를 위해 활용하기 위한 기법이다. 예를 들어 image recognition을 위한 모델을 만들고 이를 약간의 수정으로 radiology diagnose에 활용하는 것. 이를 위해서 output layer의 W와 b를 초기화하고 task B의 데이터로 초기화한 W와 b를 학습시킨다. 이 때, task B의 데이터가 많다면 더 많은 층의 W와 b를 학습시키면 된다. 왜냐하면 task B의 데이터가 많아질 수록 transfer 의..
[Week 2] 2. Mismatched training and dev/test set Mismatched training and dev/test set 1. Training and testing on different distributions 2. Bias and Variance with mismatched data distributions 3. Addressing data mismatch 1. Training and testing on different distributions 위와 같은 경우에 아예 randomly shuffle하고 train, dev/test set을 나누면 사실상 train set으로 dev/test 를 진행하는 것과 같다. 우리의 최종목표는 오른쪽의 사진들에 대해 모델을 적용시키는 것이므로 제일 이상적인 것은 오른쪽 사진들에 대한 데이터를 많아 모아 train, ..
[코세라] [Week 2] 1. Error Analysis Error Analysis 1. Carrying out error analysis 2. Cleaning up incorrectly labeled data 3. Build up your first system and then iterate 1. Carrying out error analysis - 오류분석은 수동으로 dev set에서 모델이 잘못예측한 example 들을 뽑아(about 100개) case 별로 나누는 것이다. 예를 들어 어떤 모델의 dev set에서의 accuracy가 90%(error가 10%)일 때, 강아지를 고양이로 잘못 예측한 경우가 100개 중 5개에 지나지 않는다면 강아지를 고양이로 잘못 예측한 경우를 시정하더라도 error를 9.5%로 밖에 낮추지 못한다. - 위와 같이 ca..
[Week 1] 3. Comparing to human-level performance Comparing to human-level performance 1. Why human-level performance? 2. Avoid Bias 3. Understanding human-level performance 4. Surpassing human-level performance 5. Improving your model performance 1. Why human-level performance? - Bayes Optimal error(Bayes error)는 ML의 성능이 절대 도달할 수 없는 영역이다. 그 이유는 data 자체가 판별불가능한 경우가 있기 때문인데, 예를 들어 판별불가능한 오디오, 너무 흐릿한 사진 등이 있다. 이에 대해서는 ML도 정확한 예측을 할 수 없기 때문. - 위와 ..
[Week 1] 2. Setting up your goal Setting up your goal 1. Single number evaluation metric 2. Satisficing and optimizing metric 3. Train / dev / test distribution 4. Size of dev and test set 5. When to change dev/test sets and metrics 1. Single number evaluation metric Actual N Actual P predict N TN FN predict P FP TP precision = TP / TP+FP recall = TP / TP+FN F1 score = 2 / (P^-1 + R^-1) F1 score 는 대표적인 single metric이다. 2. Satis..
[Week 1] 1. Introduction to machine learning strategy 1. Why ML strategy & 2. Orthogonalization 좋은 모델을 튜닝하기 위해서는 여러가지 전략이 필요하다. 그 절차를 쉽게 하기 위해 Orthogonalization(직교화)이라는 것을 활용한다. 직교화란, 1가지 효과를 위한 1가지 기능이라고 이해할 수 있다. 즉, A라는 효과를 위해 a라는 기능을 사용한다는 의미이다. a라는 기능은 오직 A라는 효과를 내는데에만 사용되는 것. 머신러닝의 개괄적인 목표는 위와 같으며 각각의 효과를 위한 기능들은 다음과 같다. 1) cost function이 training set 에 잘 fit 되는 것.

728x90