책소개
허깅페이스를 활용한 최신 인공지능 기술의 핵심 개념과 실무 능력을 제공합니다! 허깅페이스는 현대 딥러닝 분야, 특히 자연어 처리와 컴퓨터 비전 영역에서 널리 사용되는 강력한 도구이다. 이 책은 허깅페이스를 활용하여 다양한 딥러닝 프로젝트를 구축하는 방법을 상세히 다룬다. 트랜스포머 모델의 기본 개념부터 시작하여 자연어 처리, 컴퓨터비전, 멀티모달까지 폭넓은 주제를 다루며, 실제 프로젝트 구현을 통해 실용적인 지식을 제공한다.이 책은 허깅페이스를 활용해 모델 설정, 토크나이저 사용, 데이터세트 처리, 모델 학습 및 평가 등 프로젝트 전 과정을 상세히 다룬다. 또한 최신 모델인 BERT, BART, RoBERTa, T5, LLaMA-3.1 등을 활용한 다양한 자연어 처리 모델과 CLIP, OWLv2, SAM 등을 이용한 컴퓨터 비전 모델, 그리고 BLIP-2, LayoutLM, ViLT, Stable-diffusion 등의 멀티모달 모델을 실습한다. 허깅페이스를 이용해 최신 딥러닝 기술을 실제 프로젝트에 적용하고자 하는 개발자, 연구자, 그리고 데이터 사이언티스트 모두에게 강력하게 이 책을 추천한다!
저자소개
카카오스타일의 데이터사이언스 팀 리더로 현재 데이터 리터러시, 데이터 패브릭, MLOps 프로젝트를 진행하고 있다. 이전에는 어반베이스의 머신러닝 팀 리더를 맡아 컴퓨터비전과 딥러닝을 활용해 2D 도면을 3D로 변환하는 프로젝트를 수행했다. 머신러닝·딥러닝을 비롯해 데이터 품질 관리, 데이터 통합, 비즈니스 인텔리전스 등 데이터 통합에 관심이 있으며, 기술 공유 및 확장 플러그인 배포 등으로 개인이나 조직이 기술을 보다 쉽게 이용하고 활용할 수 있도록 도움을 주고 있다.
목차
▣ 01장: 허깅페이스 알아보기1.1 인공지능과 허깅페이스___1.1.1 머신러닝과 딥러닝___1.1.2 딥러닝을 위한 허깅페이스1.2 트랜스포머___1.2.1 트랜스포머 모델 구조___1.2.2 멀티 헤드 어텐션___1.2.3 마스크드 멀티 헤드 어텐션1.3 파이토치 설치 및 환경 설정___1.3.1 윈도우 / 리눅스___1.3.2 리눅스(ROCm)___1.3.3 맥___1.3.4 구글 코랩1.4 허깅페이스 허브___1.4.1 허깅페이스 알아보기___1.4.2 Models 페이지 알아보기___1.4.3 사전 학습된 모델 다운로드1.5 허깅페이스 리포지터리___1.5.1 모델 리포지터리 생성___1.5.2 모델 파일 업로드___1.5.3 push_to_hub 메서드를 통한 업로드___1.5.4 Git을 통한 업로드▣ 02장: 허깅페이스 트랜스포머2.1 라이브러리 소개___2.1.1 트랜스포머___2.1.2 토크나이저___2.1.3 데이터세트___2.1.4 디퓨저___2.1.5 가속화2.2 모델 설정___2.2.1 PretrainedConfig 클래스___2.2.2 ModelConfig 클래스2.3 토크나이저___2.3.1 PreTrainedTokenizer 클래스___2.3.2 ModelTokenizer 클래스2.4 모델___2.4.1 PreTrainedModel 클래스___2.4.2 ModelModel 클래스2.5 특징 추출___2.5.1 ImageFeatureExtractor 클래스___2.5.2 AudioFeatureExtractor 클래스2.6 이미지 프로세서___2.6.1 ImageProcessor 클래스2.7 오토 클래스___2.7.1 주요 Auto 클래스2.8 파이프라인___2.8.1 파이프라인 종류와 예시___2.8.2 pipeline 함수2.9 데이터세트___2.9.1 선택, 분리, 병합___2.9.2 필터 및 맵___2.9.3 기타 메서드___2.9.4 데이터 업로드2.10 트레이너___2.10.1 트레이너 클래스___2.10.2 트레이닝 아규먼트___2.10.3 토큰 분류 - 개체명 인식2.11 모델 평가___2.11.1 평가 라이브러리▣ 03장: 자연어 처리3.1 텍스트 분류: BERT___3.1.1 BERT___3.1.2 BertTokenizer___3.1.3 BertModel___3.1.4 텍스트 분류 모델 학습3.2 요약문 생성: BART___3.2.1 BART___3.2.2 BartTokenizer___3.2.3 BartModel___3.2.4 요약문 생성 모델 학습3.3 질의 응답: RoBERTa___3.3.1 RoBERTa___3.3.2 추출 질의 응답 모델 학습3.4 기계 번역: T5___3.4.1 T5___3.4.2 기계 번역 모델 학습3.5 텍스트 생성: LLaMA-3.1___3.5.1 LLaMA-3 시리즈___3.5.2 텍스트 생성 모델 실습___3.5.3 텍스트 생성 모델 학습▣ 04장: 컴퓨터비전4.1 제로샷 이미지 분류: CLIP___4.1.1 CLIP___4.1.2 제로샷 이미지 분류 수행4.2 제로샷 객체 검출: OWLv2___4.2.1 OWLv2___4.2.2 제로샷 객체 검출 수행4.3 이미지 세그먼테이션: SAM___4.3.1 SAM___4.3.2 이미지 세그먼테이션 수행▣ 05장: 멀티모달5.1 이미지 캡셔닝: BLIP-2___5.1.1 BLIP___5.1.2 이미지 캡셔닝 수행5.2 문서 질의 응답: LayoutLM___5.2.1 LayoutLM___5.2.2 문서 시각 질의 응답 수행5.3 시각적 질의 응답: ViLT___5.3.1 ViLT___5.3.2 시각적 질의 응답 수행5.4 이미지 생성: Stable-Diffusion___5.4.1 확산 모델___5.4.2 Stable-Diffusion 3___5.4.3 이미지 생성 수행▣ 부록A: 이미지 매칭A.1 이미지 특징 벡터A.2 FAISSA.3 인덱스 유형▣ 부록B: 레이 튠B.1 하이퍼파라미터 최적화 수행B.2 하이퍼파라미터 최적화 결과 비교B.3 하이퍼파라미터 검색 알고리즘▣ 부록C: GPTQC.1 GPTQConfig 클래스C.2 모델 양자화▣ 부록D: 가속화D.1 Accelerator 클래스D.2 모델 분산 학습 수행