아이펠 데이터 사이언티스트 과정 커리큘럼을 알려드립니다!
데이터 사이언티스트가 되기 위해서는 어떤 개념들을 어떻게 공부들을 해야할까요? 현업 데이터 사이언티스트들과 함께 만든 아이펠 데이터 사이언티스트 과정 커리큘럼을 통해서 함께 살펴보시죠!
현업 데이터 사이언티스트들은 어떤 고민을 할까?
데이터 사이언티스트들은 실무에서 다음과 같은 질문들을 던지고 해결해나가는 과정을 고민하게 됩니다.
- 비즈니스 문제를 해결하기 위해 어떻게 아키텍처를 어떻게 설계해야 할까?
- 데이터 품질을 높이기 위해서는 어떻게 해야 할까?
- 비즈니스 문제를 해결하기 위한 적합한 모델은 어떤 것일까?
- 모델의 품질을 더 높이려면 어떻게 해야 할까?
- ML/DL 프로젝트에 관하여 문서화, 버전 관리를 어떻게 해야 할까?
- 지속해서 품질을 높이기 위해 어떻게 데이터 거버넌스를 확립해야 할까?
- 데이터 실험을 통해 얻은 통찰을 이해 관계자에게 어떻게 스토리텔링을 할까?
- 데이터 중심의 문화를 어떻게 확산시킬 수 있을까?
현장을 나가보면 “데이터 사이언티스트”라는 직무는 같지만, 실제 업무는 회사마다 차이점이 있습니다.
A사의 데이터 사이언티스트는 SQL을 업무에서 50%정도 활용하고, B사에서는 데이터 전처리에 많은 시간을 할애합니다.
C사의 추천시스템 팀에서는 추천 알고리즘 개발에 몰두하는 반면, D사에서는 머신러닝과 더불어 설명 가능한 통계 분석이 여전히 중요하게 여겨집니다. 또한 E사는 데이터 사이언티스트가 분석 결과를 비즈니스 관점에서 해석하고, 이를 바탕으로 액션플랜을 제안하는 업무를 진행하고, F사는 데이터 사이언티스트가 단순히 주어진 문제를 해결하는 것이 아니라, 해결해야 할 문제를 스스로 발굴하고 정의하는 역할을 합니다.이처럼 도메인 마다 또는 회사에 따라 다양한 업무를 수행하는 데이터 사이언티스트가 되기 위해서 꼭 필요한 필수역량이 있습니다. 바로 통계와 머신러닝, 딥러닝 등의 기법을 사용하여 비정형 및 정형 데이터에서 패턴을 찾고 예측 모델을 개발할 수 있어야 하는건데요.
아이펠 데이터 사이언티스트 과정은 이론과 실무 역량을 균형 있게 다루고, 기업에서 원하는 문제해결 능력을 갖춘 인재로 성장할 수 있는 커리큘럼을 마련했습니다.
SQL, 데이터 전처리, 머신러닝, 시계열 분석, 추천 시스템, 딥러닝 등 데이터 사이언티스트 채용공고에서 빠짐없이 등장하는 필수 역량을 모두 다루게 됩니다.
이번 글에서는 아이펠의 데이터 사이언티스트 과정이 궁금하신 여러분을 위해 커리큘럼에 대해서 자세히 설명드리겠습니다.
새로운 도전을 희망하는 여러분께 조금이나마 도움이 되시면 좋겠습니다!
아이펠 데이터 사이언티스트 과정 커리큘럼
아이펠 데이터 사이언티스트 과정은 총 24주로 구성되어있습니다.
1. 온보딩&데이터 사이언티스트로 가는 첫 걸음 [1~2주차]
1~2주차는 온보딩과 데이터 사이언티스트로 가는 첫 스텝을 위한 준비 시간입니다.
모두의연구소와 아이펠의 교육철학과 방식에 대해서 알아보고 향후 6개월의 교육과정을 성공적으로 참여하기 위한 커뮤니티 기반 성장형 교육을 이해합니다. 또한 데이터 사이언티스트의 기초 소양인 리눅스와 GitHub 사용과 터미널을 학습하고 파이썬에 대해서 배우게 되는데요.
LMS를 통해 실습 위주로 학습하고, 학습한 내용을 게임형 퀘스트로 풀어가며, 앞으로 진행될 아이펠의 교육에 미리 적응하고 성장하는 데이터 사이언티스트로의 첫걸음을 내딛는 것이죠.
Git(깃)
- 깃은 분산 버전 관리 시스템(Distributed Version Control System) 으로 여러 명의 개발자가 팀으로 프로젝트를 진행할 때, 소스코드의 버전을 관리하는데 주로 사용됩니다.
GitHub(깃헙)
- 오픈소스 플랫폼으로, Git(깃)을 사용하는 프로젝트를 지원하는 웹 호스팅 서비스입니다. 많은 개발자들이 팀 프로젝트 or 오픈소스 관리에 사용하며, 개인 프로젝트를 공유하고 피드백 받은 용도로도 사용합니다. 잘 관리된 깃헙을 통해 개발자의 포트폴리오를 갈음하기도 합니다.
터미널과 리눅스
- 터미널은 컴퓨터와 사용자를 소통시켜주는 텍스트 기반 인터페이스입니다. 그리고 리눅스는 윈도우 macOS 와 같이 운영체제(Operating System) 중 하나입니다. 즉 터미널을 통해 리눅스 운영체제를 사용할 수 있는 것이죠. 현재, 많은 개발도구들이 GUI 형태의 인터페이스를 지원하지만, 그렇지 않은 경우도 많습니다. 리눅스와 터미널 명령어들을 익혀둔다면, GUI를 지원하지 않는 CLI 개발 환경에서도 당황하지 않을 겁니다.
파이썬
- 파이썬은 데이터 사이언티스트에게 필수적인 언어로, 데이터 수집, 전처리, 분석 및 시각화 작업을 효과적으로 수행할 수 있습니다. 파이썬 라이브러리인 NumPy, Pandas, Matplotlib, Scikit-learn 등을 활용하여 복잡한 데이터를 다루고, 통계 분석 및 기계 학습 모델을 구현할 수 있습니다.
2. SQL을 사용하여 데이터베이스 다루기 [3~4주차]
3~4주차는 SQL을 사용하여 데이터베이스를 다뤄봅니다. SQL 기본 문법을 이해하고 이를 활용해서 실습을 진행하고 매출액 분석, 고객 세그먼테이션 프로젝트를 진행하며 배운 것을 적용하는 방법을 익히게 됩니다.
SQL(Structured Query Language)
- SQL은 주로 관계형 데이터베이스 관리 시스템(RDBMS)에서 데이터를 관리하고 조작하는 데 사용되는 표준 프로그래밍 언어입니다. 데이터 사이언티스트는 SQL을 활용하여 데이터베이스에 저장된 대량의 정형 데이터를 효율적으로 추출, 필터링, 집계하고 분석할 수 있습니다.
3. 비정제데이터 체험하기 [5주차]
5주차는 비정제데이터를 체험해봅니다.
현장에서 다루는 데이터는 비정제된 형태를 띈 데이터의 날 것 그자체입니다. 데이터 사이언티스트들은 기업에 주어진 문제를 데이터 관점으로 해결해야하는 과업을 지니고 있기 때문에 날 것의 비정제 데이터를 가공하여 주어진 문제를 풀 수 있어야합니다.
Data Cleaning하는 방법을 통해 결측 데이터의 처리, 이상치 탐지 및 처리, 중복 데이터 처리 및 데이터 형 변환, 텍스트나 시계열 데이터 등 데이터 특성에 따른 처리를 익힙니다.
데이터 병합 및 집계, 그룹화, 피벗테이블 만들기를 통해 데이터를 주어진 문제의 관점으로 재조합하게 됩니다.
로그(log), 원-핫 인코딩(One-hot encoding), 스케일링, 주성분 분석(PCA)의 방법으로 데이터를 분석하기 쉽도록하고 데이터 안에 숨어있는 인사이트를 찾아내기 위한 사전 과정을 거치게 됩니다.
마지막으로 피쳐 엔지니어링을 통해 기존 데이터를 활용하여 머신러닝 모델의 성능을 향상시킬 수 있는 새로운 특성(feature)을 생성하는 방법을 알아봅니다.
피쳐 엔지니어링은 도메인 지식과 창의력을 바탕으로 데이터를 변환하고 조합하여, 모델이 패턴을 더욱 잘 인식할 수 있도록 돕는 것이 목표입니다.
예를 들어, 날짜 데이터에서 요일이나 계절 등의 새로운 특성을 추출하거나, 텍스트 데이터에서 단어의 빈도나 길이 등을 계산하여 수치화된 특성을 생성할 수 있습니다.
효과적인 피쳐 엔지니어링을 통해 모델의 예측 성능을 크게 개선할 수 있기 때문에, 데이터 사이언티스트에게 매우 중요한 기술입니다.
이러한 일련의 과정을 통해, 비정제데이터에서 예측 모델에 맞는 데이터의 가공까지 End to End로 학습합니다.
Data Cleaning
- 데이터 분석에 앞서 결측치, 이상치 등의 문제를 해결하는 과정입니다. 데이터의 품질을 높이고 신뢰할 수 있는 분석 결과를 얻기 위해 필수적인 단계입니다.
Python의 pandas 라이브러리를 활용하여 데이터를 탐색하고 처리하는 방법을 배웁니다.
Data Transformation
- 데이터를 분석에 적합한 형태로 변환하는 과정입니다. 데이터 유형 변경, 집계, 병합, 피벗 등의 작업을 수행하여 데이터를 재구성합니다.
Python을 활용한 데이터 변환 기술을 학습하고 실습합니다.
Feature Engineering
- 머신러닝 모델의 성능을 향상시키기 위해 데이터의 특성을 생성하거나 선택하는 과정입니다. 도메인 지식을 활용하여 새로운 특성을 만들고, 기존 특성을 조합하거나 변환합니다.
특성 선택 기법을 통해 모델에 유의미한 특성을 선별하는 방법을 배웁니다.
4. 적절한 데이터 분석을 위한 기초 통계 [6~7주차]
6~7주차는 적절한 데이터 분석을 하기 위한 기초 통계를 배우게 됩니다.
통계학은 데이터 사이언티스트가 갖추어야 할 핵심 역량 중 하나이며, 데이터 분석과 의사결정 과정에서 필수적인 역할을 합니다. 데이터를 수집, 정리, 분석, 해석하는 데 필요한 도구와 기술을 제공합니다.
통계적 개념과 기법을 이해함으로써 데이터에서 의미 있는 패턴과 통찰력을 도출하여 불확실성 하에서 의사결정을 할 수 있습니다.
가설 검정, 회귀 분석 등의 통계적 기법을 사용하면 데이터에 기반한 객관적인 의사결정을 내릴 수 있습니다.
데이터를 기반으로 미래를 예측하는 모델을 개발하는 데 필수적인 회귀 분석, 시계열 분석 등의 통계적 기법을 사용하여 예측 모델을 구축하고 최적화할 수 있습니다. 데이터의 품질을 평가하고 관리하는 데 도움을 줍니다.
표본 추출, 측정 오차 분석, 이상치 탐지 등의 통계적 기법을 사용하여 데이터의 신뢰성과 정확성을 높일 수 있습니다. 실험을 설계하고 분석하는 데 필수적입니다.
가설 검정, 분산 분석 등의 통계적 기법을 사용하여 실험 결과를 해석하고 인과관계를 파악할 수 있습니다. 데이터 분석 결과를 효과적으로 전달하고 협업하는 데 도움을 줍니다.
통계적 개념과 기법을 이해함으로써 다른 분야의 전문가들과 원활하게 소통하고 협력할 수 있습니다.
통계의 기본개념
- 기술통계는 데이터를 요약하고 특징을 파악하는 데 사용되며, 대표적인 측도로는 평균, 중간값, 분산, 표준편차 등이 있습니다.
- 확률분포와 표본분포는 데이터의 분포 특성을 이해하는 데 중요하며, 이를 바탕으로 모집단의 특성을 추정할 수 있습니다.
- 데이터 시각화는 히스토그램, 상자그림, 선점도 등을 통해 데이터의 분포와 특징을 직관적으로 파악하는 데 도움을 줍니다.
가설검정
- t-검정은 두 집단 간의 평균 차이를 검정하는 데 사용되며, 독립 표본 검정과 대응 표본 검정으로 나뉩니다.
- 비모수 검정은 데이터가 정규분포를 따르지 않을 때 사용되며, 실습을 통해 적용 방법을 익힐 수 있습니다.
- 분산분석(ANOVA)은 세 개 이상의 집단 간 평균 차이를 검정하는 데 사용되며, 사후 검정을 통해 집단 간 차이를 파악할 수 있습니다.
- 적합도, 독립성, 카이제곱 검정은 범주형 데이터의 분포와 관계를 검정하는 데 사용됩니다.
회귀모형
- 상관관계와 인과관계는 변수 간의 관계를 파악하는 데 중요하며, 심슨의 역설과 벅슨의 역설을 이해해야 합니다.
- 선형회귀 모형은 연속형 변수 간의 관계를 모델링하는 데 사용되며, 결정계수, 다중공선성, 절편 등의 개념을 이해해야 합니다.
- 로지스틱 회귀 모형은 범주형 변수를 예측하는 데 사용되며, 오즈비를 통해 변수의 영향력을 파악할 수 있습니다.
통계적 기법을 활용한 프로젝트
- 실험설계, A/B 테스트, 수요 예측 등의 프로젝트를 통해 통계적 기법을 실제 문제에 적용해 볼 수 있습니다.
- 프로젝트를 수행하면서 데이터 수집, 분석, 해석, 의사결정 등의 과정을 경험할 수 있습니다.
5. 머신러닝을 활용한 다양한 데이터 다루기 & 데이터톤 [8~10주차]
8~10주차는 머신러닝을 활용한 다양한 데이터 다루기 & 데이터톤입니다.
데이터 EDA, 전처리 및 시각화 실습에서는 numpy, pandas, matplotlib 등의 라이브러리를 활용하여 데이터를 탐색, 전처리, 시각화하는 과정을 실습합니다.
이를 통해 데이터의 특성과 패턴을 파악하고, 분석에 적합한 형태로 데이터를 변환하며, 이를 시각적으로 표현하는 방법을 배웁니다.
지도학습(분류 및 회귀)와 비지도학습 머신러닝 프로젝트 수행하는 기간에서는 scikit-learn 라이브러리를 활용하여 지도학습(분류 및 회귀)와 비지도학습 알고리즘을 적용한 머신러닝 프로젝트를 수행합니다.
이 과정에서 실제 데이터를 사용하여 문제를 정의하고, 데이터를 전처리하며, 알고리즘을 선택하고 평가하는 전체 과정을 경험하게 됩니다.
지도학습 알고리즘의 이해에서는 로지스틱 회귀, 의사결정 나무, 랜덤포레스트, 그라디언트 부스팅 등 대표적인 지도학습 알고리즘의 원리를 알아봅니다.
각 알고리즘의 특징, 장단점, 적용 가능한 문제 유형 등을 파악하고, 알고리즘 선택 시 고려해야 할 사항을 배웁니다.
비지도학습 알고리즘의 이해에서는 군집화와 차원 축소를 위한 K-평균, 주성분 분석 등의 비지도학습 알고리즘의 원리를 이해하고 설명합니다.
비지도학습 알고리즘의 특징, 적용 분야, 평가 방법 등을 파악하고, 데이터 분석에 활용하는 방법을 배웁니다.
머신러닝을 활용한 다양한 데이터를 다룬 후에는 데이터톤을 통해 주어진 데이터를 활용하여 팀 프로젝트를 완성해보는 시간을 갖습니다.
이 과정에서 EDA, 전처리, 모델 선정, 성능 평가, 성능 향상 등의 실전 경험을 쌓습니다. Task에 적합한 분석 방법을 선택하고, 모델 성능을 평가하기 위한 지표를 설정하며, 결과를 해석하고 개선 방안을 도출하는 능력을 기릅니다.
프로젝트 결과를 발표하고 다른 팀의 피드백을 받으면서 아이디어를 공유하고 협업하는 경험을 합니다.
6. 금융 시계열 체험하기 [11주차]
11주차는 금융 시계열 체험하기 입니다.
시계열 데이터 이해와 전처리에서는 시계열 데이터의 추세, 계절성, 정상성에 대한 개념을 이해하고, 이를 시각적으로 확인하는 방법을 배웁니다.
로그 변환, 차분 등의 전처리 기법을 통해 데이터를 분석에 적합한 형태로 변환하는 과정을 실습합니다.
데이터 시각화와 패턴 분석에서는 Matplotlib 라이브러리를 사용하여 시계열 데이터를 시각화하고, 패턴을 분석하는 스킬을 습득합니다.
자기상관함수(ACF)와 부분자기상관함수(PACF)를 활용하여 데이터의 자기상관성을 이해하고 해석하는 방법을 배웁니다.
시계열 데이터 분류와 전처리 (tsfresh 라이브러리)에서는 Robot execution failures 데이터셋을 활용하여 시계열 데이터를 분류하는 방법을 이해합니다.
데이터 정상화, 추세 및 계절성 제거 등의 전처리 과정을 실습하며, tsfresh 라이브러리의 활용 방법을 배웁니다.
ARIMA 모델과 시계열 분석 (ADF 테스트, 결측치 처리)에서는 ARIMA 모델의 개념과 원리를 이해하고, 시계열 데이터의 안정성을 검정하기 위한 ADF 테스트를 실습합니다.
이를 통해 결측치 처리 방법을 습득하고, ARIMA 모델을 구축하여 성능을 평가하는 과정을 경험합니다.
추세 데이터 라벨링과 시계열 분류 (피처 엔지니어링, 분류 모델)에서는 추세 데이터에 라벨을 부여하고, 피처 엔지니어링을 통해 데이터를 가공하는 방법을 배웁니다.
다양한 분류 알고리즘을 활용하여 시계열 데이터를 분류하고, 모델의 성능을 평가하는 과정을 실습합니다.
7. 딥러닝 [12~13주차]
12~13주차는 딥러닝 입니다. 딥러닝의 전체적인 매커니즘을 이해하는 시간으로 구성되어 있습니다.
딥러닝의 개념 이해에서는 인공 신경망의 개념과 역사를 이해하고, 퍼셉트론, 다층퍼셉트론, 역전파 알고리즘 등의 기본 개념을 학습합니다.
이를 통해 기울기 소실, 과적합 상태 등 딥러닝에서 발생할 수 있는 문제점과 해결 방법을 이해합니다.
텐서와 연산은 딥러닝에 있어서 가장 기본적인 개념입니다.
텐서의 개념, 타입, 타입 변환, 텐서 연산 등과 관련된 코드 연습 문제를 실습하고 딥러닝에서 사용되는 기본 데이터 구조인 텐서에 대한 이해도를 높입니다.
딥러닝 구조와 모델 이해에서는 Tensorflow, Keras 프레임워크를 이해하고, sequential, functional, subclassing API를 간단히 실습합니다.
레이어 개념(dense, activation, flatten layer)을 이해하고, 모델 상세 구조에 따라 모델을 구현합니다.
딥러닝 모델 학습에서는 손실함수, 옵티마이저(SGD, Adam 등), 지표 등을 이해하고, 딥러닝 모델 학습 과정을 실습합니다.
경사하강법, 학습률, MAE, Accuracy 등의 개념을 이해하고, 간단한 코드 실습을 통해 모델 학습 플로우를 경험합니다.
모델 저장과 콜백에서는 mnist 딥러닝 모델을 실습해보고 이 과정을 통해 모델 저장 및 로드하는 방법을 배웁니다.
콜백, earlystopping, tensorboard 등을 활용하여 모델 학습 과정을 모니터링하고 제어하는 방법을 익힙니다.
모델 학습 기술인 미니배치, 스케일링(표준화, 정규화), 가중치 초기화, 하이퍼파라미터 튜닝, 활성화함수 등 모델 학습 기술을 이해합니다.
과소적합, 과대적합 등의 문제를 이해하고, 케라스 IMDB 데이터를 다루는 실습을 진행합니다.
Convolutional Neural Network 이해에서는 Channel Convolution, Pooling 등의 개념을 이해하고, CNN을 활용한 네트워크 구조를 학습합니다.
이미지 데이터 처리에 특화된 CNN 아키텍처의 원리와 활용 방법을 배웁니다.
Object Detection, Segmentation 등 세부 task의 이해에서는 Transfer Learning을 활용하여 효율적으로 fine-tuning하는 방법을 배웁니다.
Object Detection, Segmentation 등 컴퓨터 비전 분야의 세부 task에 대해 이해하고 실습합니다.
8. NLP 프로젝트 톺아보기 [14주차]
14주차는 NLP 프로젝트 톺아보기입니다. 기본적인 텍스트 처리부터 기본 NLP 모델부터 최신 LLM 모델에 이르기까지 전체적인 프로세스에 대해서 배웁니다.
텍스트 처리 및 기본 개념의 이해에서는 문자열 인코딩/디코딩 및 정규 표현식 활용 방법을 실습을 통해 이해해봅니다.
파일, 디렉터리, 모듈, 패키지 등 프로그래밍 기초 개념을 학습하고, CSV, XML, JSON 등 다양한 데이터 형식을 다루는 방법을 배웁니다.
텍스트 전처리와 임베딩에서는 텍스트 데이터를 전처리하고, 다양한 토큰화 기술을 이해하는 시간을 갖습니다.
Word2Vec, FastText, ELMo 등 텍스트 임베딩 기술을 습득하고, 텍스트 데이터를 벡터로 변환하는 방법과 워드 임베딩 학습 과정을 배웁니다.
Word2Vec, FastText, GloVe 등을 활용하여 텍스트를 벡터로 표현하는 방법을 이해해봅니다.
RNN과 텍스트 분석에서는 순환 신경망(RNN)과 텍스트 분석에 대한 심화 학습을 진행하고 영화 리뷰 분류와 한국어 Word2Vec 프로젝트를 수행하며 실전 경험을 쌓습니다.
TF-IDF, 나이브 베이즈 분류 등 텍스트 분석 기술을 활용하는 방법을 배웁니다.
텍스트 생성과 챗봇 구축에서는 텍스트 생성 및 챗봇 모델을 만들고, 관련 프로젝트를 수행합니다. 인코더/디코더 구조와 자연어 생성 기술을 습득하고 활용해봅니다.
최신 언어 모델 및 효율적 학습 기술의 이해에서는 최신 언어 모델(LLM)의 특징과 주요 아키텍처를 이해하고 활용하는 방법을 배웁니다.
LLM 모델을 효율적으로 학습하는 기술을 습득하고, 최신 언어 모델 기반의 프로젝트를 수행해봅니다.
특히 RLHF(Reinforcement Learning with Human Feedback) 방법을 적용하여 KoChatGPT를 구현하는 실습을 진행합니다.
9. 추천시스템 체험하기 [15주차]
15주차는 추천 시스템 체험하기 입니다.
추천 시스템의 기본 개념 및 종류 이해에서는 코사인 유사도와 콘텐츠 기반 필터링, 협업 필터링(사용자 행동 양식 데이터), 잠재 요인 분석(LFA)에 대해 학습하고 적용해봅니다.
다양한 추천 시스템의 종류와 특징을 이해하고, 각 방법론의 장단점을 파악할 수 있습니다.
비슷한 스타일의 아티스트로 추천 및 데이터 처리에서는 비슷한 스타일의 아티스트를 추천하는 방법을 학습하고, 실제 데이터를 다루기 위한 pandas와 데이터 처리 기술을 습득합니다.
Implicit 데이터와 협업 필터링, MF 모델, CSR Matrix를 활용하여 추천 시스템을 구축하는 방법을 배웁니다.
다음 아이템 예측 및 세션 기반 추천에서는 유저의 다음 클릭 또는 구매를 예측하는 추천 시스템을 구현하는 방법을 학습합니다.
세션 기반 추천의 개념을 이해하고, E-Commerce 데이터를 다루며, GRU4REC와 성능 평가 지표를 활용하는 실습을 진행합니다.
딥러닝 기반 추천 시스템에서는 콜드 스타트, 다양성 등의 문제 상황을 이해하고, 이를 해결하기 위한 방법론을 학습합니다.
특히 추천 모델과 시스템 관리에 대한 논문 4편을 살펴보고 코드 실습을 함께 진행합니다. 살펴볼 논문은 다음과 같습니다.
- Neural Collaborative Filtering : 사용자-아이템 상호작용 기반의 전통적인 협업 필터링 접근 방식에 신경망을 결합하여 성능을 개선한 알고리즘입니다.
- DeepFM: A Factorization-Machine based Neural Network for CTR Prediction : CTR(Click-through rate) 예측을 위한 모델입니다. 모든 Order의 interaction을 end-to-end 로 모델링합니다.
- AutoInt: Automatic Feature Interaction Learning via Self-Attentive Neural Networks : 트랜스포머의 핵심 아키텍쳐인 multi head self attention 기반의 모델입니다.
- Hierarchical attention and feature projection for click-through rate prediction : feature 간의 중요도를 hierarchical 구조를 통해 추출합니다.
Shallow 영역과 Deep 영역에 대한 이해를 바탕으로, 어텐션을 활용한 추천시스템의 원리와 구현 방법을 익힙니다.
AutoInt 모델을 구현하고 학습하며, 스트림릿을 사용하여 결과를 시각화하는 실습을 진행합니다.
10. 데이터 분석 실무 [16-17주차]
16~17주차 데이터 분석 실무 알아보기 입니다. 이 기간 동안에는 데이터 분석을 위한 개발환경 구축부터 모델 개발과 배포를 위한 MLOps에 대해서 배우게 됩니다.
개발 환경 구축 및 협업에서는 Jupyter Notebook을 벗어나 코드의 버전 관리와 모듈화를 위한 새로운 개발 환경 구축 실습을 진행합니다.
로컬 환경을 구성한 후 딥러닝 프로젝트를 개발하고 관리하는 방법을 실습합니다. VSCode와 Docker를 활용하여 효과적으로 개발하고, 깃허브 collaborator 설정을 통해 협업 관리 방법을 익힙니다.
하이퍼파라미터 튜닝 및 모델 개발에서는 model.fit() 이외의 방법을 사용하여 세부적인 모델 컨트롤과 디버깅을 수행하는 방법을 배웁니다.
커스텀 데이터와 트레이너를 구현하고, 모듈화를 통해 코드의 가독성과 재사용성을 높이는 방법을 학습합니다. TensorFlow의 tf.data와 tf.keras.model을 상속하여 딥러닝 모델을 개발하는 실습을 진행합니다.
캐글 Yogapose 이미지 및 EfficientNetB0를 사용하여 MoveNet annotation 작업을 수행합니다.
MLOps 및 모델 배포에서는 MLOps의 개념과 중요성을 이해하고, 모델의 지속적인 훈련 및 배포 관리 방법을 학습합니다.
KerasTuner를 활용하여 하이퍼파라미터 튜닝을 수행하는 방법을 익힙니다. 또한, 모델 배포를 위한 TensorFlow Serving API와 tflite 파일 생성 실습을 진행합니다.
11. 아이펠톤 프로젝트 [18-24주차]
18-24주차, 대망의 아이펠 프로젝트 AIFFELthon(아이펠톤) 과정입니다. 팀을 이루어 프로젝트를 수행합니다.
아이디어 기획부터 프로젝트 계획, 관리, 고도화를 수행합니다. 그간 학습한 내용과 기본기를 바탕으로 실제 문제 해결 역량을 십분 발휘합니다.
새로운 문제를 해결하는 과정에서 여러분은 한층 더 성장할 것입니다. 또한 팀장, 팀원의 역할로 프로젝트를 관리하고 수행하며, 시간관리, 역할분담, 원활한 소통 등 소프트스킬도 한층 더 향상될 것입니다!
마치며
여기까지 아이펠 데이터 사이언티스트 과정의 커리큘럼을 함께 살펴보았습니다. SQL, 데이터 전처리, 머신러닝, 시계열 분석, 추천 시스템, 딥러닝 등 데이터 사이언티스트 채용공고에서 빠짐없이 등장하는 필수 역량을 포함한 실무 역량을 균형 있게 다루고, 기업에서 원하는 문제해결 능력을 갖춘 인재로 성장할 수 있는 커리큘럼을 마련했습니다. 뿐만 아니라, 다양한 분야에서 활약 중인 주니어와 시니어 데이터 사이언티스트의 생생한 경험담을 들을 수 있는 커피챗 시간도 분야별로 마련되어 있습니다. 체계적인 커리큘럼과 실무자와의 소통을 통해 데이터 사이언스 분야에서 성공적인 커리어를 쌓아나갈 수 있는 디딤돌이 될 수 있도록 준비했으니 미래 데이터 사이언티스트를 꿈꾸는 여러분의 많은 관심 부탁드립니다!