머신러닝 기초 9

딥러닝(DeepLearning) #8_pooling and others

안녕하세요. 문범우입니다. 지난 포스팅에서 CNN에 대해서 알아보았습니다.이번 포스팅에서는 이어서, CNN에서의 pooling과 나머지 것들에 대해서 알아보도록 하겠습니다. * 해당 포스트의 모든 내용은 김성훈 교수님의 '모두를 위한 딥러닝'을 바탕으로 제작되었습니다.관련한 상세 내용은 아래 링크를 참고해주세요.https://hunkim.github.io/ml/ 1. Pooling Convolution Neural Network의 전체적인 구조를 위의 그림과 같이 확인해보면, Convolution과 RELU가 붙어져 있으며 중간에 한번씩 POOL을 하게 됩니다. 이때 진행되는 POOL이라는 것이 무엇인가 알아보도록 하겠습니다. pooling이라는 것을 먼저 간단히 생각해본다면, sampling이라고 생각..

딥러닝(DeepLearning) #6_ Dropout and Ensemble

안녕하세요. 문범우입니다.이번 포스팅에서는 dropout과 model ensemble에 대해서 살펴보도록 하겠습니다. * 해당 포스트의 모든 내용은 김성훈 교수님의 '모두를 위한 딥러닝'을 바탕으로 제작되었습니다.관련한 상세 내용은 아래 링크를 참고해주세요.https://hunkim.github.io/ml/ 1. Dropout 우리가 dropout을 하는 이유는 바로 아래와 같은 overfitting 때문입니다. 우리가 과거에 알아봤던 것처럼, 훈련 data에 있어서는 100%의 accuracy를 내지만, 실제로 test data에 있어서는 높은 예측율을 내지 못하게 되는 현상이죠. 위와 같이, 파란색 그래프, training 에서는 에러율이 점점 낮아지지만, 실제로 빨간색 그래프처럼 test data를..

딥러닝(DeepLearning) #5_ Restricted Belief Machine & Xavier initialize

안녕하세요. 문범우입니다.이번에는 지난 포스팅에 이어서 딥러닝을 잘하는 방법 중 weight의 초기값을 설정하는 방법에 대해서 알아보도록 하겠습니다. * 해당 포스트의 모든 내용은 김성훈 교수님의 '모두를 위한 딥러닝'을 바탕으로 제작되었습니다.관련한 상세 내용은 아래 링크를 참고해주세요.https://hunkim.github.io/ml/ 1. RBM(Restricted Belief Machine) 우리가 지난 포스팅에서 위의 그림과 같은 Vanishing gradient 문제에 대해서 알아보았습니다.그리고 이 문제에 대해서는 Hilton 교수님께서는 4가지 이유를 꼬집었습니다. 위의 4가지 항목중 제일 아래에 있는 것은 우리가 지난 포스팅에서 sigmoid함수 대신, ReLU함수를 사용함으로써 해결할 ..

딥러닝(DeepLearning) #4_ ReLU::Rectified Linear Unit

안녕하세요. 문범우입니다.오늘은 ReLU(Rectified Linear Unit)에 대해서 알아보겠습니다. * 해당 포스트의 모든 내용은 김성훈 교수님의 '모두를 위한 딥러닝'을 바탕으로 제작되었습니다.관련한 상세 내용은 아래 링크를 참고해주세요.https://hunkim.github.io/ml/ 1. NN for XOR 우리가 지난 시간에 XOR문제를 위와 같은 모델로 하여 풀이를 진행해보았습니다.실제로 텐서플로우를 이용하여 구현해보기도 하였습니다.그때 각 유닛의 결과에 우리가 Sigmoid 함수를 붙여서 결과값이 0~1이내로 출력되게 했었습니다. 이러한 Sigmoid함수를 activation function 이라고 합니다.각 모델들에게 어떤 값을 보내게 될 때 일정값 이상이면 active되게 하고 그..

머신러닝(ML) #8_ Softmax classifier 의 cost 함수

