본문 바로가기
728x90
반응형

data mining37

Dummy coding, Effect Coding 범주형 변수(categorical variables)를 regression model의 input으로 사용할 때 2가지 방법을 고려할 수 있다.예시로 4개의 범주(초등, 중등, 고등, 초등교육 미만)를 사용한다. $G = \{ G_1,\ G_2,\ G_3,\ G_4 \}$$G_1$: Primary$G_2$: Secondary$G_3$: Post-secondary$G_4$: Less than primaryDummy coding4개의 범주에 대하여 해당 범주면 1, 아니면 0으로 할당하는 방법을 생각할 수 있다.이때 마지막 범주의 경우 모두 0으로 표현하면 $k$개의 범주에 대하여 길이가 $(k-1)$개의 더미만 필요하다. Note: One-hot encoding은 $k$개의 범주를 $k$개의 더미 변수로 .. 2023. 5. 15.
[Data Science] Logistic Regression Class Probability Estimation많은 task중에서 어떤 instance가 주어졌을 때 어떤 class에 해당할지 예측하고 싶다.예를 들어 fraud detection은 baking이나 commerce에서 중요한 이슈이다.다행히도, linear model을 이용하여 binary class일 확률을 예측할 수 있다. \[ f(\mathbf{x}) = w_0 + w_1 x_1 + \cdots + w_n x_n \]그러나 우리가 예측할 class일 확률은 $[0, 1]$인데, $f(\mathbf{x})$의 범위는 $(-\infty, \infty)$이다. 이를 해결하기 위해 log-odds를 도입한다.odd는 likelihood of an event로, 일어날 확률와 일어나지 않는 확률의 비이.. 2023. 5. 14.
[Ensemble] Random Forests in Python (scikit-learn) Setupbagging과 random forest를 실습하기 위해 필요한 라이브러리를 import하자.# To support both python 2 and python 3from __future__ import division, print_function, unicode_literals# Common importsimport numpy as npimport os# to make this notebook's output stable across runsnp.random.seed(42)# To plot pretty figures%matplotlib inlineimport matplotlib as mplimport matplotlib.pyplot as pltfrom matplotlib.colors impor.. 2023. 5. 13.
[Ensemble] Random Forests Random ForestsRandom Forests는 Bagging algorithm의 대표적인 방법이다.전체 데이터가 $N \times M$ 행렬이라 하자. ($N$은 instance 개수, $M$은 feature 개수)그리고 복원추출(random sampleing with replacement)을 이용하여 $N$개의 sample을 추출하여 학습데이터셋을 만든다.각 복원추출된 데이터 $D_i$마다 decision tree $C_i$를 학습한다. (각 모델이 사용하는 feature 수는 아래 Training을 참고)Note: Regression에서는 averaging, Classification에서는 max-voting을 이용한다.Bootstrap Sample$\mathcal{D} = \{ X_1, \d.. 2023. 5. 12.
[Data Science] Linear Regression \[ f(\mathbf{x}) = w_0 + w_1 x_1 + w_2 x_2 + \dots \]위의 형태로 선형 데이터를 fitting하는 모델을 선형회귀(linear regression)이라 한다. 또는 아래와 같이 표현하기도 한다.\[ y = \beta_0 + \beta_1 x_1 + \cdots + \epsilon \] objective functionminimize the squared error squared error는 large error에 대하여 더 penalize한다.그러나 data sensitive하다는 단점이 있다. (erroneous data, outliers, etc.) Least Squares Method (최소제곱법, 최소자승법)least square criterion을 이용하.. 2023. 5. 12.
[Machine Learning] SVM in Python (2) - Margin, Regularization, Non-linear SVM, Kernel Predefined visualization function간단한 시각화를 위한 함수를 정의했다.def plot_svc_decision_boundary(svm_clf, xmin, xmax): w = svm_clf.coef_[0] b = svm_clf.intercept_[0] # At the decision boundary, w0*x0 + w1*x1 + b = 0 # => x1 = -w0/w1 * x0 - b/w1 x0 = np.linspace(xmin, xmax, 200) decision_boundary = -w[0]/w[1] * x0 - b/w[1] margin = 1/w[1] gutter_up = decision_boundary + margin gutt.. 2023. 5. 11.
728x90
반응형