Natural Language Processing
🗨️

Natural Language Processing

멘토
세션 시간
세션 시간 토요일 오후 2시 - 5시 (대면)
모집 인원
모집 인원 6명 (2개 팀)
과제 및 면접
과제 O | 면접 O
cleanUrl: "24su-challenge/nlp"

🗒️ NLP 2024 여름 커리큘럼


💡
모집 인원 6명 (2개 팀)
활동 시간 | 매주 토요일 오후 2시 - 5시
활동 방법 | 주 1회 대면 정기 세션 + 팀별 미팅(대면 권장)
  • 세션 장소는 추후 결정되며, 이전 기수는 신촌 / 강남에서 진행했습니다.

🤗 NLP가 무엇인가요?

NLP(Natural Language Processing)은 우리말로 자연어 처리라고 하며, 인간의 언어를 컴퓨터가 이해하고 활용할 수 있게 하는 기술입니다. ChatGPT의 등장으로 인공지능, 특히 NLP에 대한 관심이 폭발적으로 증가했습니다. 최근 몇 년간 대규모 언어 모델(LLM)이 셀 수 없이 등장했고, 관련 연구는 연일 쏟아지고 있습니다. 인간의 사고와 소통은 모두 언어를 매개로 이루어지는 만큼, 인공지능 연구의 종착지인 인공일반지능(AGI)에 도달하기 위해서는 언어를 통해 인간과 AI가 소통하는 방법에 대한 이해가 필요합니다.
 
NLP 팀에서는 논문 리뷰를 통해 자연어 처리의 발전 과정을 전반적으로 공부하고, 관련 개념을 바탕으로 프로젝트를 진행합니다. AI 및 NLP에 대한 사전 지식이 필요하지는 않지만, 짧은 기간 안에 프로젝트를 수행해야 하는 만큼 최소한의 개발 경험이 요구될 수 있습니다.
 
'24년 deep daiv. 여름 기수 NLP 팀은 아래 목표를 갖고 있습니다.
  1. NLP 전반에 대한 배경지식을 쌓고, 기존의 연구를 분석하는 방법을 익히기
  1. 과정 중심의 자연어 처리를 활용한 딥러닝 프로젝트를 End-to-End로 경험하기
 

🤔 모집 인원과 대상이 어떻게 되나요?

모집 인원은 6명으로 최대 두 팀을 구성하여 활동합니다. 인공지능과 자연어처리에 관심이 있는 분이라면 누구나 지원할 수 있습니다. 데이터 전처리 경험이 있다면 도움이 되지만, 기본적인 파이썬 코딩 능력만 있어도 충분합니다. 필요한 지식과 기술은 daiv.에서 함께 공부하면 됩니다 😄 단, daiv.의 모든 활동은 팀 단위로 이루어지기 때문에 본인이 팀 프로젝트에 적합하다는 것을 보여주셨으면 합니다. 약 3개월의 기간동안 몰입해서 성장하고자 하는 열정과 의지만 있다면, 주저하지 말고 도전하세요!
 
단, 자연어 처리 뿐만 아니라 인공지능 분야에서는 논문 읽기가 빠질 수 없습니다. 영어에 대한 거부감과 논문을 읽는 데 부담이 없어야 합니다.
 
☑️
(Optional) 면접 안내
지원 인원에 따라 면접 절차가 추가될 수 있습니다.
일시 7월 28일 일요일 오후 4시-10시
형식 일대일 면접, 온라인 ZOOM 또는 전화
예상 소요 시간 20분 이하
7월 26일 (금) 오후 10시 이전에 면접 대상자에게 안내 메일이 발송될 예정입니다.
 
면접에서는 지원서에 작성한 내용과 과제에 대한 간단한 질문이 주어집니다.
기술적인 내용에 대해서는 묻지 않으니, 부담없이 참여하시면 됩니다!
 

🗓️ 주차별 계획

활동 내용과 시간은 진행 상황을 고려하여 변경될 수도 있습니다.
정기세션에서는 리뷰한 논문을 발표하고, 관련 내용에 대한 논의를 진행합니다.
주차
활동 내용
1주차
OT : Deep Learning, NLP Overview
2주차
Embedding, Sequence Modeling
3주차
Transformer, GPT, BERT
4주차
LLM Optimization (PEFT, Promt Engineering, RAG)
5주차
Open-source LLMs
6주차
프로젝트: 데이터 전처리
7주차
프로젝트: 모델 구현
8주차
프로젝트: 세미나 준비
9주차
프로젝트: 세미나 준비
10주차
프로젝트: 리허설
주차별 활동 세부 사항이 궁금하다면 토글을 열어 확인해주세요!
1주차 | Deep Learning, NLP Overview
인공지능 분야에 대한 전반적인 개념과 자연어 처리 분야를 이해하는 시간을 갖습니다.
  • 인공지능, 머신러닝, 딥러닝 개념
  • 자연어 처리(NLP)와 전산 언어학(Computational Linguistics)의 차이
  • 다양한 NLP 태스크 (기계 번역, 구문 분석, 형태소 태깅 등)
