https://hunkim.github.io/ml/Sung Kim 교수님의 모두를 위한 머신러닝/딥러닝을 정리한 것 Nerual Network NN 왜 쓸까?- data의 feature가 매우 많을 때 logistic regression으로는 성능이 떨어지거나(연산량↑), overfitting의 문제가 발생할 가능성이 커진다.- Backpropagation(Chain-rule)으로 계산량을 대폭 줄일 수 있기 때문에 NN을 사용한다. XOR문제 - 하나의 unit으로는 xor문제를 절대 풀 수 없다(수학적으로 증명되었다)- 각각의 weight와 bias에 대해 어떻게 학습에 어려움이 있다. - 우선 다음과 같이 두개의 unit으로 xor문제를 해결할 수 있다!- 이 두개의 unit을 Multinomial..
https://hunkim.github.io/ml/Sung Kim 교수님의 모두를 위한 머신러닝/딥러닝을 정리한 것Learning Rate - 하강 정도에 따른 적절한 Learning rate를 정하자! Data Preprocessing - data에 따라 그림처럼 gradient descent에서 차이가 생긴다.- 효과적으로 학습하기 위해서는 data 전처리가 중요하다.- 오른쪽 그림과 같이 data간의 차이가 클 경우 어떻게 처리를 해야할까? Normalize - machine learning의 성능을 높이기 위해서 normalize를 사용한다. Overfitting- machine learning의 가장 큰 문제점- 학습 데이터에만 딱 맞는 model- 실제로 사용해보면 잘 맞지 않는다. - 어떻게..
https://hunkim.github.io/ml/Sung Kim 교수님의 모두를 위한 머신러닝/딥러닝을 정리한 것 Linear RegressionMultinomial Classification - Multinomial classification은 여러개의 class로 이루어진 data를 classification하는 방법이다.- A, B, C를 각각 분리하기 위해 3단계를 거친다.- A인지 아닌지, B인지 아닌지, C인지 아닌지- 이를 행렬식으로 나타내면 다음과 같다. - 각각의 X와 w의 행렬곱을 통해 Y hat을 구한다.- 하지만 이렇게 독립적으로 구할경우 class의 수가 클수록 복잡하다.- 따라서 행렬의 성질을 이용하여 다음과 같이 Y hat을 쉽게 구할 수 있다. - Y hat을 구했지만 원하..
https://hunkim.github.io/ml/Sung Kim 교수님의 모두를 위한 머신러닝/딥러닝을 정리한 것 Logistic (Regression) Classification - classification algorithm 중에서 굉장히 정확도가 높다.- 실제 문제에서도 바로 적용해 볼 수 있다.- Neural Network과 Deep Learning을 이해하는데 중요한 역할 Classification- 둘 중 하나의 정해진 category 찾기ex)1. 스팸메일인지 아닌지2. 이전의 좋아요한 data로 학습해서 feed를 보여줄지 안보여줄지3. 신용카드를 도난당했을때 평소와 다른 소비패턴인지 아닌지 등등 공부 시간에 따른 pass / fail 에 관한 data에 대하여 Linear Regress..
https://hunkim.github.io/ml/Sung Kim 교수님의 모두를 위한 머신러닝/딥러닝을 정리한 것 Multivariable Linear Regression 기존의 Hypothesis와 Cost function 변수(x)가 여러개일때는 어떻게 해야할까? -> 변수를 끊임 없이 나열하는 방법은 불편하다. -> matrix를 이용하자! Matrix 표현 Matrix 사용시 장점- Multivariable의 경우 쉽게 처리 가능- instance가 많은 경우에도 n으로 쉽게 처리- 출력이 여러개인 경우에도 쉽게 처리
https://hunkim.github.io/ml/Sung Kim 교수님의 모두를 위한 머신러닝/딥러닝을 정리한 것 How to minimize cost Cost Function을 그래프로 나타내면 다음과 같다. 우리의 목적은 cost function을 최소화하는것! Gradient Descent Algorithm- cost function을 최소화하기 위해 이용할 수 있는 방법 중 하나- cost function 말고도 각종 optimization에 이용되는 일반적인 방법- minimize하는 w와 b를 구할 수 있는 algorithm algorithm 동작 방식- ① : 임의의 지점에서 시작- ② : w와 b를 수정하면서 cost를 줄인다.- ③ : 그 당시 경사도를 미분을 통해 계산- ④ : ① ~..
https://hunkim.github.io/ml/Sung Kim 교수님의 모두를 위한 머신러닝/딥러닝을 정리한 것Linear Regression Linear Regression- data의 분포를 분석하였을 때 선형그래프로 정의될 수 있는 문제ex) 학생이 공부를 많이 할 수록 성적이 높아진다.집의 크기가 클 수록 가격이 높아진다. Hypothesis - model을 수학적으로 표현한 것- 선의 모양은 W와 b에 따라 결정된다.- 어떤 선이 더 좋은 가설인지 찾아 낼 수 있어야 한다. Cost Function(Loss Function)- 가설과 실제 데이터가 얼마나 다른가를 나타내는 함수- Hypothesis의 정확성을 판단하기 위해 사용 - 거리를 비교해서 가까우면 좋은 것거리(차이) : H(x) -..
https://hunkim.github.io/ml/Sung Kim 교수님의 모두를 위한 머신러닝/딥러닝을 정리한 것Machine Learning Basics Explicit Programming - 사용자의 입력을 기반- 데이터를 읽어서 보여준다.- 많은 rule 때문에 제한적 Machine Learning- 스스로 학습해서 능력을 기르게 한다. 1. 지도학습(Supervised Learning)- data에 대한 label이 주어진 상태에서 학습방법 2. 비지도학습(Unsupervised Learning)- label이 주어지지 않는 상태에서 data를 이용해 스스로 학습하는 방법- data의 숨겨진 feature나 structure를 발견하는데 사용 Training Data Set1. data set..