2022 구글 머신러닝 부트캠프 4주차 이야기
2022. 7. 23. 20:57
진로/구글 머신러닝 부트캠프
정신없이 일주일이 또 지나갔다 이번주는 정신적, 신체적으로 많이 힘들었다.. 생활패턴은 무너졌고 공부 시간을 확보하기가 어려웠다 이제 슬슬 캐글을 시작해야 할 것 같은데 자신이 없다 또다시 "퇴사할까" 병이 도졌다 누구 한명 나갈 때마다 마음이 이렇게 싱숭생숭해져가지구.. 오늘부터 마음을 다잡고 제대로 몰두해보려고 한다 국비출신 비전공자 인공지능 개발자. 이 타이틀이 쪽팔리지 않을 때까지 열심히 달려야 한다.
[3.2.] End-to-end Deep Learning
2022. 7. 20. 23:35
인공지능/DLS
What is End-to-end Deep Learning? - Speech recognition example 음성파일 input $x$ 와 transcript output $y$가 있다 기존에는 여러 processing stages를 거쳐야 했다 1) $x$ 로부터 feature 추출 (MFCC) 2) Phonemes 분리 (머신러닝 알고리즘) 3) 단어 형성 4) transcript $y$ 형성 end-to-end deep learning은 $x$를 입력하면 바로 $y$가 나온다 end-to-end deep learning은 큰 데이터를 필요로 한다 - 데이터 양이 적을 때는 기존ML방식이 더 잘 됨 - face recognition 출입시 활용하는 시스템을 만든다고 해보자: 카메라 이미지 $x$가..
[3.2.] Learning from Multiple Tasks
2022. 7. 20. 22:22
인공지능/DLS
Transfer Learning 새로운 데이터셋으로 교체, 마지막 한두 개 레이어의 가중치를 initialize한 후 재학습 데이터양이 크면 전체 레이어를 다시 학습해도 괜찮음 "pretraining" -> "fine-tuning" 새로운 레이어를 더 붙일 수도 있음 데이터가 적을 때 사용할 수 있다 전이학습이 필요 없는 경우? 반대의 경우 [When transfer learning makes sense] transfer from A -> B - task A and B have the same input X (이미지면 이미지, 오디오면 오디오 ...) - have a lot more data for task A than task B (task B의 가치가 더 valuable) - low level fea..
[3.2.] Mismatched Training and Dev/Test Set
2022. 7. 20. 00:12
인공지능/DLS
Training and Testing on Different Distributions train과 test의 분포가 다를 때. 옵션1. 두 데이터를 섞고, randomly shuffle - 장점: training/test가 동일한 분포에서 옴 - 단점: dev/test셋의 큰 비율이 여전히 webpage 샘플 --> 비추 옵션2. training set에 mobile app 데이터 일부를 주고, dev/test셋을 모두 mobile app 데이터로 꾸린다 - 장점: 원하는 target으로 설정할 수 있음 - 단점: training/test가 다른 분포에서 옴 --> 하지만 장기적으로는 나은 옵션 Bias and Variance with Mismatched Data Distributions 앞에서 살펴본 ..
[3.2.] Error Analysis
2022. 7. 18. 21:39
인공지능/DLS
Carrying Out Error Analysis 인간 레벨까지 되지 못할 때, 수작업으로 문제를 파악하는 error analysis 강아지 이미지에 에러가 나는 고양이 분류기, 이 문제를 해결하기 위해 강아지 문제에만 몇 개월 동안 집중해도 될까? 잘못 라벨링된 dev set을 보면 100개 중 5개만이 강아지임을 확인할 수 있었음. 그렇게 되면 강아지 문제를 해결한다고 해도 10% 에러를 5% 해결한 9.5% 밖에 안 됨. --> "ceiling on performance" 그런데 만약에 100개 중에 50개가 강아지 사진이었다? 몇 개월을 강아지 문제에 쏟는다고 해도 가치가 있다고 볼 수 있음. 에러율은 50% 해결되어 5% 로감소할 것임 --> simple counting error anaylsi..
[3.1.] Comparing to Human-level Performance
2022. 7. 18. 00:47
인공지능/DLS
Why Human-level Performance? - 빠르게 개선되다가, 인간 레벨을 능가하고 나면 개선 속도가 느려짐 (slope) - 왜? 인간 능력은 bayes optimal error와 크게 멀지 않음 - 뛰어넘을 수 없는 이론적 한계 존재 --> "Bayes Optimal Error" - 성능이 인간 레벨보다 낮을 때: Avoidable Bias you want your algorithm to do not too well training error를 더 낮춰야 할 경우 --> bias 에 집중 이번에는 동일한 에러율에, 인간 레벨이 7.5%라고 해본다 이 경우 training set에는 제법 잘 학습되는 거로 생각할 수 있음 단 dev error와 격차가 있으므로 variance 를 줄이는 데..
[3.1.] Setting Up your Goal
2022. 7. 17. 23:59
인공지능/DLS
Single Number Evaluation Metric to set up a single real number evaluation metric for your problem Precision : 고양이라고 분류했을 때 실제로 고양이일 확률 95퍼센트 Recall : 고양이 이미지 중에서 몇 퍼센트를 고양이로 분류했을까 Precision과 Recall 간의 trade-off가 있을 수 있음 Precision이 좋은 모델 A, Recall이 좋은 모델 B 중에서 뭐가 더 좋을까? 오직 두 개의 evaluation metric을 가지고 좋은 모델을 선정할 수는 있을까? --> Precision과 Recall을 합친 F1 Score : "Average of $P$(Precision) and $R$(Recall..
[3.1.] Introduction to ML Strategy
2022. 7. 17. 23:32
인공지능/DLS
Why ML Stratgy? 정확도를 더 높이는 방법? - 데이터 모으기 - 더 다양한 학습셋 모으기 (다양한 포즈의 고양이 이미지 ...) - gradient descent로 더 오래 학습하기 - gradient descent 대신에 Adam 사용하기 - 더 큰 네트워크 짜기 - 더 작은 네트워크 짜기 - dropout 사용하기 - $L_{2}$ regularization 추가하기 - 네트워크 아키텍처 - 활성화 함수 - hideen unit 개수 - ... quick and effective way to which of all these ideas and maybe even other ideas are worth pursuing and which ones yo ucan safely discard O..