머신러닝을 공부하면 항상 '학습'이라는 개념을 마주칠 수 있는데, 이 학습의 개념과 종류에 대해 알아보고자 한다.
- 머신러닝에서 '학습'이란, 데이터를 특정 알고리즘에 적용해 머신러닝 모델을 정의된 문제에 최적화하는 과정이다.
- 머신러닝은 학습하려는 문제의 유형에 따라, 크게 3가지의 종류로 구분된다.
지도학습이란 간단히 말해 정답을 알려주면서 데이터를 학습시키는 것이다. 학습 시 입력 값(X_data)이 주어지면 입력값에 대한 label(Y_data,정답)이 항상 제공돼야 한다.
지도학습의 대표적 예로는 분류(classification)와 회귀(regression)가 대표적이다.
-장점: 테스트를 할 때 데이터와 label을 제공해서 손쉽게 모델의 성능을 평가할 수 있다.
-단점: 데이터마다 라벨링 작업을 해야하기 때문에 어느정도의 시간투자가 필요하다.
비지도학습이란 label이 없이 진행되는 학습니다. 라벨링 없이 데이터만 필요하며, 이러한 데이터 자체에서 패턴이나 형태를 찾아내야 한다.
비지도학습의 대표적 예로는 군집화와 차원축소가 있다.
-장점: 따로 라벨링 정보가 필요없다.
-단점: 라벨이 없기 때문에 모델 성능을 평가하는 데 지도학습에 비해 다소 난이도가 있다.
군집화(Clustering)
시각화(Visualization)와 차원 축소(Dimensionality Reduction)
연관 규칙 학습(Association Rule Learning)
현재의 상태(state)에서 어떤 행동을 취하는 것이 최적인지를 학습하는 것이다. 행동(action)을 취할 때마다 외부 환경에서 보상이 주어지는데, 이러한 보상(reward)을 최대화 하는 방향으로 학습이 진행된다. (이 보상은 행동을 취한 즉시 주어지지 않을 수도 있음)
강화학습은 크게 상태(state), 에이전트(agent), 행동(action), 보상(reward) 4가지 요소로 나눌 수 있다.
이렇게 큰 개념을 정리하고 각 학습의 종류마다 해당되는 알고리즘들을 하나씩 뜯어서 정리해보려고 한다.
함께 연구해보고 싶네요 윤진양..