본문 바로가기

B/Mechine Learning

(5)
파이썬 matplot 그래프 한글 깨짐 다음과 같이 한글이 네모네모로 나올때 무슨 문제인지 찾아보다 폰트매니저로 해결하던데 나는 별 거 다 해봤는데 안되서 포기하다가 찾다가를 몇번 반복하다가 해결해서 적어둔다. 예시로 그려보면서. import numpy as np import random x = np.linspace(1, 20, 20) y = random.sample( range(0,100) ,20) 이렇게 x, y 값을 대충 주고 matplotlib만 import해서 plot해주면 import matplotlib.pyplot as plt plt.plot(x, y) plt.title('샘플') 해보면 알겠지만 영어는 잘 나오고 한글만 깨지기에, 결국 한국어가 지원이 안되고 있다는 뜻 해결해보자. from matplotlib import fon..
[ML]로지스틱 회귀에서 회귀계수(가중치)의 이해 로지스틱 회귀로 이항분류를 하는데, 이 안의 가중치(회귀계수)에 대한 이해가 부족하여 골머리를 앓았다. 생각난 김에 주피터를 챙겨 포스팅 사실 포스팅하면서 느꼈는데, 내가 가중치라고 생각했던 것이 결국 회귀계수였다. 내가 아직 회귀계수와 로지스틱회귀 학습구조에 대한 이해가 모자라구나, 싶었다. 갈길이 멀었다.. 위와 같이 로지스틱 함수를 보면, 회귀계수에 대한 직관적인 해석이 어렵다는 것을 느낀다. 기존의 단순선형회귀등에서는 종속변수 y값에 대해 회귀계수와 x가 선형결합으로 이루어져있어 회귀계수에 대한 이해가 직관적으로 가능했는데, 위의 식에서는 이것을 또 비선형함수(시그모이드)에 넣은 값이기 때문에 회귀계수에 대한 해석이 굉장히 불편해진다. 로지스틱을 이해하기 위해 가장 좋은 방법은 승산의 개념을 도입..
[ML] 의사결정나무모델(Decision Tree) 개념정리 의사결정나무에 대해서 간단히 정리해보자! 결정트리는 분류와 회귀예측이 모두 가능한 CART기반 알고리즘이고, 아마 ML을 배울때 기초 선형대수나 통계을 제외하면 처음으로 접하는 기계학습의 예측모델일것이다. 솔직히 처음 배울때는 쉽다고 생각했는데, Decision Tree(이하 DT라고 칭하겠음)는 이후에 나오는 배깅, 부스팅, 스태킹 등등 여러 CART기반 알고리즘의 토대가 되는 내용이라 베이스가 흔들리니 이후에 것들을 이해할때 조금 찝찝한 부분이 있었다. 이번 기회에 강의를 들으며 정리할 기회가 생겨 좋았다. 본 글은 고려대학교 김성범 교수님의 유튜브 강의 의사결정나무모델 을 듣고 정리한 내용임을 밝힘니다. 먼저 의사결정나무모델은 데이터에 있는 패턴을 변수의 조합을 나무형태로 꾸려서 예측/분류하겠다는 ..
[ML] 랜덤 포레스트(Random Forest) 모델 - ( 배깅 , 부트스트랩 , random subspace) 랜덤포레스트(Random Forest)는 앙상블 중 배깅의 대표적인 방법으로, Decision Tree에서의 overfitting의 위험을 줄일 수 있는 해결 방안으로 알려졌다. 그렇다면 먼저 앙상블은 무엇이고, 배깅은 무엇인지 차근차근 알아보면서 '랜덤 포레스트'에 대해서 이해해보자. 앙상블이란? 앙상블(Ensemble)은 프랑스어로 을 의미한다. '앙상블'이라는 이야기만 들었을때 무엇이 떠오르는가? 나는 교수님 말씀대로 오케스트라가 생각이 났다. 바이올린, 피아노, 첼로, 콘트라베이스 등 단원들이 각자의 악기를 가지고 모여 연주를 했을때 전체적인 어울림의 효과를 주는 것. 마찬가지로 머신러닝에서도 앙상블은 이와 비슷한 '조화'을 만들어낸다. 즉, 한개의 모델을 쓰는 것이 아니라 여러가지의 Base모델..
사이킷런(scikit-learn)의 기반 프레임워크(FrameWork) 사이킷런은 파이썬 머신러닝 라이브러리 중 가장 많이 사용되는 라이브러리입니다. 최근에는 텐서플로, 케라스 등 딥러닝 전문 라이브러리가 뜨고 있는 추세이지만, 여전히 사이킷런은 파이썬 ML의 대표적인 라이브러리로 자리잡고 있습니다. 지도학습의 두 축인 분류(Classification)와 회귀(regression)의 다양한 알고리즘을 사이킷런 클래스 fit()과 predict()로 간단하게 학습과 예측을 할 수 있습니다. 분류 알고리즘으로는 classifier, 회귀 알고리즘으로는 regressor로 지칭하고, 이 두가지를 합쳐서 Estimator 클래스라고 부릅니다. 즉, 지도학습의 모든 알고리즘을 구현한 클래스를 통칭하여 estimator라고 부릅니다. 이 클래스 내부에서 fit()과 predict()를..