목록machinelearning (15)
Koo's.Co
correlation을 이용하면 두 변수간의 선형관계를 확인할 수 있습니다. 회귀 분석을 이용하면 두 변수의 선형관계에 대해 좀 더 자세히 확인할 수 있습니다. 독립변수 x와 종속변수 y의 관계는 위와 같은 관계식으로 나타낼 수 있습니다. 이 때 엡실론은 모델이 고려하지 못한 오류를 의미합니다. 다음은 모델이 예측할 종속변수값을 나타냅니다. def predict(alpha: float, beta: float, x_i: float) -> float: return beta*x_i + alpha 실제값과 모델 예측값의 차이에 해당하는 오류는 다음과 같습니다. def error(alpha: float, beta: float, x_i: float, y_i: float) -> float: return predict..
1. 퍼셉트론(Perceptron) [ML] 퍼셉트론 (Perceptron) 1. 퍼셉트론(Perceptron) 퍼셉트론은 신경망의 기원이 되는 알고리즘입니다. 퍼셉트론의 구조를 배워야 신경망과 딥러닝의 아이디어를 이해할 수 있습니다. 퍼셉트론은 다수의 신호를 입력 받아 하 koosco.tistory.com 퍼셉트론에 대한 내용은 이전에 공부한 적이 있어 별도로 다시 정리하지 않았습니다. 퍼셉트론에는 1) XOR문제와 2) 은닉층 갱신 문제가 있습니다. 각각의 문제를 해결하기 위해 나온 방안이 1) 다층 퍼셉트론과 2) 오류 역전파 알고리즘입니다. 2. 다층 퍼셉트론(Multi-Layer Perceptron) [ML] 다층 퍼셉트론(multi-layer perceptron) 퍼셉트론은 하나의 선형 결정경..
1. 가장 훌륭한 예측선 - 선형회귀/로지스틱회귀 단순 선형 회귀(Simple Linear Regression): 하나의 독립변수를 이용해 종속변수를 설명 다중 선형 회귀(Multiple Linear Regression): 여러 개의 독립변수를 이용해 종속변수를 설명 단순 선형 회귀에서 데이터들의 특징을 담은 일차원 그래프를 위와 같이 표현 할 수 있습니다. 이 직선을 이용해 종속변수의 값을 계산하기 위해서는 기울기 a와 절편 b의 값을 적절히 구해야 합니다. 1) 최소 제곱법(Method of least squares) 최소 제곱법은 해석적인 방법으로 회귀선 방정식을 구하는 방법입니다. 반복적인 계산을 통해 파라미터를 갱신하는 gradient descent 방식과는 다르게 계산을 통해 파라미터값을 바로..
베이즈 정리는 다음과 같습니다. NaiveBayesClassifier는 베이즈 정리를 이용해 분류 문제를 해결하는 모델입니다. 베이즈 정리 (Bayes' theorem) koosco.tistory.com 베이즈 정리에 대한 내용은 이전에 포스팅한 내용을 참고하면 됩니다. 1. Spam Filter n개의 단어가 주어질 때, 각 단어들이 메시지에 포함되는 경우를 확률로 나타낼 수 있습니다. 여기서는 스팸 메일인지 구분하기 위해 메시지가 스팸인 사건을 S라 정의하겠습니다. i번째 단어가 각각 스팸 메시지와 햄 메시지에 포함될 확률을 위와 같이 나타낼 수 있습니다. 나이브 베이즈 분류기의 핵심은 각 요소(단어)들이 모두 독립이라는 점에 있습니다. 각각의 요소들이 모두 독립이라면 각 확률들의 곱으로 나타낼 수 ..
1. 신경망(Neural Network) 퍼셉트론을 사용하면 복잡한 함수도 표현할 수 있습니다. 하지만 앞서 구현한 Gate들처럼 가중치를 직접 설정해주어야 한다는 단점이 있습니다. 하지만 신경망은 데이터들로부터 가중치를 자동으로 학습하여 직접 가중치를 설정하지 않아도 적절한 매개변수값을 구할 수 있습니다. 신경망은 기본적으로 입력층(Input layer), 출력층(Output layer) 그리고 은닉층(Hidden layer)으로 구성됩니다. 입력층과 출력층은 외부에서 볼 수 있지만 은닉층은 외부에서 볼 수 없습니다. 위 그림은 가중치를 갖는 노드들이 2개이기 때문에 "2층 신경망"이라고 하는데 표기에 따라 3층 신경망이라고 하는 경우도 있습니다. 2. 활성화 함수(Activation function)..
퍼셉트론은 하나의 선형 결정경계를 갖습니다. 그렇기 때문에 XOR과 같이 비선형 결정 경계를 갖는 문제는 풀 수 없는 한계점이 있었습니다. 하지만 두 개 이상의 퍼셉트론을 사용하면 이러한 비선형 결정 경계를 갖는 문제도 풀 수 있게 됩니다. 위와 같이 두 개의 선형 결정 경계를 사용하면 XOR문제를 깔끔하게 해결할 수 있습니다. 실제로 XOR문제는 AND, NAND, OR Gate를 사용해서 풀 수 있습니다. A B Q 0 0 0 1 0 1 0 1 1 1 1 0 앞서 구현한 AND, NAND, OR Gate 함수를 호출해도 동일한 결과를 구할 수 있습니다. def XOR(x1, x2): s1 = NAND(x1, x2) s2 = OR(x1, x2) return AND(s1, s2) 이렇게 XOR은 두 개 ..
1. 퍼셉트론(Perceptron) 퍼셉트론은 신경망의 기원이 되는 알고리즘입니다. 퍼셉트론의 구조를 배워야 신경망과 딥러닝의 아이디어를 이해할 수 있습니다. 퍼셉트론은 다수의 신호를 입력 받아 하나의 신호를 출력하는 역할을 합니다. 이 때 퍼셉트론은 0 또는 1의 출력을 가질 수 있습니다. 위 그림에서 x1, x2, y는 뉴런(노드)라고 부르며, x1과 x2는 입력 신호, y는 출력 신호가 됩니다. 입력 신호가 다음 뉴런에 보내질 때는 일정한 가중치가 곱해집니다. 출력 신호는 입력 신호에 들어온 신호의 합이 일정한 값(역치, 임계값)을 넘는 경우에만 1을 출력합니다. 2. 퍼셉트론을 이용한 논리 회로의 표현 이 퍼셉트론을 사용하면 AND, OR, NAND와 같은 논리 게이트를 표현할 수 있습니다. 출력..
지난번에 회귀모형을 평가하는 지표에 대해 알아보았습니다. [ML] 회귀모형의 평가지표, MAE, MSE, RMSE, RSE, R^2 회귀모델을 평가하는 평가지표는 여러 가지가 있습니다. 1. MAE(Mean Absolute Error, 평균 절대 오차) 데이터의 단위와 동일하기 때문에 해석이 직관적이라는 장점이 있습니다. MSE에 비해 이상치의 영 koosco.tistory.com 분류모형을 평가할 때는 회귀모형에서의 MAE나 RMSE, R^2를 사용할 수 없기 때문에 혼동행렬(confusion matrix)을 이용한 별도의 지표를 사용해 모델을 평가하게 됩니다. 1. 혼동행렬(Confusion Matrix) confusion matrix는 모델의 성능 측정을 위해, 실제값과 측정값을 비교하기 위한 표를..