| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- Python
- 힙정렬
- CNN
- 데이터 시각화
- 객체지향
- 에이전트
- RDBMS
- 캐글
- 딥러닝
- ASR
- 자연어처리
- RNN
- 정보처리기사
- LangGraph
- python 기초
- TTS
- Transformer
- 머신러닝
- 트랜스포머
- 생성형 인공지능
- 데이터엔지니어
- UMAP
- dementional reduction
- python기초
- 랭그래프
- 기초
- SQL
- 소프트웨어 개발
- 알고리즘
- CLIP
- Today
- Total
수달이네 기술 블로그
8. 머신러닝 기초 본문
인공지능
컴퓨터, 기계가 인간처럼 생각, 학습하여 문제를 해결하는 능력을 갖추도록 만든 기술로, 데이터를 활용해 의사결정을 내리거나 예측하는 시스템을 개발하는 것을 목표로 함.
규칙 기반 알고리즘(Rule-based algorithms)
명시적으로 정의된 규칙(If-Then-Else문법)을 사용해 문제를 해결
- 사람이 적용한 논리 조건으로 작동
머신러닝
인공지능의 한 분야, 컴퓨터가 명시적으로 프로그래밍되지 않아도 데이터에서 패턴을 학습하고, 데이터를 예측하고 결정한다.
- AI의 핵심 기술로, 우리가 사용하는 많은 기술과 서비스의 기초가 된다.
딥러닝
머신러닝의 한분야로 인공신경망을 사용하여 데이터를 학습하고 복잡한 문제를 해결하는 기술
- 대량의 데이터와 고성능 컴퓨팅 자원을 활용하여 성능을 발휘

무조건 딥러닝만 공부하면 되는거 아니야?
아니다, 머신러닝을 익혀야 딥러닝 모델의 작동원리나 결과를 해석하기 쉽다.
또한, 작고 단순한 문제에선 머신러닝이 효과적이다.
머신러닝으로 하는 일
| 분류 (Classification) | - 스팸 메일 분류 - 암 진단 (양성/악성) - 고객 이탈 예측 - 고장 여부 판단 |
| 회귀 (Regression) | - 주택 가격 예측 - 주가 예측 - 광고 클릭률 예측 - 날씨 온도 예측 |
| 군집화 (Clustering) | - 고객 세그먼트 분류 - 상품 자동 그룹화 - 이상 거래 탐지 - 문서 주제 군집화 |
| 추천 시스템 | - 영화, 음악, 상품 추천 - 사용자 맞춤 콘텐츠 제공 |
| 자연어 처리 (NLP) | - 문장 감정 분석 - 뉴스 기사 분류 - 챗봇 응답 생성 - 기계 번역 |
| 이미지 처리 (Computer Vision) | - 얼굴 인식 - 객체 탐지 - 자율주행 자동차 인식 - X-ray 진단 보조 |
| 이상 탐지 (Anomaly Detection) | - 금융 사기 탐지 - 네트워크 이상 징후 감지 - 공정 불량 탐지 |
| 강화 학습 (Reinforcement Learning) | - 게임 AI (알파고 등) - 로봇 제어 - 스마트 팩토리 자동 제어 |
| 시계열 분석 | - 수요 예측 - 재고 관리 - 에너지 사용량 예측 |
| 음성 인식 및 합성 | - 음성 명령 인식 - AI 스피커 - 텍스트 음성 변환 (TTS) |
머신러닝 학습 방법
학습을 할때 각자 개별적으로 다른 것이 아닌, 여러개를 한번에 할 수도 있다.
1. 지도학습(Supervised Learning)
- 입력 데이터와 해당 데이터의 정답(레이블)이 제공되는 학습 방식이다.
- 주어진 입력에 대해 올바른 출력(레이블)을 예측하는 모델을 학습한다.
데이터 1 데이터 2 예측해야할 값 1 2 1 3 1 0 2 1 1
- 즉, 위의 테이블로 학습하고, 예측해야할 값이 없는 것을 예측한다.
2. 비지도학습(Unsupervised Learning)
- 입력 데이터에는 레이블(정답)이 없으며, 데이터 자체의 구조나 패턴을 학습한다.
- 데이터 내에서 숨겨진 구조를 찾거나 그룹화를 수행한다.
3. 클러스터링(Clustering) - 비지도 학습에 포함됨.
- 데이터를 비슷한 그룹으로 묶는다.
- 데이터를 더 작은 차원으로 변환하여 시각화하거나 연산 효율성을 높인다.
- 차원축소: 적은 데이터를 가진 데이터를 삭제하기도 한다.
4. 강화학습(Reinforcement Learning)
- 에이전트(Agent)가 환경(Environment)과 상호작용하며 보상(Reward)을 최대화하는 행동을 학습한다.
- 잘하면 보상모델이 좋은 값, 못하면 나쁜값을 줌.
5. 반지도학습(Semi-Supervised Learning)
- 데이터의 일부에만 레이블이 있고, 나머지는 레이블이 없는 상태에서 학습합니다.
- 레이블링된 데이터가 적을 때 유용합니다.
6. 자기 지도 학습(Self-Supervised Learning)
- 데이터에서 레이블 없이 일부 정보를 예측하도록 학습합니다.
- 데이터를 활용하여 자체적으로 레이블 생성합니다.
7. 온라인 학습(Online Learning)
- 데이터를 순차적으로 제공하며, 실시간으로 학습하는 방식입니다.
- 데이터가 점진적으로 들어오는 환경에 적합합니다
8. 트랜스퍼 러닝(Transfer Learning)(전이학습)
- 사전 학습된 모델의 지식을 새로운 문제에 적용합니다.
- 학습 시간이 단축되며, 적은 데이터로 성능 향상을 할 수 있습니다.
모델이란?
주어진 데이터를 학습해서 패턴, 규칙을 찾아내고, 새로운 데이터에 대해 예측및 결정을 내리는 수학적 구조, 알고리즘 모델.
- 데이터, 수학적 함수 조합으로 구성된 모델은 학습 과정으로 최적의 매개변수(가중치, 편향)등을 찾아간다.
- 모델은 데이터를 보고 문제를 해결하는 AI의 두뇌 역할을 한다.
학습은?
주어진 데이터로부터 패턴과 규칙을 찾아내어, 모델의 매개변수(가중치, 편향 등)를 최적화하는 과정이다.
- 이 과정에서 모델은 입력 데이터와 정답(레이블)을 비교하여 오류(오차)를 계산하고, 이를 최소화하기 위해 역전파(Backpropagation)와 최적화 알고리즘을 사용해 매개변수를 반복적으로 조정한다.
- 학습은 모델이 더 정확한 예측이나 결정을 내릴 수 있도록 스스로 개선한다.
머신러닝 프로세스

