본문 바로가기
프로그래밍/데이터분석 이론

머신러닝 개요

by 어느덧중반 2021. 4. 1.
반응형

머신러닝

머신러닝은 데이터와 알고리즘을 기반으로 추론하는 프로그램으로 정의할 수 있다.

소프트웨어는 입력이 들어오면 정해진 출력값만 출력해낼 수 있는 결정론적 소프트웨어이다.

머신러닝의 발전과 함께 결정론적 소프트웨어가 상용화 되고 있는데,

쉬운 예로 얼굴 인식 자동잠금해제, 음석비서, 영화사이트 영화추천 기능 등이 있다.

이 것은 입력값이 늘 같은 것이 아니라 머신러닝을 통해 학습해온 데이터를 통해 출력값을 도출해내고 있다.

 

머신러닝의 추론은 어떤 데이터를 사용하느냐, 어떤 알고리즘을 사용하느냐에 따라 달라질 수 있다.

 

머신러닝 프로젝트는 크게 문제정의, 데이터 획득, 모델 구현, 검증, 테스트 단계로 진행된다.

 

문제 정의

프로젝트의 목표를 정의하고 그에 따른 계획을 세우는 단계이다. 어떤 데이터를 수집해서 어떤 머신러닝 알고리즘으로 문제를 해결할지 정하는 단계이다.

 

데이터 획득

머신러닝 모델 학습에 필요한 데이터를 수집하는 단계이다. 데이터는 DB테이블, 엑셀, 로그 파일 등 다양한 포맷으로 존재하며, 가능하면 머신러닝 학습에 용이하도록 하나의 포맷으로 통일해 데이터를 수집한다. 성공적인 머신러닝 프로젝트는 뛰어난 머신러닝 실력보다 얼마나 충분히 데이터를 획득했는지에 따라 결정되므로 굉장히 중요한 단계이다. 획득된 데이터는 학습 데이터, 검증 데이터, 테스트 데이터 등으로 구분되어 사용된다.

 

모델 구현

학습 데이터를 기반으로 한 개 이상의 머신러닝 모델이 구현된다..

 

검증

검증 데이터를 이용해 구현해놓은 머신러닝 모델의 성능을 검증한다. 검증 결과를 바탕으로 머신러닝 모델을 튜닝하고 더 최적화해서 머신러닝 모델을 고도화해 간다. 최종적으로 검증 결과가 가장 높은 모델을 선택한다.

 

테스트

검증 결과를 통해 선택된 모델 성능을 테스트 데이터를 통해 측정한다. 테스트 결과에 따라 프로젝트를 마무리할지, 아니면 이전 단계로 돌아가 모델을 개선할지 결정하게 된다.

 

반응형

댓글