책이야기

[리뷰]트랜스포머를 활용한 자연어 처리

Ericlee 2022. 12. 31. 00:17
반응형



[도서 소개]

자연어를 찰떡같이 알아듣는 트랜스포머 완벽 해부하기

트랜스포머는 우리 주변에 가득하다! 트랜스포머 아키텍처는 순식간에 자연어 처리 분야를 지배했다. 기자처럼 뉴스를 작성하고, 프로그래머의 코드를 자동 완성하며, 사람들이 원하는 그림을 그려내고 있다. 이 책은 데이터 과학자나 프로그래머가 트랜스포머 모델을 훈련하고 확장할 수 있도록 허깅페이스(🤗)의 트랜스포머스 라이브러리를 활용하는 실용적인 방법을 안내한다. 허깅페이스에서 트랜스포머스 라이브러리를 개발한 엔지니어들이 직접 예제 코드를 설명하며 트랜스포머의 작동 원리와 이를 사용한 문제 해결법, 실제 애플리케이션 도입법까지 차근차근 소개한다. 나만의 트랜스포머를 훈련시키는 방법을 배우고 자연어 처리를 정복해보자.

 

[대상 독자]

- 트랜스포머를 입맛에 맞게 조정하고 싶은 데이터 과학자와 머신러닝 엔지니어

- 자기만의 자연어 처리 애플리케이션을 만들고 싶은 개발자

 

[주요 내용]

- 텍스트 분류, 개체명 인식 등 NLP 작업을 위한 트랜스포머 모델을 빌드 및 디버깅, 최적화하는 방법

- 언어 간 전이 학습에 트랜스포머를 사용하는 방법

- 레이블링된 데이터가 부족한 상황에서 트랜스포머를 적용해 모델 성능을 높이는 방법

- 지식 정제와 양자화, 가지치기 같은 기술을 사용한 트랜스포머 모델 효율화 방법

- 대규모 트랜스포머 모델을 밑바닥부터 훈련하고 여러 GPU 및 분산 환경으로 확장하는 방법

 

[서평]

이 책은 NLP 분야의 주요 트랜스포머 애플리케이션에 대해서 자세하고 다루고 있습니다. 각 챕터 에서는 실무에서 사용하는 예제와 데이터 셋을 사용합니다. 그리고 부가적인 개념에 대해서도 설명을 하고 있습니다. 각 장에서 다루는 작업과 주제는 이렇게 구성 되어 있습니다.

1장은 트랜스포머를 소개하고 관련 용어의 이해를 돕습니다. 또 허깅페이스 생태계도 소개합니다. 2장은 감성 분석 작업에 초점을 두고 Trainer API를 소개합니다. 3장은 이어지는 장을 배울 때 도움이되도록 트랜스포머 아키텍처를 자세히 설명합니다. 4장은 다국어 텍스트에서 개체명을 인식하는 작업에 초점을 마춥니다. 5장은 텍스트를 생성하는 트랜스포머 모델의 능력을 탐구하고 디코딩 전략과 측정 지표를 소개합니다. 6장은 텍스트 요약이라는 복잡한 시퀀스 투 시퀀스 작업을 살펴보고 이 작업에 사용하는 측정 지표를 알아봅니다. 7장은 리뷰 기반 질문 답변 시스템을 만드는 데 초점을 두고 헤이스택을 사용한 검색 방법을 안내합니다. 8장은 모델 성능에 초점을 맞춥니다. 의도 감지 작업을 알아보고 지식 정제, 양자화, 가지치기 같은 기술을 탐색합니다. 9장은 레이블링된 대량의 데이터가 없을 때 모델 성능을 향상할 방법을 알아봅니다. 깃허브 이슈 태그를 만들고 제로샷 분류와 데이터 증식 같은 기술도 살펴봅니다. 10장은 파이썬 소스 코드를 자동완성하는 모델을 밑바닥부터 만들고 훈련하는 방법을 알려줍니다. 데이터셋 스트리밍과 대규모 훈련에 대해 배우고 사용자 정의 토크나이저도 만듭니다. 11장은 트랜스포머 모델의 도전 과제와 흥미로운 신생 연구 분야를 소개합니다.

 

트랜스포머는 트랜스포머 모델을 사용하고 훈련하기 위해 여러 추상화 층을 제공합니다. 몇 줄의 코드로 모델에 텍스트 샘플을 전달하고 예측을 확인하는 사용하기 쉬운 파이프라인으로 시작하겠습니다. 그다음 주어진 문제에 맞게 모델을 훈련하기 위해 토크나이저 모델 클래스 Trainer API를 알아 봅니다. 나중에 Trainer를 엑셀러레이트 라이브러리로 바꿔 훈련루프를 완전히 제어하고 대규모 트랜스포머 모델을 밑바닥부터 훈련하는 방법을 알아보겠습니다. 각 장은 대부분 별도의 주제를 다루지만 후반부로 갈수록 작업 수준이 높아집니다. 이런 이유에서 1장과 2장을 읽고 난 후에 관심 있는 주제로 넘어가도 좋습니다. 트랜스포머와 엑셀레이트 외에 다른 라이브러리와 유연하게 통합된 데이터셋도 많이 사용합니다. 데이터셋은 판다스와 비슷한 데이터 처리 기능을 제공하지만 처음부터 대규모 데이터셋과 머신러닝 처리를 위해 설계됐습니다. 이런 도구를 사용하면 거의 모든 NLP 문제를 처리하는데 필요한 것을 전부 갖춘 셈입니다. 

 

요즘 OpenAPI에서 나온 ChatGPT로 큰 이슈가 되고 있습니다. 아마 인공지능이 나아가야할 방향을 ChatGPT가 잘 보여 줬다고 생각합니다. 앞으로의 인공지능 발전은 지금 보다 더 빠르고 더 혁신적으로 갈것입니다. 그 시작이 바로 트랜스포머를 활용한 자연어 처리를 통해서 미래를 준비하기 바랍니다. 

 

 "한빛미디어 리뷰어 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

반응형