머신러닝 프로젝트는 일반적으로 문제 정의부터 모델 배포 및 운영에 이르는 일련의 단계로 구성된다. 아래는 핵심적인 4단계이다.
1. 문제 정의 및 목표 설정
이 단계는 프로젝트의 방향을 결정짓는 핵심 과정이다.
- 문제 유형 구체화: 해결하고자 하는 문제를 분류(Classification), 회귀(Regression), 군집화(Clustering) 등 머신러닝 문제 유형으로 명확히 정의한다.
- 변수 정의: 예측할 대상인 타깃(Target/Label)과 입력 변수인 피처(Feature)를 정의한다.
- 성과 지표(KPI) 설정: 비즈니스 목적에 부합하는 정량적 평가 지표 (예: 정확도 90% 이상, 특정 오차 이하 등)를 설정하여 목표를 명확히 한다.
- 전략 설계: 데이터 확보 가능성, 도메인 특성, 기술적/비즈니스적 제약사항 등을 종합적으로 고려하여 전체적인 목표와 전략을 수립한다.
2. 데이터 수집 및 전처리 (Preprocessing)
모델 성능을 결정하는 매우 중요한 단계이다. 원시 데이터를 모델이 학습할 수 있도록 정제하고 가공한다.
- 데이터 수집 및 통합: 정의된 문제 해결에 필요한 데이터를 확보하고 하나로 통합한다.
- 데이터 품질 개선:
- 결측치 처리: 누락된 값(NaN)을 제거하거나 대체(평균, 중앙값 등)한다.
- 이상치 제거**:** 데이터의 패턴에서 크게 벗어나는 값(Outlier)을 식별하고 처리한다.
- 데이터 가공 및 변환:
- 인코딩: 범주형 데이터를 원-핫 인코딩(One-Hot Encoding) 등 수치형으로 변환한다.
- 스케일링: 피처 간의 값 범위 차이를 조정하기 위해 정규화(Normalization)나 표준화(Standardization)를 적용한다.
- 피처 엔지니어링 (Feature Engineering): 기존 피처를 조합하거나 변형하여 새로운 유의미한 피처를 생성한다.
- 데이터 분리: 모델 훈련을 위해 데이터를 학습용(Training), 검증용(Validation), 테스트용(Test) 데이터셋으로 적절히 분리한다.
3. 모델 학습 (Training)
전처리된 데이터를 기반으로 머신러닝 알고리즘을 적용하여 모델을 훈련하는 단계이다.
- 알고리즘 선택: 문제 유형(지도/비지도)에 따라 적절한 알고리즘(예: 선형 회귀, 랜덤 포레스트, 딥러닝 등)을 선택한다.
- 모델 훈련: 알고리즘을 사용하여 학습용 데이터의 패턴을 파악하도록 반복적으로 훈련시킨다.
- 하이퍼파라미터 튜닝: 모델의 성능을 최적화하기 위해 학습률, 트리의 개수 등 하이퍼파라미터(Hyperparameter)를 조정하며 최적의 조합을 탐색한다.
4. 모델 평가 및 개선 (Evaluation & Improvement)
학습된 모델이 실제 환경에서 얼마나 잘 작동하는지 성능을 검증하고 개선한다.
- 성능 측정: 테스트용 데이터셋을 사용하여 모델의 예측 성능을 측정한다.
- 평가 지표 활용: 1단계에서 설정한 목표 KPI와 문제 유형에 맞는 지표(예: 분류는 정확도/정밀도/재현율, 회귀는 RMSE/MAE)를 사용하여 평가한다.
- 과적합(Overfitting) 확인: 모델이 학습 데이터에만 너무 맞춰져 일반화 성능이 떨어지는지 확인하고, 이를 방지하기 위한 조치를 취한다.
- 반복 및 개선: 평가 결과가 목표에 미치지 못하면, 데이터 전처리, 피처 엔지니어링, 알고리즘 선택, 하이퍼파라미터 튜닝 등의 이전 단계로 돌아가 반복적으로 모델을 개선한다.
머신러닝 공부를 위해 필요한 것.
- 기초 수학
- 선형대수: 벡터, 행렬
- 통계·확률: 평균, 분산, 확률분포
- 미분: 경사 하강법 이해에 필요
- 프로그래밍 (Python)
- 필수 라이브러리: NumPy, Pandas, Matplotlib, Scikit-learn
- 실습은 주로 Jupyter Notebook 또는 Colab 사용
- 데이터 전처리 능력
- 결측치/이상치 처리
- 범주형 인코딩, 정규화
- 시각화를 통한 데이터 이해
- 머신러닝 알고리즘 이해
- 지도학습: 선형회귀, 로지스틱 회귀, 결정트리, 랜덤포레스트
- 비지도학습: K-means, PCA 등
- 실습 경험
- Kaggle/Dacon 대회 참가
- 오픈데이터 프로젝트 수행
- 모델 성능 평가 및 개선 연습
- 도메인 지식
- 데이터를 해석하고 모델을 잘 적용하려면 산업별 배경지식이 중요
- 예: 의료 AI는 의학 지식, 금융 모델은 회계·경제 지식 필요
- 윤리와 법률
- 개인정보 보호법, AI 윤리, 알고리즘 편향 등 고려 필수
- 예: 얼굴 인식 시스템은 사생활 침해 이슈 발생 가능
- AI 프로젝트 실무 경험
- 데이터 수집~배포까지의 전체 흐름 이해 필요
- 협업, 버전관리(Git), 모델 배포(Flask, FastAPI 등) 등 실전 역량
- 클라우드 & 환경 세팅
- Google Colab, AWS, GCP 등에서 실습 및 배포 경험이 도움이 됨
- 대규모 학습이나 GPU 자원이 필요할 때 필수
'AI공부 > 머신러닝' 카테고리의 다른 글
| 11. 주택 임대료 예측 (1) | 2025.12.29 |
|---|---|
| 10. Iris 데이터셋 예측(머신러닝 입문) (0) | 2025.12.28 |
| 7.셀레니움을 이용한 크롤링3: 데이터프레임화(야놀자 리뷰 크롤링) (1) | 2025.12.01 |
| 6. 셀레니움을 이용한 크롤링 2: 이미지 (0) | 2025.12.01 |
| 강화학습 기본 개념 (0) | 2025.12.01 |