본문 바로가기

AIFEEL

[사이킷런] 머신러닝 알고리즘

머신러닝의 알고리즘 종류는 크게 3가지로 나눌 수 있음

  • 지도학습 (Supervised Learning)
  • 비지도학습 (Unsupervised Learning)
  • 강화학습 (Reinforcement Learning)

위 3가지 카테고리는 상황이나 구현하고자 하는 Application에 따라 합쳐서 사용될 수도 있음. 경우에 따라 지도학습으로 학습을 진행하다 차원과 특징(Feature)의 수가 너무 많아지면 비지도 학습으로 전환하기도 함.

 

보통 라벨(정답)의 존재 유무에 따라 머신러닝을 지도학습과 비지도학습으로 나눔.

 

데이터가 매우 복잡하다면 차원을 축소하기도 하고 만약 주요한 성분이 있다면 주성분 분석을 적용하기도 함.

 

또한, 데이터의 종류에 따라 같은 회귀라도 선형회귀는 수치형 데이터(연속적인 데이터)를 예측하는 데 사용된다면, 로지스틱 회귀는 분류(엄밀히 말하면 이진분류)에 사용됨.

 

 


 

지도학습은 크게 3가지 범주에서 활용됨.

분류(Classification) : 예측해야할 데이터가 범주형(categorical) 변수일때 분류 라고 함
회귀(Regression) : 예측해야할 데이터가 연속적인 값 일때 회귀 라고 함
예측(Forecasting) : 과거 및 현재 데이터를 기반으로 미래를 예측하는 과정 예를 들어 올해와 전년도 매출을 기반으로 내년도 매출을 추산하는 것.

 

강화학습 아래 링크 참고!

https://github.com/reinforcement-learning-kr

 

Reinforcement Learning KR

Reinforcement Learning KR has 20 repositories available. Follow their code on GitHub.

github.com

 


사이킷런이란?

 

사이킷런은 파이썬 기반 머신러닝 라이브러리. 따라서 사이킷런은 다음과 같은 파이썬과 파이썬 라이브러리에 의존성을 가짐. Scikit-Learn 0.20까지는 Python 2.7과 Python 3.4에 동작하였습니다. 현재 최신 버전인 0.24를 사용하기 위해선 다음과 같은 사양이 요구됨.

  • Python (>= 3.6)
  • NumPy (>= 1.13.3)
  • SciPy (>= 0.19.1)
  • joblib (>= 0.11)

사용가이드 - 아래 링크 참고

https://youtu.be/WCEXYvv-T5Q