Machine_learning
Table of contents
머신러닝
머신러닝이란?
머신러닝이란?
머신러닝(Machine Learning)
- 데이터를 재료로 하여 컴퓨터가 능력을 습득할 수 있게 프로그래밍 하는 과학
- 컴퓨터의 학습은 데이터를 통해 패턴을 찾아 성능이 향상되는 것
- 머신러닝 과정에서 컴퓨터는 주어진 데이터를 분석하고, 학습하며 모델을 만듦. → 패턴을 인식할 수 있는 능력이 생김 → 새로운 데이터 입력했을 때도 기존 정보들을 바탕으로 패턴을 찾고 결과를 판단함
컴퓨터의 학습 방법
- 컴퓨터는 학습을 통하여 데이터에서 패턴을 찾고 특정 분야에 대한 능력 을 획득
- 반복적인 계산을 통해 점점 정답과 가까운 결과를 얻는 방식으로 학습
⇒ 기계학습 : 사람처럼 생각하여 학습하는 것이 아닌 반복 계산을 통해 정답으로 가까워지는 과정
데이터의 역할
- 컴퓨터에게 데이터는 학습을 위한 자료
⇒ 많은 데이터, 질 좋은 데이터를 사용할수록 더욱 정확하게 학습이 가능함
머신러닝의 효용
-
인간이 못 알아챈 동향이나 패턴 파악 가능
대량의 데이터를 검토하고 계산하기 때문에 사람이 파악하지 못한 패턴을 찾을 수 있음
-
지속적인 개선
데이터가 쌓이면서 점점 정확성과 효율성이 증가하기 때문에 데이터 양이 많아질수록 머신러닝의 성능이 좋아질 확률이 높음.
⇒ 데이터를 확보하고 개선 가능
-
다양한 데이터 활용 가능
인간이 직관적으로 이해하기 어려운 데이터도 모두 활용하여 분석할 수 있음
머신러닝의 종류
머신러닝의 종류
- 머신러닝은 크게 지도학습(Supervised Learning)과 비지도학습(Unsupervised Learning), 강화학습(Reinforcement learning) 으로 구분 가능
지도학습
- 학습할 데이터에 정보와 정답을 포함하는 방법
- 정답이 있기 때문에 정답에 대한 데이터 특성 학습 가능
- input 특성들을 활용하여 ouput 특성 예측
- input 특성 : 정답을 맞추기 위해 사용되는 데이터 특성
- ouput 특성 : 정답이 되는 데이터 특성
비지도학습
- 지도학습과 반대로 학습할 데이터에 정보만 제공 (정답 포함 X)
- 데이터들이 얼마나 서로 비슷한지 비교하며 학습
- ex. 넷플릭스 추천 시스템
강화학습
- 기계에게 주어진 규칙 안에서 여러 가지를 시도해 보도록 하고, 그 결과에 대한 보상을 제공함으로써 학습시키는 방법
- 기계는 조건 안에서 여러 가지 성공도 하고 실패도 하면서 경험을 축적함. 성공한 경험으로 도달하는 방법을 사용했을 때에는 보상이 주어지기 때문에 점점 성공하는 방법을 학습하게 되는 방식
- 사람이 학습하는 방법과 가장 닮았다고 평가받는 학습 방법
머신러닝의 프로세스
머신러닝의 프로세스
1. 데이터 전처리
- 지저분한 데이터를 분석이 가능한 형태로 변환하고, 처리해주는 작업
- 데이터 정제(data cleaning) : 지저분한 데이터를 머신러닝 모델에 넣을 수 있도록 깔끔하게 정제하는 과정
- 특성 엔지니어링(feature engineering) : 분석 목적에 맞게 새로운 특성(feature)을 생성하는 과정
- 피쳐 스케일링(feature Scaling) : 특성들의 범위가 다를 때 범위를 맞추어주는 과정
- 더미화(dummification) : 범주 형태의 데이터를 수치형 0, 1로 바꿔주는 과정
2. 탐색적 데이터 분석 (Exploratory Data Analysis)
- 기본적이고 탐색적인 분석을 통해 데이터가 가진 특징을 찾고, 패턴을 발견하는 과정
- EDA의 종류
- 시각화(Graphic) : 차트 혹은 그림 등을 이용하여 데이터를 확인하는 방법
- 비시각화(Non-Graphic) : 그래픽적인 요소를 사용하지 않는 방법으로, 주로 Summary Statistics를 통해 데이터를 확인하는 방법
- EDA의 유형
- Uni-Non Graphic(일변량 비시각화) : 주어진 데이터의 Distribution을 확인하는 것이 주목적.
- Uni-Graphic(일변량 시각화) : 주어진 데이터를 전체적으로 살펴보는 것이 주목적.
- Multi-Non Graphic(다변량 비시각화) : 주어진 둘 이상의 변수간 관계를 확인하는 것이 주목적.
- Multi-Graphic(다변량 시각화) : 주어진 둘 이상의 변수간 관계를 전체적으로 살펴보는 것이 주목적.
3. 모델 선택 및 구축
- 모델(Model) : 컴퓨터가 데이터를 학습하고 원하는 값을 계산하는 방법(알고리즘)
- 알고리즘 중에 우리가 가진 데이터, 우리가 해결하고 싶은 문제에 맞는 모델을 선택하고, 데이터를 학습시켜 모델을 구축
4. 성능 평가 및 적용
- 해당 모델이 얼마나 좋은 성능을 낼 수 있는지 평가하는 과정
- 정답이 있는 지도학습이라면 모델이 예측한 정답과 실제 정답과 일치하는지를 비교하고, 정답이 없는 비지도학습이라면 비슷한 특성들이 가진 패턴을 잘 찾았는지 평가
- 또한, 모델을 만들기 위해 학습한 데이터가 아닌 새로운 데이터들에도 좋은 성능이 나타나는지 평가 및 적용도 가능