안녕하세요. 이번 포스팅에서는 지난 포스팅에 이어 Softmax classifier의 cost 함수에 대해서 알아보도록 하겠습니다. * 해당 포스트의 모든 내용은 김성훈 교수님의 '모두를 위한 딥러닝'을 바탕으로 제작되었습니다.관련한 상세 내용은 아래 링크를 참고해주세요.https://hunkim.github.io/ml/ 1. Softmax classifier 우리가 지난 포스팅에서 학습한바와 같이, 위의 사진에서 오른쪽에 x 표가 되어있는 것보다는 제일좌측에 있는 하나의 행렬을 곱함으로써 하나의 벡터로써 결과가 나오게 됩니다. 즉 위와 같이 간단하게 생각해볼 수 있고, 빨간색 글씨 처럼 위에서 부터 a, b, c가 될 확률로 볼 수 있습니다.그런데 빨간색으로 나와있는 숫자보다, 우측 알파벳 옆에 쓰인 ..

머신러닝(ML) #7_ Multinomial classification의 개념

안녕하세요.이번 포스팅에서는 Multinomial classification의 개념에 대해 알아보도록 하겠습니다. * 해당 포스트의 모든 내용은 김성훈 교수님의 '모두를 위한 딥러닝'을 바탕으로 제작되었습니다.관련한 상세 내용은 아래 링크를 참고해주세요.https://hunkim.github.io/ml/ 1. Multinomial classification 이란? 앞으로 몇개의 포스팅에서 우리는 여러개의 클래스가 있을때 그것을 예측하는 Multinomial clssification, 그리고 그 중에서도 가장 많이 사용되는 softmax classification에 대해서 알아봅니다.먼저 Multinomial classification 이란 무엇일까요? 우리는 지난 포스팅을 통해 Logistic regre..

머신러닝(ML) #6_ Logistic Regression의 cost 함수 설명

안녕하세요.이번 포스팅에서는 지난 포스팅에 이어, Logistic Regression의 cost함수에 대해 알아보도록 하겠습니다. * 해당 포스트의 모든 내용은 김성훈 교수님의 '모두를 위한 딥러닝'을 바탕으로 제작되었습니다.관련한 상세 내용은 아래 링크를 참고해주세요.https://hunkim.github.io/ml/ 1. Logistic Regression의 Cost Function 우리가 지난 Linear Regression에서 Cost 함수에 대해서 이야기 해볼때는 아래와 같은 형태로 나왔습니다. 그래프를 보면 2차함수꼴로 최저점을 보다 쉽게 찾을 수 있었습니다. 그런데 지난 포스팅에서 알아보았듯이 Logistic Regression 에서는 Hypothesis가 다르게 세워졌습니다.그럼 Cost ..

머신러닝(ML) #4_ Multi-variable linear regression

안녕하세요.지난 포스팅에서는 single-variable linear regression에 대해서 알아보았습니다.이번 포스팅에서는 multi-variable linear regression에 대해서 알아보도록 하겠습니다. * 해당 포스트의 모든 내용은 김성훈 교수님의 '모두를 위한 딥러닝'을 바탕으로 제작되었습니다.관련한 상세 내용은 아래 링크를 참고해주세요.https://hunkim.github.io/ml/ 1. Linear Regression(선형 회귀) 먼저 지난 포스팅에서 학습했던 내용을 잠깐 살펴보도록 하겠습니다.지난 포스팅에서는 선형 회귀, Linear Regression을 위해서 Hypothesis와 Cost function, Gradient descent algorithm등에 대해서 알아보..

머신러닝(ML) #1_ 모두를 위한 딥러닝

안녕하세요. 문범우입니다.작년 초~중반기 부터 인공지능, 머신러닝에 대해 많은 관심을 가지고 이것저것 알아보며 최근에는 딥러닝과 관련된 서적하나를 구매하여 공부중에 있습니다.그리고 보다 깊은 학습을 위해 추가적으로 온라인에서 배포되고 있는 무료 강의를 찾게 되었는데요, 인공지능, 머신러닝을 공부하시는 분들은 꽤나 잘 아시더군요. 바로, 홍콩대학교에서 연구중이신 김성훈교수님의 강의입니다.머신러닝과 관련되서는 앤드류 응 교수님의 강의가 제일 유명하지만 아무래도 영어강의이다 보니 깊은 이해가 부족할 수도 있겠다 싶어서 먼저 한글강의를 찾게 되었습니다.앞으로 머신러닝에 대한 포스팅은 김성훈 교수님의 강의를 바탕으로 진행되니 관심 있으신 분들은 직접 강의를 들으셔도 좋을 것 같습니다.김성훈 교수님의 '모두를 위한..