contents
- 머신 러닝에 대한 정의
- 빅데이터와 머신 러닝
- 통계학과 머신 러닝
- 데이터 분석과 머신 러닝
summary
- 머신 러닝에 대한 정의
☑️ 머신 러닝은 무엇인가요?

- 머신 러닝의 선구자 Tom Mitchell CMU 교수가 정의한 머신 러닝
🗣️ A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E.
"어떤 컴퓨터 프로그램이 특정 작업(T)에 대해, 성능 지표(P)로 측정했을 때, 경험(E)을 통해 성능이 향상된다면, 그 프로그램은 학습한다고 말할 수 있다.”
- 머신 러닝은 3가지 핵심 요소
- **작업(T):** 프로그램이 수행해야 할 임무.
- **성능 지표(P):** 프로그램이 해당 임무를 잘 수행하였는지 평가하기 위한 수치화된 값.
- **경험(E):** 작업의 대상, 즉 데이터.
- 예시
- 스팸 메일을 분류하는 모델을 만드는 작업에 대해 생각해 보자.
- [데이터셋 → 스팸메일 분류 모델 실행 → 정확도 확인 → 정확도 향상을 위한 모델 업데이트] 의 반복
- 단순히 프로그래밍 된 소프트웨어(모델)과의 차이점
;배달 데이터가 매일 수천 건씩 쌓인다고 가정.
- SQL 쿼리
- 신규 데이터가 추가되어도 ‘조건에 해당하는 데이터’를 뽑아내는 역할만 수행.
- 배달에 걸린 시간을 예측하는 회귀분석 모델
- 신규 데이터가 추가되면 이를 활용해 예측값의 오차를 줄이는 방향으로 모델을 업데이트한다.
📌즉, 머신 러닝은 데이터를 활용하여 작업의 성능을 향상하기 위해 모델(머신)을 학습해나가는 과정을 말한다.
☑️ 머신 러닝 vs AI vs 딥 러닝

- 딥 러닝 → 머신 러닝 → AI 순으로 그 개념의 범위가 넓어진다.
- AI: 마치 인간처럼 학습 및 추론을 할 수 있도록 만들어진 프로그램
- 머신 러닝: 데이터를 활용해 명시적으로 프로그래밍되지 않고도 학습할 수 있는 알고리즘
- 딥 러닝: 머신 러닝의 종류 중 하나로 인공 신경망을 이용해 거대한 데이터셋을 학습하는 방법
- 빅데이터와 머신 러닝
☑️ 빅데이터와 머신 러닝은 뗄 수 없는 관계

- 빅데이터란?
- 말 그대로 과거와는 비교가 안되는 엄청난 규모의 데이터를 칭하는 용어.
- 특징 - 5V
- Volume (규모) : 데이터의 양
- Velocity (속도) : 데이터가 생성되고 처리되는 속도
- Variety (다양성) : 데이터의 형태와 종류의 다양함
- Veracity (정확성) : 데이터의 품질과 신뢰성
- Value (가치) : 데이터로부터 창출할 수 있는 가치
- 빅데이터와 머신 러닝 분야는 상호 보완적으로 함께 발전해옴.
- 머신 러닝의 핵심 요소 중 한가지가 바로 경험, 즉 데이터.
- 빅데이터의 활용성이 높아짐에 따라 머신 러닝 분야도 계속해서 발전.
- 통계학과 머신 러닝
☑️ 공통점도 많지만 차이점이 있는 두 분야

- 통계학: 표본에서 모집단의 특성을 추론하는 것이 중점.
- 내가 수집한 데이터가 모집단을 얼마나 잘 반영하고 있는지
- 데이터 셋이 작아도 통계적 유의성만 확인할 수 있으면 Okay!
- 연역적 추론: 가설 설정 → 수학적 검증
- 머신 러닝: 수집된 데이터를 활용해 예측과 일반화 성능을 향상시키는 것이 중점.
- 다른 데이터가 들어왔을 때 기존 모델로 얼마나 비슷하게 예측/분류 할 수 있는지
- 데이터는 많으면 많을 수록 Good!
- 귀납적 추론: 데이터를 이용해 모델을 우선 돌려보고 결과를 해석
즉, 데이터 분석을 잘 하기 위해서는 두 가지 분야에 대한 지식을 잘 쌓아두는 것이 좋다!
- 데이터 분석과 머신 러닝
❔머신러닝! 데이터 분석가에게 필수일까?

- 초반에 다소 추상적이었던 데이터 분석이라는 개념이 최근에는 점점 구체화 및 세분화되고 있다.
- 데이터 분석가(Data Analyst)
- 데이터를 활용하고 분석하여 의사 결정을 위한 인사이트를 도출
- 데이터 엔지니어(Data Engineer)
- 분석의 기초가 되는 데이터를 수집, 저장, 처리 및 데이터 파이프라인 관리
- 데이터 과학자(Data Scientist)
- 머신 러닝 등을 활용해서 데이터를 이용한 문제 해결에 집중
- 위 다이어그램에서 머신 러닝은 데이터 과학자와 데이터 엔지니어의 공통 요구 스킬.
- 해당 분야는 수학, 통계학과 프로그래밍 지식이 베이스로 깊이가 있다.
- 인사이트 도출이 주가 되는 데이터 분석가에겐 필수가 아닐 수 있다.
✅ 그럼에도 데이터 분석가가 머신 러닝을 학습해야 하는 이유
1) 깊이 있는 분석이 가능.
- 통계적 분석만으로 확인하기 어려운 비선형적 패턴이나 복잡한 관계를 발견할 수도 있다.
2) 대규모 데이터 및 실시간 데이터를 분석할 수 있다.
- 학습한 모델을 바탕으로 대규모 데이터 및 실시간 데이터를 활용해 예측, 분류 등의 작업을 할 수 있다.
3) 다양한 데이터 팀 구성원 및 유관 부서와 협업에 용이.
- 머신 러닝에 대한 이해를 바탕으로 데이터 과학자, 엔지니어 및 유관 부서에 필요한 데이터와 모델을 요청할 수 있다.
insight
https://www.cs.cmu.edu/~tom/files/MachineLearningTomMitchell.pdf
데이터 분석가에게 머신러닝의 스킬이 필수는 아닐 수 있지만, 빠르게 변화하는 요즘, 머신러닝과 딥러닝을 많이 사용하고, 어느정도 개념을 알고 기초를 활용할 수 있다면 좋다!
그렇기 때문에 머신러닝에 대한 이해와 기본 알고리즘을 파악해두자!