반응형

여러가지공부/머신러닝(Machine Learning) 34

[머신러닝]SVM(Support Vector Machines)이란? 예제와 수식풀이

목차 SVM(Support Vector Machines)이란? SVM이란 간단하게 Dicision Boundary를 만들어주는 것을 의미 합니다. Margin Maximal Margin Classifier Training Data와 Boundary 사이 가장 짧은 거리를 Margin이라고 합니다. 위 그림에서 파란색 화살표를 의미 합니다. 양쪽의 파란색 화살표의 길이가 동일할 때 마진(Margin)의 크기가 가장 큽니다. 이를 Maximal Margin Classifier라고 합니다. 녹색선은 아래와 같이 수식으로 표현될 수 있습니다. 결국 두 벡터의 내적(Dot Product)식이 됩니다. W벡터에 정사영되는 크기가 C로 일정한 x 벡터는 녹색 점선을 가리키는 벡터가 됩니다. 최종적으로 그림3의 노란색..

[머신러닝]Correlation이란? Covariance 차이, 수식, 사용 목적(피어슨 상관관계)

목차 피어슨 상관관계(Pearson's Correlation)이란? 수식(Equation) 앞서 포스트에서 공분산(Covariance)에 대해 설명하였습니다(https://scribblinganything.tistory.com/714). 공분산의 특성은 아래와 같았습니다. 1. 공분산을 통해서 Postive, Negative, No trend의 관계를 확인할 수 있다. 2. 공분산의 결과 값 Cov[X,Y]의 크기를 통해서 공분산 정도가 크다라고 판단할 수는 없다. 3. 공분산 자체의 의미는 중요하지 않고 Correlation을 계산하기 위한 단계로 사용된다. 위 특성 처럼 Covariance와 두 데이터 간의 관계를 해석하는데 어려움이 있어서 Correlation을 사용합니다. Correlation의 ..

[머신러닝] 공분산(Covariance)란? 특징 및 사용 목적

목차 [머신러닝] Covariance란? 그림1과 같이 한반에 학생에 대한 몸무게에 대한 샘플 값들을 위와 같이 가져왔다고 가정하겠습니다. 이때 평균을 x에 바로 표기된 점이라고 하면 샘플의 분산(Variance)는 아래와 같이 구할 수 있습니다. 분산이란 결국 평균 값에서 어느정도 벗어났는지를 계산하는 것입니다. 샘플의 분산 수식이 위와 같이 나오는 이유는 아래 링크에 자세하게 설명하였으니 참조하시길 바랍니다(https://scribblinganything.tistory.com/687). 이번에는 동일 학생으로 부터 키를 측정했다고 생각해보겠습니다. 이때 몸무게와 키의 측정 값으로 부터 유의미한 분석값이 있지 않을까 하는 고민에서 발생한 개념이 공분산(Covariance)입니다. 공분산은 수식1과 같이..

[머신러닝] 랜덤포레스트란? 쉬운예제로 이해하기(Random Forest, Bagging, Bootstrap)

목차 랜덤포레스트(Random Forest)란? Random Forest 는 Forest의 의미가 주듯이 트리를 모은 숲을 의미 합니다. 트리의 의미에 대해 알고 싶다면 아래 블로그 글부터 순차적으로 확인하시길 바랍니다(https://scribblinganything.tistory.com/709). 랜덤 포레스트를 사용하는 목적은 트리의 특성에 있습니다. 트리는 Training Data에서 높은 정확도(Accuracy)를 가지지만 Testing Data에서는 정확도가 떨어집니다(Inaccuracy). 랜덤포레스트는 이러한 트리들을 랜덤하게 형성해서 정확도(Accuracy)를 높이는 목적으로 사용됩니다. 랜덤포레스트(Random Forest) 모델 생성 테이블1은 데이터셋으로 과자, 채소, 피자를 하루에 ..

[머신러닝]Regression Tree 가지치기(Prune) 예제로 쉽게 이해하기(Cost Complexity/Weakest Link Prunning)

목차 Regression Tree 가지치기란? 앞서 회기형 트리에 대해서 배워보았습니다(https://scribblinganything.tistory.com/711). 회기형 트리(Regression Tree)를 만들때 모든 Training Data에 대해 세분화 해서 Node를 만들어서 분류를 하게 되면 Overfitting이 발생한다고 하였습니다. 이렇게 만들어진 트리 모델을 Test Data에 대입해 보면 Overfitting에서 RSS 값이 높게 나올 수 있습니다. 즉, Overfitting에 의해 Variance가 높아지는 것입니다. 그림1과 같이 하루 약 섭취에 대한 효과의 데이터를 통해 회귀 트리(Regression Tree)를 오른쪽과 같이 만들 수 있습니다. 만드는 방법은 앞전 포스트를 ..

[머신러닝] Regression Tree란? 예제로 쉽게 이해하기

목차 Regression Tree란? 그림1은 약 하루 섭취 정량이 100%일 경우 섭취량에 따른 효과를 그래프로 그린 것입니다. 기울기와 절편 두 개의 베타(Beta) 파라미터로 표현하는 선형 회기식(Linear Regression)으로 위 그래프를 예측하기 힘듭니다. 그래서 사용하는 방식이 Regression Tree 입니다. Tree 방식에 대한 이해가 부족하면 Regression Tree 를 이해하기 힘드므로 Decision Tree(https://scribblinganything.tistory.com/709) 글을 먼저 보고 오시길 바랍니다. Classification Tree와 회기 트리(Regression Tree) 차이 두 트리 구조의 가장 큰 차이는 Leaf Node에 의해 결정됩니다. ..

[Classification] Decision Tree 예제 설명 #2 (노드 순서 정하기)

목차 앞 시간 포스트(https://scribblinganything.tistory.com/709)에 이어서 이번에는 나이(Numeric value)에 대한 지니 불순도(Gini Impurity)를 계산해보겠습니다. Decision Tree : Gini Impurity 예제로 알아보기 나이의 지니 불순도(Gini Impurity)를 구하기 위해 나이순으로 테이블을 정렬합니다. 위 테이블과 같이 7에서 83으로 작은 수에서 큰수로 정렬합니다. 다음으로 위와 같이 나이들의 평균 값을 구해줍니다. 다음으로 그림1과 같이 평균을 경계로 수식1을 적용해서 지니 불순도(Gini Impurity)를 구합니다. "나이

[Classification] Decision Tree 예제 설명 #1 (Gini Impurity)

목차 Decision Tree란? Decision Tree란 위 그림과 같이 배고픔 Statement을 통해서 Decision을 진행합니다. 이때 Statement의 True와 False에 따라 다음 행동을 결정합니다. Statement True / False 위와 같이 Decision Tree의 결과가 카테고리로 결정 되면 Classification Tree라고 합니다. 결과가 밥을 몇 그릇 먹을지와 같은 숫자의 형태의 경우 이를 Regression Tree라고 합니다. Classification Tree Regression Tree 결과를 카테고리와 숫자를 섞은 형태의 Tree 사용도 상관 없습니다. 위와 같은 트리의 특징은 아래와 같습니다. 1. Numeric Threhold는 다르게 설정 가능 2..

SGD, BGD, mini BGD란? 차이를 예제로 쉽게 이해하기(Stochastic Gradient Descent, Batch, Epoch, Iteration)

목차 SGD란?(Stochastic Gradient Descent) SGD(Stochastic Gradient Descent)는 머신 러닝에서 가장 많이 사용되는 최적화 알고리즘 중 하나입니다. 이 알고리즘은 모델의 파라미터(Parameter)를 조정하여 손실 함수 값이 가장 적게나오는 지점을 찾아서 그때의 파라미터를 사용해서 모델을 만들어 냅니다. SGD의 특징은 전체 데이터셋을 한 번에 학습하는 대신 데이터셋을 무작위로 섞은 후 일정 크기 데이터 포인트에 대해 모델을 학습시킵니다. 이렇게 하면 학습이 더욱 빠르게 수렴하고, 더욱 미세한 변화도 파악할 수 있습니다. 여기서 중요한 용어 3가지가 나옵니다. Batch-Size(배치 사이즈) 위 그림에서 녹색에 해당하는 부분입니다. SGD에서 데이터를 처리..

로지스틱 회기 Gradient 수식 풀이(Logistic Regression, Equation)

목차 로지스틱 회기 Gradient 수식 풀이: 로지스틱 Logistic Regression은 위와 같이 시그모이드(Sigmoid) 함수 형태를 따릅니다. 수식은 다음과 같습니다. 입력 값이 많아지면 아래 수식2와 같이 표현 될 수 있습니다. p(x)는 확률 값으로 0~1 사이로 표현 될 수 있습니다. 로지스틱 회기 Gradient 수식 풀이: Cost Function & Gradient 확률값의 Cost Function은 CE(Cross Entropy)로 표현 합니다. 엔트로피의 개념은 아래 링크를 참조하시길 바랍니다(https://scribblinganything.tistory.com/700). 크로스 엔트로피는 기존의 엔트로피에 자신의 예측치를 넣은 값으로 예측치와 실제 값이 맞을 확률이 높아 질수..

반응형