Machine Learning
머신러닝(Machine Learning)
기본적으로 ChatGPT를 이용하여 틀을 잡고 만들어갈 것이며, 하나씩 해결해나가는 느낌으로 ML을 복습 및 검토한다.
머신러닝의 정의
-
인공지능(artificial intelligence) 의 한 분야로, 컴퓨터가 데이터를 분석하고 패턴을 학습하여 일련의 작업을 수행하도록 하는 기술을 의미합니다.
-
데이터와 통계적 모델링 기술, 최적화 알고리즘 등을 활용하여 패턴을 인식
- 이를 통해 미지의 데이터에 대한 예측이나 판단을 수행하는 컴퓨터 시스템을 만들어 내는 기술입니다.
- 예를 들어, 스팸 메일 필터링, 음성 인식, 이미지 인식, 자연어 처리, 추천 시스템 등에 적용될 수 있습니다.
- 이를 통해 미지의 데이터에 대한 예측이나 판단을 수행하는 컴퓨터 시스템을 만들어 내는 기술입니다.
학습 종류
- 지도 학습 (Supervised Learning)
레이블이 있는 데이터를 활용하여 학습하는 방식으로,
분류(Classification)와 회귀(Regression) 문제가 있습니다. - 비지도 학습 (Unsupervised Learning)
레이블이 없는 데이터를 활용하여 학습하는 방식으로,
군집화(Clustering), 차원 축소(Dimensionality Reduction), 밀도 추정(Density Estimation) 등의 문제가 있습니다. - 강화 학습 (Reinforcement Learning)
에이전트가 환경과 상호작용하며 보상을 최대화하기 위한 방식으로,
게임, 로봇 제어, 자율 주행 등의 분야에서 활용됩니다. - 준지도 학습 (Semi-supervised Learning)
레이블이 일부만 있는 데이터를 활용하여 학습하는 방식으로,
지도학습과 비지도학습의 중간 형태입니다. - 전이 학습 (Transfer Learning)
학습된 모델을 다른 문제에 재활용하는 방식으로,
학습 데이터가 적은 경우에도 활용됩니다. - 생성 모델 (Generative Models)
데이터를 생성하는 모델로, GAN, VAE 등이 있습니다.
- 딥 러닝 (Deep Learning)
여러 층으로 이루어진 인공 신경망을 활용하여 학습하는 방식으로,
이미지, 음성, 자연어 등의 분야에서 활용됩니다.
일반적인 머신러닝 단계
- 문제 정의
머신러닝을 적용할 문제를 정의합니다.
이 단계에서는 어떤 데이터를 사용하고,
어떤 문제를 해결하려는지 결정합니다. - 데이터 수집
문제를 해결하기 위해 필요한 데이터를 수집합니다.
이 단계에서는 데이터의 형태, 양, 품질 등을 고려해야 합니다. - 데이터 전처리
수집한 데이터를 분석에 적합한 형태로 가공합니다.
이 단계에서는 결측치 처리, 이상치 제거, 스케일링, 인코딩 등의 작업을 수행합니다. - 모델 선택
문제의 종류와 데이터의 특성에 맞는 적절한 머신러닝 모델을 선택합니다.
이 단계에서는 각 모델의 특징, 장단점, 하이퍼파라미터 등을 고려합니다. - 학습
선택한 모델을 학습시킵니다.
이 단계에서는 데이터를 학습용 데이터와 검증용 데이터로 나누어 학습을 수행하고, 모델의 성능을 평가합니다. - 모델 튜닝
학습한 모델의 성능을 더욱 개선하기 위해 하이퍼파라미터를 조정하거나 모델 아키텍처를 변경합니다.
- 예측
학습된 모델을 사용하여 새로운 데이터에 대한 예측을 수행합니다.
- 평가
모델의 예측 성능을 평가합니다.
이 단계에서는 정확도, 정밀도, 재현율, F1 스코어 등의 지표를 사용합니다. - 배포
최종 모델을 배포하고 사용자가 모델을 사용할 수 있도록 합니다.
이 단계에서는 모델의 성능과 안정성을 고려해야 합니다.