반응형

2021/01/18 4

[Python] 머신러닝 기초-7 Ridge Regression 과 Lasso Regression을 통한 연습 / Ridge란? / Lasso란?

지난 시간에 이어 릿지회귀와 라쏘회귀를 공부해보도록 하자. 릿지회귀, 라쏘회귀란? 선형회귀 모델에 규제를 합쳐서 만든 모델 릿지 계수를 제곱한 값을 기준으로 규제 적용 라쏘 계수의 절대값을 기준으로 규제 적용 일반적으로는 릿지를 더 선호한다고한다. 1).릿지 릿지회귀를 적용하여 해당 모델의 정확도를 확인한다. 지난 시간에 -144로 테스트 세트의 정확도가 이상하게 나왔던것 기억해야한다. 상황 = 특성의 갯수(degree)를 5로 주었을때 훈련 세트 정확도는 99.999가 나왔는데, 테스트세트는 음수가 나왔었다. 이로써 많은 특성을 사용하여 테스트를 해도 문제없이(과대적합)되지않고 괜찮은 성능을 내고있는것을 확인 할 수있다. 릿지와 라쏘 모델을 사용할때 우리는 임의로 규제의 양을 조절할 수 있는데, 우리가..

[Python] 머신러닝 기초-6 다중회귀(Multiple Regression) 알고리즘을 통한 연습 / 다중회귀란?

비전공에 독학이라 접근성이 부족하지만... 간단하게 이해할 수 있도록 써놓으려고한다... 이전 시간 다항회귀에 이어 조금 더 복잡한 모델을 구현해보고자 한다. 이는 아직 우리가 개발한 모델이 부족함에 있어 더 많은 발전을 이룰 수 있도록 도와줄것이다.. 이때까지 공부했던것들의 흐름을 보면 당연히 3차원이 나올것이라고 예상했는데, 역시나 3차원이 나온다. 다중회귀란? 여러개의 특성을 이용한 선형회귀를 다중회귀라고 한다 쉽게 특성을 하나 이상 더 만들어서 선형회귀를 구현한 1차원 더 높아진 선형회귀이다. 예를들어 다항회귀는 y = ax²+bx+c로 y =무게 , x= 길이 두가지 특성만 사용했지만, 길이 x 무게라는 3번째 특성을 만들어내어 사용하는것이다. 우선 데이터를 가져올건데, Pandas를 이용하여 ..

[Python] 머신러닝 기초-5 선형회귀(Linear Regression) 알고리즘을 통한 연습 / 선형회귀란? 다항회귀란?

지금까지는 K-최근접 알고리즘을 통해 모델을 만들었고, 그 모델로 예측을 해보았다. 하지만 어느일정 길이를 넘어서면 예측되는 무게가 다 똑같이 나오는것을 봤을것이다. 이것은 가장 근접한 클래스의 평균을 내서 주는 최근접 알고리즘의 엄청난 단점이다. 이런점을 해결하기 위해 가장 보편적으로 사용하는것이 선형회귀 알고리즘이다. 선형회귀란? - 데이터를 가장 잘 표현할수 있는 직선을 구하는 알고리즘 우선 코드로 선형회귀 알고리즘을 한번 적용시켜 보자 1). 데이터 형변환 2). 선형회귀 알고리즘 사용하여 필요한 값을 구한다. 일차방정식 y = ax+b 여기서 선형회귀를 사용할때 종종 H(x) =Wx+b를 사용해서 표현했는데, 나도 이걸로 표현하겠다. Linear Resgression을 사용하면 그 객체 안에 W..

[Python] 머신러닝 기초-4 K-Neighbors (최근접)알고리즘을 통한 연습- 회귀

분류 : 샘플을 몇개의 클래스 중 한가지로 분류(확인 해내는것) 회귀 : 기존 데이터를 통해 임의의 데이터를 예측하는것 분류 문제를 통달했으니, 회귀 문제로 넘어가보자. 바나나의 길이에 따른 바나나의 무게를 예측하는 코드를 한번 작성해보자 1). 바나나 길이와 무게 데이터를 정의한다. 그래프로 확인 2). 사이킷런을 사용하려면 데이터의 형태가 2차원이어야함으로, 우리가 가지고있는 데이터를 2차원 데이터로 변환한다. Train set = 42개의 데이터 Test set = 14개의 데이터 3). K-최근접알고리즘 적용 및 훈련 => 정확도 확인 테스트세트와 훈련세트에대한 정확도가 아주 높게 나왔다. 하지만 회귀에서는 분류와는 다르게 정확한 예측 숫자를 맞추는것은 불가능 하기 때문에, 결정계수라는 것으로 평..

반응형