728x90
반응형

데이터사이언스/머신러닝 8

머신러닝 공부 8 - 분류 문제

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 분류문제 X를 입력데이터, Y를 출력이라고 할 때, Y가 이산의 값인 문제를 분류문제라고 한다. 다음과 같은 예제들이 있다: 이메일이 스팸인지 아닌지 분류 온라인 거래가 사기인지 아닌지 분류 종양이 악성인지 양성인지 분류 이런 분류문제에서는 y값이 1이면 Positive, 0 이면 Negative로 분류하게 된다. 유방암예제) 악성종양예제를 살펴보자 위 데이터셋에 대한 출력값은 0/1로 나뉜다. 이런 데이터셋에서는, 회귀문제와 같이 데이터셋과 알맞는 직선을 그리면 안된다. 이런 문제를 푸는 방법은, 어떠한 임계값..

머신러닝 공부 7 - 정규방정식

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 정규방정식 정규방정식 이란 특정 선형 문제에서 파라미터값인 θ를 더 쉽게 풀 수 있게 만들어주는 방법이다. 지금까지의 경사하강법에서는, Global Minimum을 찾기 위해 많은 스텝들을 밟아야 했다. 하지만 정규방정식은 이것을 분석적으로 풀 수 있게 해준다. 경사하강법의 많은 반복을 하기보다, 분석적으로 θ값의 해를 구하면 한번에 구할 수 있다는 말이다. 예제) 변수가 많지 않은 아래 2차 방정식 수식을 보자. 위의 수식을 minimize하려면 미분 값을 구한 다음, =0을 하고 θ로 풀면 된다. 하지만 많은..

머신러닝 공부 6 - 경사하강법 트릭

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 경사하강법이 더 좋은 성능을 내기 위해서 취하는 몇가지 트릭이 있다. 특성 스케일링 특성 스케일링이란, 여러 특성이 있는 문제에서, 여러 특성들이 비슷한 스케일에 있게 만들어 주는 기술이다. 여러 특성을 비슷한 스케일로 맞춰준다면, 경사하강법이 더 빠르게 끝날 수 있다. 예제) 특성 $x_{1}$과 $x_{2}$가 있다. $x_{1}$ = 집의 크기 (0 - 2000 feet^2) $x_{2}$ = 방의 수 (1 - 5) 이전 강의에서 위와 같은 그래프를 기억할것이다. 만약 특성1과 특성2의 스케일이 차이가 많이..

머신러닝 공부 5 - 다중 선형 회귀

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 다중 선형 회귀 기존의 선형회귀에서는 하나의 입력 x값과 예측값 y값이 존재했다. 집값 예측 예제로 다시 돌아가보자. 현실 세계의 문제에서는 집의 크기만이 집값을 결정하지 않는다. 아래의 표를 보면, 집값은 크기 외에도, 방의 숫자, 층의 숫자, 연식 등의 정보들이 모두 가격에 영향을 줄 수 있다는 것을 보여준다. 앞선 포스팅에서 이야기 하였듯이, 이런 여러 변수들을 $x_{1}, x_{2}, x_{3}$와 같은 방식으로 표기하도록 하겠다. 몇가지 변수들을 더 정의해보면: n은 특성의 갯수를 의미한다. 위의 예제..

머신러닝 공부 4 - 경사하강법

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 문제설정 J라는 함수가 있다고 하자, 우리는 이 함수를 minimize하는 알고리즘을 만들고자 한다. 먼저 θ0 과 θ1에 초기값 을 설정한다 그리고 θ0 과 θ1 가 minimum에 닿을 때 까지 J( θ0, θ1)를 감소시키고, θ0 과 θ1값을 갱신한다. 경사하강법 과정 설명 이 함수를 minimize하고자 한다고 하자. 먼저 θ0 과 θ1에 초기값 을 설정하고 시작한다. 가장 위의 그래프의 점이 θ0 과 θ1 의초기값이고, 내가 거기에 서있다고 가정해보자. 여러 방향을 살핀 뒤 한발을 밑으로 딛고 내려간다..

머신러닝 공부 3 - 비용함수

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 비용함수 다음과 같은 학습데이터가 있고, 가설함수가 있다. 이 때, θ는 파라미터, 즉 매개변수라고 한다. 이 매개변수들은 어떻게 결정될까? 가설함수 h0(x) = θ0 + θ1x 에 대해서 다음의 값들을 대입했을때: h(x) = 1.5가 된고, 가로의 직선이 된다. 같은 가설함수에 대해서 다음의 값들을 대입했을 때: h(x) = 0.5x가 되고, 대각선의 직선이 된다. 선형회귀 선형회귀는 다음과 같은 데이터에 가장 알맞는 직선, 즉 θ0 과 θ1 를 찾아내는 것이다. 이 때 이 직선은 학습데이터 (x,y)에 대..

머신러닝 공부 2 - 단일변수 선형회귀

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 복습 지도학습이란, 데이터셋에 대한 "정답" 즉 x값(혹은 여러 x값들, x1 x2 x3 …)에 대한 y값이 주어지고, 그 데이터셋을 학습하는 것이다. 회귀문제 연속적인 데이터에 대해서, 새로운 데이터 (x값)이 들어왔을 때, 실제 값(y값)을 예측하는 문제 집값예측 예제) 다음은 오레간주 포트랜드의 집값 데이터이다. X축에는 집의 사이즈가, Y축에는 집의 가격이 $1000 단위로 나와있다. 학습데이터 지도학습에서는 학습데이터, 즉 Training data가 주어진다. 이 문제에서의 Training data는 실..

머신러닝 공부 1 - Intro, 지도학습, 비지도학습

머신러닝 본 포스팅은 Andrew Ng교수의 Machine Learning 코세라 강좌를 정리한 내용입니다. https://www.coursera.org/learn/machine-learning 머신러닝이란? 머신러닝 실무자들 사이에서도 머신러닝의 정의가 무엇인가에 대해 의견이 분분하다. Arthur Samuel의 정의: 컴퓨터가 단순히 명시적으로 프로그램 되지 않고도 학습할 수 있게 하는 분야. Tom Mitchell의 정의: 어떠한 태스크 T에 대하여, 경험 E를 성능 P로 배우는 프로그램, T에 대한 성능 P가 E를 개선시킨다. 스팸분류 예제) 사용자가 이메일이 스팸인지 아닌지 판별하는 것을 지켜보는 프로그램이 있다고 하자, 이 프로그램은 사용자의 행동에 따라 스팸을 더 잘 필터 할 수 있도록 학습..

728x90
반응형