머신러닝(Machine Learning), Big Data, AI의 기초 개념
머신러닝 기초 개념 및 용어
* 머신러닝 이란?
- 데이터를 기반으로 통계적 학습을 통해 패턴을 분석하고 예측하는 기술
- 과거 데이터를 학습하여 미래 데이터를 예측하거나 분류하는 작업 수행
- 데이터를 부여해서 머신을 학습시키거나, 더 진보해서 머신 스스로 데이터를 학습하여 더 나은 알고리즘들을 생성
* 빅데이터 란?
- 매우 크고 복잡한 데이터 집합
- 데이터 수집, 저장, 처리, 분석, 예측을 포함한 기술과 방법론
- 머신러닝이 효과적으로 수행되려면 빅데이터 기술의 지원이 필수적
* 인공지능 이란?
- 사람의 지능을 컴퓨터 프로그램으로 구현하는 기술 분야
- 경험과 데이터를 통해 자동으로 개선되는 시스템 개발을 목표
머신러닝 학습 방법 3가지
1. 지도학습 (Supervised Learning)
- 정답이 있는 데이터를 기반으로 학습
- 분류 (Classification)와 회귀(Regression)로 나뉨
+) 분류 : 주어진 데이터가 특정 그룹 중 어디에 속하는지 예측, 모든 분류에는 분류 기준이 있어야함. (예:스팸메일 여부, 고객 분류)
+) 회귀 : 결과 값이 무수히 많은 연속적인 결과값을 도출, 현재까지의 데이터들의 패턴을 찾아서 미래 데이터를 예측한다. (예: 주가 예측, 집값 예측, 날씨 예측 ...)
2. 비지도 학습 (Unsupervised Learning)
- 정답이 없는 데이터를 기반으로 학습
- 숨겨진 패턴과 구조를 발견하고 데이터를 군집화(clustering)하거나 특성을 추출하는 데 사용
예 : 신물 기사를 비슷한 기사들끼리 묶어야 함 (날짜별, 카테고리별, 기자별, 언론사별,,, 기준에 따라 여러 기준으로 분류 가능)
+) 클러스터링 : 데이터를 유사한 특성으로 묶음 (예:고객 유형별 마케팅)
+) 차원 축소 : 데이터 특성을 압축하여 시각화 (예 : PCA를 활용한 데이터 시각화)
3. 강화 학습 (Reinforcement Learning) - 딥러닝
- 인공지능이 스스로 경험을 통해서 배우고 의사결정을 내리기 위한 학습
- 인공지능 스스로 실험과 시행착오를 거쳐서 최적의 의사결정을 하는 것을 학습한다.
- 에이전트(Agent)가 환경(Environment)과 상호작용하면서 특정 작업을 수행하고 보상(Reward)을 최대화 하기 위한 최적의 정책 (방법)을 학습
- 행동(Action), 상태(State), 보상(Reward) 개념이 중요
- 스스로 시행착오를 통해 최적의 행동을 선택
예 : Chat GPT 같은 LLM에서는 프롬프트(질의)에 대해서 제공한 응답에 대한 반응을 분석해서 보상 점수에 반영
용어 의미
에이전트(agent) | 행동을 수행하고 학습하는 주체 |
환경(environment) | 에이전트가 행동하는 외부 환경 |
상태(state) | 환경의 특정 시점에서의 조건 |
행동(action) | 에이전트가 상태에서 취할 수 있는 결정 |
보상(reward) | 행동에 따른 피드백 |
머신러닝의 장점과 단점
* 장점
- 사람이 발견하기 어려운 패턴과 트렌드 분석 가능
- 자동화 및 효율적 데이터 처리
- 복잡한 데이터를 빠르게 처리
* 단점
- 초기 학습 및 데이터 준비에 높은 비용과 시간이 필요 (인프라 구축의 경제성)
- 전문 지식이 없으면 결과를 정확히 해석하기 어려움
- 모델이 잘못된 데이터로 학습하면 부정확한 결과를 초래
머신러닝 진행 단계
① 문제 정의 ➡️ ② 데이터 수집 ➡️ ③ 데이터 전처리 ➡️ ④ 특성(feature) 추출 ➡️ ⑤ 특성 엔지니어링 ➡️ ⑥ 모델 선택 ➡️ ⑦ 모델 학습 ➡️ ⑧ 모델 평가 ➡️ ⑨ 모델 개선 ➡️ ⑩ 모델 배포 ➡️ ⑪ 보고서 작성
+) 개발자 실무에서는 데이터 전처리 및 특성 엔지니어링이 성능 개선의 핵심이다.
용어 정리
* 클러스터링(Clustering) : 데이터를 유사한 특성으로 묶는 작업 (일정한 기준에 의해)
* 차원 축소 (Dimensionality Reduction) : 고차원 데이터를 저차원으로 압축해서 데이터를 시각화 하거나 분석 작업에 활용
* 연관 규칙 학습 (Association Rule Learning) : 데이터셋(데이터의 모음)에서 항목(변수)들 사이의 관계나 패턴을 찾는 학습
- 데이터 내 항목간의 연관성을 파악함 (예 : 장바구니 분석)
* Q-Learning : 강화학습에서 에이전트가 최적의 행동을 학습하는 방식
* SARSA : [상태 -> 행동 -> 보상] 과정을 반복하는 강화하는 알고리즘
인사이트
1. 머신러닝 프로젝트 시 중요한 작업은 대부분 데이터 전처리 단계에서 이뤄짐
2. 실제 개발자는 모델 성능 개선을 위해 데이터 처리 및 특성 엔지니어링에 많은 시간과 노력을 투자한다.
3. 머신러닝은 현업에서 실제 비즈니스 문제를 해결하는 도구라는 관점에서 접근하기