티스토리 뷰

IT scrap

머신러닝

Fine Dust 2018. 9. 19. 09:48

머신 러닝




  인공지능의 연구 분야 중 하나로, 인간의 학습 능력과 같은 기능을 컴퓨터에서 실현하고자 하는 기술 및 기법이다. 1959년 아서 사무엘(Arthur Samuel)은 "명시적으로 프로그램을 작성하지 않고 컴퓨터에 학습할 수 있는 능력을 부여하기 위한 연구 분야" 라고 정의하였다. 즉 사람이 학습하듯이 컴퓨터에도 데이터들을 줘서 학습하게 함으로써 새로운 지식을 얻어내게 하는 분야이다. 그 후 톰 미첼(Tom M. Mitchell)은 "컴퓨터 프로그램이 어떤 작업 T와 평가척도 P에 대해서 경험 E로부터 학습한다는 것은, P에 의해 평가되는 작업 T에 있어서의 성능이 경험 E에 의해 개선되는 경우를 말한다" 라고 더욱 형식적인 정의를 내린 바 있다.



  대부분의 머신 러닝 알고리즘은 먼저 데이터가 생성한 잠재적인 메커니즘의 특징을 파악하여 복잡한 관계를 정량화한 후, 이 식별된 패턴을 사용하여 새로운 데이터에 대한 예측을 실시한다. 머신 러닝은 데이터로부터 유용한 규칙, 지식 표현 혹은 판단 기준 등을 추출한다는 점에서 데이터마이닝이나 통계 및 수학적 최적화 문제와 관련이 깊다.



머신 러닝 알고리즘은 학습 시스템에 정보 및 데이터를 입력하는 형태에 따라 크게 세 가지로 나뉜다.

1). 감독(supervised)학습 : 

입력과 이에 대응하는 미리 알려진 출력(인간 전문가가 제공)을 매핑(mapping)하는 함수를 학습하는 과정이다.


2). 비감독(unsupervised)학습 : 

출력 없이 입력만으로 모델을 구축하여 학습한다. 일반적으로 데이터마이닝의 대부분의 기법이 이에 해당한다.


3). 강화(reinforcement)학습 : 

학습자가 행동을 선택하여 행동으로 환경에 영향을 미치고, 이에 대한 피드백으로 보상치를 얻어 학습 알고리즘의 가이드로 사용한다.



  머신 러닝의 기법 및 모델들로는 트리 구조 형태를 예측 모델로 사용하는 의사결정 나무(Decision Tree), 생물의 신경 네트워크 구조화 기능을 모방하는 인공 신경망(neural Network), 생물의 진화 알고리즘에 기반한 유전자 프로그래밍(Genetic Programming), 관측된 예를 군집이라는 부분집합으로 분배하는 군집화(Clustering), 무작위로 추출된 난수를 통해 함수값을 확률로 계산하는 몬테카를로 방법(Monter Carlo method) 등이 있다.




댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함