본문 바로가기

머신러닝

한 눈에 이해하는 머신러닝 전과정

728x90
반응형

한 눈에 이해하는 머신러닝을 전과정

 

안녕하세요.

 

로스윗의 코딩캠프입니다.

 

오늘은 머신러닝 워크플로우에 대해 간략히 알아보는 포스팅을 진행하도록 하겠스빈다.

 

거두절미 하고 바로 시작하겠습니다.

 

 

 

 

 

 

- 머신러닝 워크 플로우

머신러닝 워크플로우는 아래 사진으로 한번에 이해하실 수 있을 것 같습니다.

 

먼저 같이 한번 보시죠.

 

 

머신러닝 워크 플로우
머신러닝 워크 플로우

 

 

순서를 보자면,

 

1. 데이터 분석 문제 정의

2. 데이터 수집 및 정제

3. 탐색적 데이터 분석(EDA)

4. 피처 엔지니어링

5. 예측 모델 개발 및 평가

 

입니다.

 

하나하나 간략히 설명 드리겠습니다.

 

 

 

1. 데이터 분석 문제 정의

어떤 머신러닝 문제를 풀어야 하는지에 대한 정의를 내리는 부분입니다.

 

머신러닝 전체 워크플로우중 가장 중요한 단계입니다.

 

어떤 문제를 풀어야 하는지에 따라 어떤 모델을 사용할지가 달라지기 때문입니다.

 

가령 분류문제인데 회귀로 푼다거나

 

회귀 문제인데 분류로 푼다면

 

그 결과는 전혀 예상치 못한 결과가 나오게 될 것입니다.

 

고로 머신러닝에서는 문제정의를 처음부터 제대로 잡고 가는것이 중요합니다.

 

 

 

2. 데이터 수집 및 정제

문제를 정의 했다면 이제는 해당 데이터를 수집하고 정제하는 과정을 거쳐야 합니다.

 

수집은 여러가지를 통해 이루어 질 수 있는데,

 

회사내에 있는 데이터를 활용할 수도 있고

 

부족하다면 크롤링을 통해 수집할 수도 있습니다.

 

그 다음엔 수집한 서로 다른 형태의 데이터를 정제해야 합니다.

 

같은 포맷의 파일로 만들어 준다거나

 

row와 columns를 맞춰주는 등의 작업을 이 단계에서 하게 됩니다.

 

 

 

3. 탐색적 데이터 분석

3단계는 우리가 흔히 EDA라 부르는 탐색적 데이터 분석의 단계입니다.

 

이 단계에서는 정제된 데이터를 가지고 결측치를 확인하고 채워준다던지

 

데이터를 시각화해서 특이사항을 찾아본다던지

 

클래스의 불균형 문제를 해결한다던지 등의 작업이 이루어지게 됩니다.

 

전반적으로 데이터를 분석하는 과정입니다.

 

 

 

EDA는 정답이 없습니다.

 

간단히 하고 넘어가도 되지만 깊이 파고 파는 만큼 좋은 결과를 낼 수 있겠지요.

 

보통은 처음에 간단한 EDA를 하고 머신러닝 모델의 성능을 확인 한 뒤에

 

성능을 베이스라인으로 잡고 EDA단계로 돌아와

 

다시 EDA를 좀 더 심층적으로 분석한 뒤 모델을 다시 돌려

 

성능이 좋아지는 방향으로 학습하는 것이 일반적입니다.

 

 

머신러닝 엔지니어가 되고 싶은 분들에게..

 

머신러닝 엔지니어가 되고 싶은 분들에게..

머신러닝 엔지니어가 되고 싶은 분들에게.. 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 머신러닝 엔지니어가 되고 싶은 여러분들이 입사 하게 되면 일하는 현실적인 부분과 주니어로 시작해

rosweet-ai.tistory.com

 

 

 

4. 피처 엔지니어링

이 단계는 EDA가 끝난 데이터를 가지고 학습을 진행하기 전 단계로,

 

데이터들의 값(value)를 스케일링 한다던지차원의 저주를 피하기 위해

 

컬럼의 수를 조정한다던지 등의 작업이 이루어지게 됩니다.

 

이 과정을 거치는 이유는 모델이 학습을 제대로 할 수 있게 하기 위함입니다.

 

 

 

5. 예측 모델 개발 및 평가

이 단계는 학습을 마친 모델의 성능을 평가하고, 개선한 뒤

 

가장 좋은 성능을 내는 모델로 최종 학습을 마친 모델을 배포하는 마지막 단계입니다.

 

이 과정에서는 데이터 스플릿으로 분류해 두었던 test data로 최종 성능 평가를 하게 됩니다.

 

 

 

-정리 및 요약

오늘은 간략하면서도 꼭 알고 넘어가야 할

 

머신러닝의 워크플로우에 대해서 포스팅을 진행했는데요.

 

복습차원에서 아래 체크리스트를 만들어 보았으니,

 

꼭 워크플로우에 맞게 머신러닝 모델을 만들어 보셨으면 좋겠습니다.

 

긴글 읽어주셔서 감사합니다!!

 

 

- 체크리스트 예시 -

- [ ] 어떤 머신러닝 문제를 풀어야 하나요? 분류(Classification)
- [ ] 데이터는 어떻게 정의되어 있나요? 891 rows x 12 columns
- [ ] 생존자의 남녀 성비가 어떻게 되나요? EDA: pivot_table or indexing
- [ ] 어떤 머신러닝 모델을 사용하여 학습을 수행할 생각인가요? Random Forest / XGBoost
- [ ] 성능 평가 지표는 어떤건가요? Accuracy
- [ ] 어느 정도의 성능이 나오면 학습이 잘 되었다고 판단하나요? top 5% public LB

 

 

머신러닝이란 도대체 무엇일까?

 

머신러닝이란 도대체 무엇일까?

머신러닝이란 도대체 무엇일까? 안녕하세요! 로스윗의 코딩캠프입니다. 오늘은 요즘 가장 핫한 키워드인 머신러닝 machine learning에 대해서 같이 한 번 깊~~이 알아보는 시간가져 보겠습니다~! - 머

rosweet-ai.tistory.com

머신러닝 랜덤 포레스트 알고리즘 간단 정리

 

머신러닝 랜덤 포레스트 알고리즘 간단 정리

머신러닝 랜덤 포레스트 알고리즘 간단 정리 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 머신러닝(Machine learning)모델중 대표적인 앙상블 모델인 랜덤 포레스트(Random Forest)에 대한 내용을 공

rosweet-ai.tistory.com

 

728x90
반응형