Deep learning기법을 이상진단 등에 적용할 경우, 정상과 이상 data-set간의 심각한 unbalance가 문제. 본 논문에서는 GAN 기법을 이용하여 정상 data-set만의 Manifold(축약된 모델)를 찾아낸 후 Query data에 대하여 기 훈련된 GAN 모델로 Manifold로의 mapping을 수행함으로서 기 훈련된 정상 data-set과의 차이가 있는지 여부를 판단하여 Query data의 이상 유무를 결정하고 영상 내에 존재하는 이상 영역을 pixel-wise segmentation 하여 제시함.
Deep learning기법을 이상진단 등에 적용할 경우, 정상과 이상 data-set간의 심각한 unbalance가 문제. 본 논문에서는 GAN 기법을 이용하여 정상 data-set만의 Manifold(축약된 모델)를 찾아낸 후 Query data에 대하여 기 훈련된 GAN 모델로 Manifold로의 mapping을 수행함으로서 기 훈련된 정상 data-set과의 차이가 있는지 여부를 판단하여 Query data의 이상 유무를 결정하고 영상 내에 존재하는 이상 영역을 pixel-wise segmentation 하여 제시함.
One-stage Network(YOLO, SSD 등)의 문제점 예를 들어 근본적인 문제인 # of Hard positives(object) << # of Easy negatives(back ground) 또는 large object 와 small object 를 동시에 detect하는 경우 등과 같이 극단적인 Class 간 unbalance나 난이도에서 차이가 나는 문제가 동시에 존재함으로써 발생하는 문제를 해결하기 위하여 제시된 Focal loss를 class간 아주 극단적인 unbalance data에 대한 classification 문제(예를 들어 1:10이나 1:100)에 적용한 실험결과가 있어서 정리해봤습니다. 결과적으로 hyper parameter의 설정에 매우 민감하다는 실험결과와 잘만 활용할 경우, class간 unbalance를 해결하기 위한 data level의 sampling 방법이나 classifier level에서의 특별한 고려 없이 좋은 결과를 얻을 수 있다는 내용입니다.
Coursera Machine Learning by Andrew NG 강의를 들으면서, 궁금했던 내용을 중심으로 정리.
내가 궁금했던건, 데이터를 분류하는 Decision boundary를 만들때...
- 왜 가중치(W)와 decision boundary가 직교해야 하는지?
- margin은 어떻게 계산하는지?
- margin은 어떻게 최대화 할 수 있는지?
- 실제로 margin을 최대화 하는 과정의 수식은 어떤지?
- 비선형 decision boundary를 찾기 위해서 어떻게 kernel을 이용하는지?...
http://blog.naver.com/freepsw/221032379891
4.representing data and engineering features(epoch#2)Haesun Park
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
Intriguing properties of contrastive lossestaeseon ryu
소개드릴 논문은 과거 리뷰를 진행한 Contrastive learning에 이어 꽤나 높은 성능을 가져오고 Contrastive loss로 학습시켰을때 나타나는 특성들이 어떻게 나타나는지 실험을 통해 설명을 하는대요, Contrastive loss를 일반화 한 후 그로부터 나오는 여러 종류의 Contrastive loss의 성능, 또 다양한 객체가 이미지에 있을때 Contrastvie Learning은 Representation을 얼마나 잘 학습하는지, Contrastive learning에서 Augmentation이 얼마나 중요한지에 대한 부분입니다. 오늘 논문 리뷰를 위해 펀디멘탈팀의 이재윤님이 Contrastive learning부터 , 논문에 대한 자세한 리뷰까지 도와주셨습니다.
Coursera Machine Learning (by Andrew Ng)_강의정리SANG WON PARK
단순히 공식으로 설명하지 않고, 실제 코드 및 샘플데이터를 이용하여 수식의 결과가 어떻게 적용되는지 자세하게 설명하고 있다.
처음 week1 ~ week4 까지는 김성훈 교수님의 "모두를 위한 딥러닝"에서 한번 이해했던 내용이라 좀 쉽게 진행했고, 나머지는 기초가 부족한 상황이라 다른 자료를 꽤 많이 참고하면서 학습해야 했다.
여러 도서나 강의를 이용하여 머신러닝을 학습하려고 했었는데, 이 강의만큼 나에게 맞는것은 없었던거 같다. 특히 Octave code를 이용한 실습자료는 나중에도 언제든 활용가능할 것 같다.
Week1
Linear Regression with One Variable
Linear Algebra - review
Week2
Linear Regression with Multiple Variables
Octave[incomplete]
Week3
Logistic Regression
Regularization
Week4
Neural Networks - Representation
Week5
Neural Networks - Learning
Week6
Advice for applying machine learning techniques
Machine Learning System Design
Week7
Support Vector Machines
Week8
Unsupervised Learning(Clustering)
Dimensionality Reduction
Week9
Anomaly Detection
Recommender Systems
Week10
Large Scale Machine Learning
Week11
Application Example - Photo OCR
Reproducibility and automation of machine learning processDenis Dus
A speech about organization of machine learning process in practice. Conceptual and technical aspects discussed. Introduction into Luigi framework. A short story about neural networks fitting in Flo - top-level mobile tracker of women health.
One-stage Network(YOLO, SSD 등)의 문제점 예를 들어 근본적인 문제인 # of Hard positives(object) << # of Easy negatives(back ground) 또는 large object 와 small object 를 동시에 detect하는 경우 등과 같이 극단적인 Class 간 unbalance나 난이도에서 차이가 나는 문제가 동시에 존재함으로써 발생하는 문제를 해결하기 위하여 제시된 Focal loss를 class간 아주 극단적인 unbalance data에 대한 classification 문제(예를 들어 1:10이나 1:100)에 적용한 실험결과가 있어서 정리해봤습니다. 결과적으로 hyper parameter의 설정에 매우 민감하다는 실험결과와 잘만 활용할 경우, class간 unbalance를 해결하기 위한 data level의 sampling 방법이나 classifier level에서의 특별한 고려 없이 좋은 결과를 얻을 수 있다는 내용입니다.
Coursera Machine Learning by Andrew NG 강의를 들으면서, 궁금했던 내용을 중심으로 정리.
내가 궁금했던건, 데이터를 분류하는 Decision boundary를 만들때...
- 왜 가중치(W)와 decision boundary가 직교해야 하는지?
- margin은 어떻게 계산하는지?
- margin은 어떻게 최대화 할 수 있는지?
- 실제로 margin을 최대화 하는 과정의 수식은 어떤지?
- 비선형 decision boundary를 찾기 위해서 어떻게 kernel을 이용하는지?...
http://blog.naver.com/freepsw/221032379891
4.representing data and engineering features(epoch#2)Haesun Park
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
Intriguing properties of contrastive lossestaeseon ryu
소개드릴 논문은 과거 리뷰를 진행한 Contrastive learning에 이어 꽤나 높은 성능을 가져오고 Contrastive loss로 학습시켰을때 나타나는 특성들이 어떻게 나타나는지 실험을 통해 설명을 하는대요, Contrastive loss를 일반화 한 후 그로부터 나오는 여러 종류의 Contrastive loss의 성능, 또 다양한 객체가 이미지에 있을때 Contrastvie Learning은 Representation을 얼마나 잘 학습하는지, Contrastive learning에서 Augmentation이 얼마나 중요한지에 대한 부분입니다. 오늘 논문 리뷰를 위해 펀디멘탈팀의 이재윤님이 Contrastive learning부터 , 논문에 대한 자세한 리뷰까지 도와주셨습니다.
Coursera Machine Learning (by Andrew Ng)_강의정리SANG WON PARK
단순히 공식으로 설명하지 않고, 실제 코드 및 샘플데이터를 이용하여 수식의 결과가 어떻게 적용되는지 자세하게 설명하고 있다.
처음 week1 ~ week4 까지는 김성훈 교수님의 "모두를 위한 딥러닝"에서 한번 이해했던 내용이라 좀 쉽게 진행했고, 나머지는 기초가 부족한 상황이라 다른 자료를 꽤 많이 참고하면서 학습해야 했다.
여러 도서나 강의를 이용하여 머신러닝을 학습하려고 했었는데, 이 강의만큼 나에게 맞는것은 없었던거 같다. 특히 Octave code를 이용한 실습자료는 나중에도 언제든 활용가능할 것 같다.
Week1
Linear Regression with One Variable
Linear Algebra - review
Week2
Linear Regression with Multiple Variables
Octave[incomplete]
Week3
Logistic Regression
Regularization
Week4
Neural Networks - Representation
Week5
Neural Networks - Learning
Week6
Advice for applying machine learning techniques
Machine Learning System Design
Week7
Support Vector Machines
Week8
Unsupervised Learning(Clustering)
Dimensionality Reduction
Week9
Anomaly Detection
Recommender Systems
Week10
Large Scale Machine Learning
Week11
Application Example - Photo OCR
Reproducibility and automation of machine learning processDenis Dus
A speech about organization of machine learning process in practice. Conceptual and technical aspects discussed. Introduction into Luigi framework. A short story about neural networks fitting in Flo - top-level mobile tracker of women health.
Siamese neural networks for one shot image recognition paper explainedtaeseon ryu
소개드릴 논문은 오래전에 나왔고, 노드의 구조 또한 단순 하지만, 거리 학습 기반의 One Shot 러닝을 고안하는데 크게 기여하였고, 이전엔 사람이 직접 설계한 특징으로
거리학습을 진행하였지만, 처음으로 Siamese Network를 통하여 DNN을 활용했다는 점에서 의미가 큽니다. 현업에서도 클래스는 많고, 이미지는 적은경우에 대해 유사도를 판단해야 하는 경우 자주 쓰이는 기법이 될 수 있습니다.
오늘 논문 리뷰를 위하여 이미지처리팀 '이예은'님이 자세한 리뷰 도와주셨습니다.
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
발표자: 김성현 (서울대 융합과학기술대학원 석사과정)
발표일: 2018.6.
네이버 해커톤에 참가하면서 주어진 문제에 어떻게 대처했고, 문제를 해결해나가면서 발생한 상황들에 대해 어떻게 대처했는지, 그리고 문제 해결을 위해서 어떤 방법들을 사용했고 어떤 방법들을 시도했는지에 대해서 사후 점검의 측면에서 정리합니다. 그리고 지금 다시 한다면 어떤 방법들을 시도해보고 싶은지와 문제 해결 전략에 대해서도 점검합니다.
문제 파악
무슨 문제를 선택할 것인가?
단어 vs 문자 단위 모델 선택
모델 선택
Why LSTM?
자잘한 선택들
Self Attention
모델 트레이닝과 정규화
일단 트레이닝부터
잘 알려진 정규화 방법을 시도
Weight Dropout
Variational Dropout
L2 Weight Decay
모델 크기 키우기
Weight Averaging
시도해본 것들
mLSTM
CNN
지금이라면 시도해보고 싶은 것들
SGD (+ Momentum), CLR, SWA, Snapshot Ensemble
FFN + Attention
해커톤 공략 전략에 대한 생각
베이스라인과 더 복잡한 모델, Exploitation vs Exploration
시간 제약이 있으면 LSTM은 위험할지도
형태소분석기에 왜 CRF가 쓰이는지 이해하기 위해 정리한 슬라이드입니다. Graphical Models의 필요성부터 시작해 방향성(Bayesian Networks), 비방향성(Markov Random Fields) Graphical Models의 정의와 조건부독립 성질을 살펴보고, Generative와 Discriminative 모델의 차이점을 정리한 뒤 Discriminative + Undirected 모델로서 Conditional Random Fields를 소개합니다. 끝으로 형태소분석에 CRF를 사용하는 테크닉을 간단히 소개합니다.
Rails Antipatterns (http://www.amazon.com/Rails-AntiPatterns-Refactoring-Addison-Wesley-Professional/dp/0321604814) 를 읽고 몇 가지 정도만 요약을 해보았습니다.
레일즈를 시작한지 얼마 되지 않은터라 맞지 않는 부분이 있더라도 양해 부탁드려요 :)
4. 머신러닝 개발 순서 中
• 데이터 수집
• 데이터 준비 (Data cleaning)
• 데이터 분석 (Data analysis, Feature engineering)
• 데이터 학습 (Modeling)
• 모델 성능 평가 (Evaluation)
오늘은 이 부분을 다룹니다
4
5. 용어 정의
• Machine Learning
• Feature / Attribute
• Target variable / Label
• Training set / Testing set
5
6. 기계 학습
• Supervised Learning (지도 학습)
• 데이터 X에 대해 Y를 예측하는 것
• 답이 있는 문제에서 답을 예측하는 것
• Unsupervised Learning (비지도 학습)
• 데이터 X는 어떻게 설명될 수 있는가
• 해석은 알아서
http://en.wikipedia.org/wiki/List_of_machine_learning_concepts
6
9. 지도 학습 학습 단계
MachineFeatures
Target variable
Modeling
9
10. 지도 학습 테스트 단계
MachineFeatures
Predicted
target variable
predicted = model(features)
10
11. 지도 학습 성능 평가 단계
Machine
Training Data Features
(w/o target variable)
Predicted Target Variables
Accuracy = Correctly Predicted Target Variables / Total Predicted Target Variables
11
12. 지도 학습 성능 평가 단계
Cross Validation 교차검증
Training Data Set 1/5
Training Data Set 2/5
Training Data Set 3/5
Training Data Set 4/5
Training Data Set 5/5
Training Data Set 2/5
Training Data Set 1/5
Training Data Set 3/5
Training Data Set 4/5
Training Data Set 5/5
…
Training Data Set 5/5
Training Data Set 1/5
Training Data Set 2/5
Training Data Set 4/5
Training Data Set 5/5
accuracy0 accuracy1 accuracy4
Final Accuracy = mean(accuracy0, accuracy1, …, accuracy4)
Test Data로 사용
Overfitting 판단에도 도움을 준다! Why?
12
18. Ensemble of classifier
18
• Random Forest (Ensemble learning)
• ex) SVM + Logistic Regression + Random Forest
여러 분류기를 사용하는데
더 많은 분류기가 예측한 값을 최종 분류값으로 내놓음.
Overfitting도 피하고 정확도도 높여보고!
26. Example: MNIST (kaggle)
[…, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
23, 210, 254, 253, 159, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, …]
784차원 공간을 생각해보자 :
Method 1: k-NN
Method 2: SVM
Method 3: Random Forest, etc..
784차원 공간에서 가까이 있는 좌표의 label은?
784차원 공간을 783차원 초평면으로 갈라서 분류해보면?
이 위치에 하얀 픽셀이 있고 저기엔 없으면?
어떤 방법이 가장 좋은가?
26
27. Example: MNIST (kaggle)
접근 2 - 이미지 프로세싱으로 Feature를 만들어내기
End point and junctions distribution
교차점, 끝점 갯수 등을
Feature로 이용함.
ex) 8은 교차점이 1개,
끝점은 0개
Feature Extraction
27
43. 사례 분석
• 스팸 메일 분류
• 필기체 인식
• 음성 인식
• 얼굴 인식
• 상품 추천
43
44. 스팸 메일 분류
접근 : Bayesian filtering
간단히 Spam / Not spam (Ham) 을 구분하는 문제
내용만으로 분류를 하는 접근
Pr(S|W) = 단어 W가 들어있을 때 스팸일 확률
Pr(W|S) = 스팸에 단어 W가 있을 확률
Pr(S) = 스팸 확률
Pr(W|H) = 햄에 단어 W가 있을 확률
Pr(H) = 햄 확률
스팸에서 W가 등장하는 횟수 / 스팸 총 단어 수
통계적으로 0.2
햄에서 W가 등장하는 횟수 / 햄 총 단어 수
통계적으로 0.8
44
45. 필기체 인식 (MNIST 문제를 어떻게 풀어봤나)
접근 1: PCA + k-NN
단순히 k-NN을 쓰면 시간이 많이 소요된다.
그렇다면 차원을 낮추자! - PCA
10차원으로 낮췄을 때 : 92.6%
33차원으로 낮췄을 때 : 97.3%
5 3 8 9
56차원으로 낮췄을 때 : 97.2%
45
46. 필기체 인식 (MNIST 문제를 어떻게 풀어봤나)
접근 2: CNN (Convolutional Neural Networks)
이건 다음에
46
47. 음성 인식
접근 : Neural Networks
47
MFCCs
Zero Crossing Rate
Spectral Centroid
…
등을 feature로 사용
이미지 픽셀을 쓰는거랑 비슷함
48. 얼굴 인식
접근 : SVM + Sliding Window
48
얼굴 데이터로만 학습
Window
이 영역이 얼굴인가? (분류)
50. 상품 추천
접근 2 : EM algorithm Clustering
50
Pr(P2|P1) = 상품 P1을 봤던 사람이 상품 P2를 볼 확률
Pr(P1|P2) = 상품 P2를 봤던 사람이 상품 P1을 볼 확률
Pr(P2) = P2를 볼 확률
Pr(P1) = P1을 볼 확률
Pr(P2|P1) = Pr(P1|P2) * Pr(P2) / Pr(P1)
있을 법한 상품 조합 찾아내기
51. 상품 추천
접근 3 : Apriori algorithm (Associative Rule Learning)
51
상품간 연관 규칙 발견하기
접근 4 : TF-IDF (Content-based filtering)
상품간 유사성 발견하기
…