인공지능
3주 공부 계획
데이빗제이2
2025. 2. 17. 18:55
Week 1: 기초 수학·ML + 간단 딥러닝 실습
Day 1 (월)
- 목표
- 로드맵 전반 훑어보기, 학습 환경 세팅
- 기초 수학(선형대수, 미분/적분, 확률·통계)에 대한 전체 개요 파악
- [[기초 수학 & 머신러닝 이론]]
- 활동
- 로드맵 전체를 재검토하고, 필요한 Python 환경(Conda/venv), PyTorch 또는 TensorFlow 설치
- 선형대수 & 미분 간단 개념 정리 (행렬 연산, 편미분 개념 복습)
Day 2 (화)
- 목표
- 전통적 ML 알고리즘 핵심 개념 학습
- Scikit-learn으로 간단한 실습 시작
- 활동
- 로지스틱 회귀/의사결정트리/SVM 기본 개념
- Scikit-learn으로 Iris 데이터 분류 실습 (전처리, 학습, 평가)
Day 3 (수)
- 목표
- 전통 ML 모델 실습 확장
- 기초 데이터 전처리(결측치, 인코딩, 표준화) 이해
- 활동
- Kaggle 타이타닉 등 실제 CSV 데이터 활용해 전처리 ~ 모델 훈련
- 여러 모델(XGBoost, RandomForest 등) 비교 분석
- 결과 시각화(MATLAB, seaborn, matplotlib 등 중 편한 라이브러리 사용)
Day 4 (목)
- 목표
- 신경망 기초(Multi-layer Perceptron, Forward/Backward) 이해
- 간단한 MLP로 MNIST 분류 실습
- 활동
- PyTorch (또는 TensorFlow)로 MLP 구성
- MNIST 데이터셋 로드, 학습(Forward/Backward Propagation), 정확도 확인
- Optimizer(Adam vs SGD) 비교
Day 5 (금)
- 목표
- CNN/RNN 기본 구조 파악 및 간단 실습
- 활동
- CNN 구조(합성곱/풀링 개념) 빠르게 학습
- 간단 CNN(MNIST or CIFAR-10) 학습 실습
- RNN 개념만 짧게 훑고, IMDb 감성분석 예제 코드 리뷰 (실습은 선택)
Day 6 (토, 주말 - 강도↓)
- 목표
- 주중 학습 복습, 실습 코드 정리
- 2주차에 배울 “Transformer” 개념 미리 맛보기
- 활동
- 주중 작성한 노트·코드 정리, 궁금점 보완
- “Attention is All You Need” 논문 요약 블로그나 영상 가볍게 시청
Day 7 (일, 주말 - 강도↓)
- 목표
- 휴식 + 부족한 이론/실습 부분 보충
- 2주차 학습 계획 구체화
- 활동
- 전통 ML vs 딥러닝 간 차이 & 연결고리 복습
- Transformer 핵심 용어(Encoder/Decoder, Self-Attention, Multi-head) 미리 살펴보기
Week 2: Transformer, LLM, Prompt Engineering, OpenAI API
Day 8 (월)
- 목표
- Transformer 핵심 구조(Attention, Encoder-Decoder) 이해
- BERT vs GPT 차이 파악
- 활동
- Self-Attention(Scaled Dot-Product) 개념 정독
- BERT(Encoder) & GPT(Decoder) 구조 개념 잡기
- Hugging Face Transformers로 DistilBERT 간단 Fine-tuning 예제 따라하기(감성분석)
Day 9 (화)
- 목표
- LLM(대형 언어 모델) 기초 및 Prompt Engineering 개념 확립
- OpenAI API 기본 사용법 이해
- 활동
- LLM 사전훈련/미세조정, In-context Learning(Few-shot) 개념 학습
- Prompt 구조(System/User/Assistant), Zero-shot/Few-shot 차이 실습
- OpenAI Python 라이브러리 세팅 및 간단 메시지 전송(API Key 관리 포함)
Day 10 (수)
- 목표
- ChatCompletion API 파라미터(temperature, max_tokens 등) 실습
- Prompt Engineering 기법(CoT, ReAct 등) 예제 실행
- 활동
- 다양한 Prompt 시도(Chain-of-Thought, ReAct 기초 예시)
- 학습된 예제 Prompt를 저장/버전 관리(노트 or 깃 리포)
- 응답 토큰/비용 모니터링 방법 파악
Day 11 (목)
- 목표
- 간단한 웹 애플리케이션 구축(예: Flask/FastAPI)
- 실시간 ChatGPT API 연동
- 활동
- Flask or FastAPI 설정 → 엔드포인트(‘/chat’) 구현
- 사용자 입력 → API 호출 → 응답 반환 (JSON 구조)
- (선택) 프론트엔드(HTML/JS) 또는 Streamlit/Gradio로 UI 꾸미기
Day 12 (금)
- 목표
- 2주차 마무리 & 주말에 대비한 정리
- 최종 프로젝트 개요 확정 (LangChain + Vector DB + 에이전트)
- 활동
- 이번 주 학습한 Transformer/LLM/OpenAI API 내용을 다시 요약
- 최종 프로젝트 구상:
- 에이전트가 어떤 Tool을 사용할지
- 어떤 문서를 Vector DB로 넣을지
- 어떤 프레임워크(LangChain 등)를 쓸지
- 필요한 데이터/문서 수집 & 준비
Day 13 (토, 주말 - 강도↓)
- 목표
- 2주차 복습, 프롬프트 작성 노하우 보완
- (선택) 새로 나온 LLM/AI 소식 간단히 탐색
- 활동
- ChatGPT, 다른 오픈소스 모델에 동일 질문 → 응답 비교
- Prompt 최적화(리프레이징) 시도
- 최신 AI 관련 뉴스/블로그 살펴보기
Day 14 (일, 주말 - 강도↓)
- 목표
- 휴식 + 3주차 집중 대비
- LangChain 문서/예제 가볍게 스캐닝
- 활동
- LangChain Overview (공식 문서 빠르게 읽어보기)
- Memory, Chain, Tool, Agent 등 핵심 개념 위주로 정리
- 3주차 구현 계획(라이브러리 설치, 샘플 코드 구조) 구체화
Week 3: LangChain + Vector DB + 에이전트 최종 프로젝트
Day 15 (월)
- 목표
- LangChain 기본 (PromptTemplate, Chain, Memory) 실습 시작
- 문서 로더 & Retriever 개념 잡기
- 활동
- LLMChain으로 간단 텍스트 요약 예제 만들기
- PDF/텍스트 문서 하나 불러오는 Document Loader 실습
- 간단 Retriever로 유사도 검색 → LLM에 context로 전달
Day 16 (화)
- 목표
- Vector DB 구축(Pinecone, Chroma 등 중 택1) & 임베딩 삽입
- RAG(Retrieval Augmented Generation) 간단 구현
- 활동
- OpenAI Embedding API or SentenceTransformers로 문서 임베딩
- Vector DB에 업로드 & 검색(ANN) 테스트
- “RAG 파이프라인” (문서 검색 → 결과 Prompt에 삽입 → 최종 답변) 코드 작성
Day 17 (수)
- 목표
- LangChain 에이전트(Agent + Tools) 다루기
- 최종 프로젝트 초안 완성
- 활동
- ReAct Agent 구조 살펴보고, 간단 계산기 Tool 연동 예시
- Vector DB 검색 Tool 결합 → 에이전트가 필요 시 검색을 수행하도록 설정
- “문서 Q&A 에이전트” 기초 버전 구현:
- 사용자 질문 → 에이전트가 Vector DB Tool로 검색 → 답변 생성
Day 18 (목)
- 목표
- 최종 프로젝트 고도화: 멀티스텝 Reasoning, 출력 형식 개선
- (선택) LangGraph(시각화) 시도
- 활동
- 에이전트가 여러 번의 Reason/Act 단계를 거쳐 답변하도록 설정(체인 로직 개선)
- 답변에 “출처 URL”이나 문서 제목을 표시하도록 Prompt를 수정
- LangGraph 시각화(설치/연동)로 체인 구조 확인 (가능하면 시도)
Day 19 (금)
- 목표
- 프로덕션 MLOps 기초(서빙, 로깅, 보안, 버전 관리) 적용
- Docker 컨테이너화 & 간단 배포 시나리오 점검
- 활동
- Dockerfile 작성 → FastAPI/Flask + LangChain 환경 이미지 빌드
- 로깅(사용자 질의/응답, 토큰 사용량) 구조 설계
- (간단) AWS EC2나 Heroku, Render 등에 배포 테스트
- API Key 비공개 처리(.env) 확인
Day 20 (토, 주말 - 강도↓)
- 목표
- 프로젝트 마무리 점검
- 문서화 & 사용 방법 가이드 작성
- 활동
- README 정리(설치 방법, 실행 방법, 설정 방법)
- Github 리포지토리에 소스코드 업로드 (비공개/공개 여부 설정)
- 간단 데모 영상(스크린 캡처) 녹화해두기(선택)
Day 21 (일, 주말 - 강도↓)
- 목표
- 최종 테스트 & 향후 개선 방안 구상
- 로드맵 전체 회고
- 활동
- 완성된 “문서 Q&A 에이전트”를 실제로 사용해보기, 엣지 케이스 테스트
- 모델 버전/Prompt 버전/Embedding 모델 교체 시나리오 등 향후 확장 아이디어 정리
- 3주 로드맵 전반 회고:
- 가장 유익했던 부분, 보완할 부분
- 추가로 학습해야 할 분야(MLOps 심화, 데이터 엔지니어링, UX 등) 목록화