머신러닝
-
Logistic Regression 정리머신러닝 2021. 10. 12. 11:06
로지스틱 회귀분석(Logistic Regression) 이란 데이터가 어떤 범주에 속할 확률을 0에서 1 사이의 값으로 예측하고 그 확률에 따라 가능성이 더 높은 범주에 속하는 것으로 분류해 주는 지도 학습 알고리즘입니다. 쉽게 말하면, 선형회귀분석과 비슷한데 Y값이 확률로 되어 있기 때문에 하한, 상한이 [0, 1] 사이로 정해져 있습니다. 그리고 특정 threshold 값을 기준으로 삼아서 예측된 확률 값이 threshold 이상인 것과 미만인 것으로 분류를 하는 식입니다. 즉 1개 이상의 독립변수가 있을 때 이를 이용하여 데이터가 2개의 범주 중 하나에 속하도록 결정하는 이진 분류(binary classification) 문제를 풀 때 로지스틱 회귀분석을 많이 사용합니다. 로지스틱 회귀식은 다음과 ..
-
Logistic Regression [coursera 강의 정리]머신러닝 2021. 10. 5. 01:36
분류 문제 분류 문제는 정답이 0 또는 1 두개의 문제로 볼 수 있다. 선형회귀를 사용해서 분류문제를 해결하려고 하면 대부분의 상황에서 정상적으로 동작하지 않는다. 그래서 Logistic Regression을 사용하는데 분류문제인데 Regression이 붙는 이유는 역사적(?)으로 그렇게 불렸기 때문이라고 한다. 우선 h(x)는 그대로 선형회귀에서 사용했던 모델을 그대로 사용한다. (1차결합 식) 다만 g(z)라는 형태로 h(x)를 새롭게 사용하게되는데 g(z)는 sigmoid function이라고도 한다. Logisitic Function의 모양은 위의 그림과 같다. 결과값이 0일때 0.5가 되고 작으면 0으로 수렴하고 크면 1로 수렴한다. 쉽게 말하면 선형회귀의 값을 0~1사이의 값으로 만들고 싶고 ..
-
Normal eqation coursera 강의 정리머신러닝 2021. 10. 4. 22:54
앞에서는 선형회귀의 cost function을 통해 theta를 찾는 것에 대해 설명했다. 이번 강의에서는 gradient decent를 사용하지 않고 theta를 찾는 방법인 normal eqation에 대해 설명한다. m개의 샘플과 n개의 feature가 있을때 m x (n+1)의 행렬로 나타낼수 있다. 가설함수 h(x)는 같은 식으로 나타낼 수 있다. 이를 행렬식으로 나타낸다면 다음과 같다. theta에 전치시킨 벡터에 X벡터를 곱한것으로 나타낼 수 있다. 이전에는 theta를 찾기 위해 비용함수를 미분하여 0이되는 theta를 찾았지만 역행렬을 이용한다면 쉽게 미분을 하지않고 쉽게 찾을 수 있다. (X'X)의 역행렬만 구하면 theta를 바로 구할 수 있게 된다. gradient decent방법과..
-
Linear regressor (선형회귀) Coursera 강의머신러닝 2021. 9. 27. 21:21
선형회귀 개요 입력데이터 x, 결과 값 y가 주어졌을때 분포되어있는 값들을 직선으로 회귀 시키는 것이다. h(x) 가설 함수라고 한다. 일차식 y = ax + b의 형태와 똑같다. 주어진 데이터 x,y를 통해 최적의 theta1, theta2를 찾는것을 의미한다. 최적의 theta1, theta2는 어떻게 찾아야할까? 손실함수를 통해 찾을 수 있다. 비용함수(Cost function) 최적의 파라미터를 찾기 위해 비용함수를 사용한다. 오른 쪽 그림처럼 데이터가 있을때 어떤 기울기와 절편을 가진 직선이 최적의 선형회귀 함수라고 할 수 있을까? 당연하게도 실제 값과의 차이가 가장 적은 함수가 최적이라고 볼 수 있다. 그렇다면 그 최적을 찾기위해서는 우선 예측한 회귀 함수와 실제 데이터의 차이를 계산하는 비용..