2주차 | Embedding, Sequence Modeling
Text Embedding 개념과 딥러닝 모델이 자연어 텍스트를 처리하는 방법을 이해합니다.
이를 바탕으로 시퀀스 모델링이 수행되는 방식을 이해합니다.
  • 분산 표현, 단어 임베딩 (word2vec, Glove, FastText)
  • 토큰 및 토큰화
  • Seq2Seq 모델, 어텐션 메커니즘
3주차 | Transformer based Language Models, BERT/GPT
Transformer 아키텍처와 이를 기반으로 한 언어 모델에 대해 알아봅니다.
  • BERT Series (RoBERTa, DistilBERT, ELECTRA etc.)
  • GPT Series (GPT-1, 2, 3, Instruct GPT)
4주차 | LLM Optimization (PEFT, Prompt Engineering, RAG)
LLM을 효율적으로 사용하고, 성능을 최적화하는 기법에 대해 알아봅니다.
  • Zero, One, Few-Shot Prompting
  • Chain of Thought Prompting
  • LoRA, Q-LORA (PEFT, Quantization)
  • Retrieval Augmented Generation (RAG)
5주차 | Open-source LLMs
오픈소스 LLM을 이해하고, 언어 모델을 훈련하는 방법을 알아봅니다.
  • Llama Series
  • PyTorch, HuggingFace
  • 언어 모델의 구조 이해 심화
6주차 ~ 10주차 | 프로젝트 기획
팀 단위로 프로젝트를 수행합니다.
  • 프로젝트 주제와 관련된 기존 연구 또는 사례 조사
  • 프로젝트 파이프라인 구체화
 
 

🔥 사전 과제 안내

💡
과제는 개인 노션에 작성 후 링크를 제출해주세요. 제출 시 아래 설정을 확인해주세요.
  1. 우측 상단 공유 - 게시 - 웹에 게시 클릭
  1. 웹에 게시된 상태에서 사이트 설정 - 사이트 사용자 지정 - 상단 파란 박스 클릭 - 템플릿 복제 허용

필수 과제

NLP 지원서 작성
  • 인공지능 분야에 관심을 갖게 된 계기, 특별히 자연어처리를 공부하고 싶은 이유에 대해서 간단히 말씀해주세요.
  • AI 관련 경험이 아니더라도, 개발 및 팀 프로젝트 경험이 있다면 과정을 중심으로 소개해주세요.
  • NLP 기술을 활용하여 수행하고 싶은 프로젝트에 대해 설명해주세요.

선택 과제

가산점이 있지만, 정답은 없습니다. 실력이 아닌 참여 의지를 확인하기 위함입니다.
 
Deep Learning 아티클 정리
인공지능 분야는 급속도로 발전하고 있습니다. 그런 만큼 트렌드를 따라가기 위해서는 발표된 지 얼마 되지 않은 논문이나, 영어 원문으로 작성된 뉴스를 읽을 일이 많습니다. 그만큼 기술적인 글을 영어로 읽는데 부담이 없어야 합니다. 이와 관련하여 한 가지 사전 과제를 준비했습니다.
 
인공지능 분야의 세계적인 석학인 Yann Lecun, Yoshua Bengio, Geoffrey Hinton이 머신러닝과 딥러닝의 전반을 소개한 내용을 담아 네이처지에 게재한 글입니다. 이 글은 입문자에게 이 분야에 대한 전반적인 지식을 제공할 뿐만 아니라, 논문 읽기에 대한 문턱을 낮추는 데도 많은 도움이 됩니다.
 
아래 링크에서 PDF 파일을 다운로드할 수 있습니다.
 
  • 논문에서 “Backpropagation to train multilayer architectures ~ Image understanding with deep neural networks”를 제외한 부분을 읽고, 이해한 내용을 정리해주세요.
  • 내용을 번역하기보다는 딥러닝의 발전 과정에 대한 본인의 해석을 담아주세요. 형식과 분량은 자유입니다.