CS/머신러닝19 혼자 공부하는 머신러닝 + 딥러닝 - Ch2 Ch2에서는 지도학습을 공부하고 데이터 전처리의 필요성에 대해 공부합니다. 지도학습은 훈련데이터와 정답데이터를 통해 학습하는 머신러닝 방법입니다. 반면 비지도학습은 따로 정답이 없고 입력데이터만을 사용해 학습합니다. 지도학습에 필요한 훈련데이터를 만드는 방법은 두가지가 있습니다. 1. 충분한 양의 데이터가 있는 경우 훈련데이터를 따로 마련한다. 2. 한정된 양의 데이터로 훈련하는 경우 입력 데이터의 일부를 훈련데이터와 테스트데이터로 나눈다. 데이터를 분리할 때는 적절히 섞어서 편향이 없게끔 해줘야 합니다. 예를 들어 Ch1에서 도미와 빙어 데이터를 합쳤었는데 만약 훈련데이터는 전부 도미만 있고 테스트데이터에는 빙어만 있다면 0%의 효율을 내게 되겠죠. 사이킷런의 train_test_split() 함수는 .. 2023. 1. 7. 혼자 공부하는 머신러닝 + 딥러닝 - Ch1 오늘부터 혼자 공부하는 머신러닝으로 공부하고 여기에 정리글을 쓰려고 합니다. 처음 공부하는 소재는 KNN 알고리즘을 이용한 생선 분류입니다. 우선 KNN 알고리즘이란 K-Nearest Neighbor 의 약자로, 가장 인접한 k개의 데이터를 토대로 새로운 값을 분류해주는 알고리즘입니다. 사실 이 방법은 model을 훈련시키는게 아니라, 학습한 모든 데이터를 저장하고 있다가 새로운 값이 들어오면 거리계산을 통해 k개중 비중이 높은걸 출력해주는 형식입니다. 거리를 계산할 땐, 맨해튼 거리나 유클리드 거리등 다양한 방법이 존재합니다. 또한 k 값 또한 우리가 적절히 정해줄 수 있습니다. 이 방법의 장점은 매우 간단하고 직관적입니다. 그리고 효율도 꽤나 잘 나옵니다. 하지만 새로운 데이터가 들어오면 모든 데이터.. 2023. 1. 4. 로지스틱 회귀 1. 로지스틱 회귀란 로지스틱 회귀는 회귀식을 통해 사실 이진분류를 하는 방법입니다. 예를 들어 학생들의 영어, 수학, 국어 성적등(feature)과 시험합격여부 0, 1(label)이 주어지면, 회귀식을 통해 값 \(x\) 를 찾아내면 그 값으로 분류를 진행하는 것입니다. 통계학에서 두가지 결과만 있을 때, 이항분포의 일종인 베르누이 분포를 사용합니다. 확률론적 방법을 통해 특정 확률이상이면 분류를 시켜주는 방식으로 진행합니다. 우선, 이를 위해 실수값 \(x\) 를 확률 \(p\) 로 만들어주는 절차가 필요합니다. 2. 활성화 함수 활성화함수는 선형회귀식으로 얻은 함수를 곡선형태의 꼴로 변환시켜주는 역할을 합니다. 활성화함수가 되기 위한 조건으로는 미분시 자기자신으로 표현가능하거나, 값이 정의역에서 .. 2022. 12. 20. 선형 회귀 - 경사 하강법 경사하강법(gradient descent)에 대해 정리해봅시다. 경사하강법은 이후 모델에서도 손실함수 MSE를 최적화하기 위한 방법으로 사용됩니다. 원리는 간단합니다. 경사하강법은 정확한 값을 한번에 구하는게 아니라 함수가 볼록하다는 점을 이용하여 계속해서 값을 업데이트해나가는 방식입니다. 즉, 경사하강법은 손실함수를 최소화하는 방향으로 파라미터를 업데이트하는 방식으로 작동합니다. 업데이트 방식은 학습률 \(\eta \) 에 대해, $$w=w-\eta \frac{\partial L}{\partial w} , b=b-\eta \frac{\partial L}{\partial b} $$ 를 반복해주면 됩니다. 미분방향의 역방향으로 갱신을 해줘야 볼록함수의 중앙으로 가게 되고, 거기에 학습률 곱해서 변화값의 증.. 2022. 12. 2. 이전 1 2 3 4 5 다음