8장. ML을 사용하여 텍스트 생성하기
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
2022년 ChatGPT가 출시되면서 생성형 AI라는 단어가 일반 어휘집에 등장했습니다. Cloud 기반 AI와 채팅할 수 있는 이 간단한 애플리케이션은 인간 경험의 거의 모든 것에 대한 지식으로 사용자의 질문에 답할 수 있다는 점에서 거의 기적적으로 보였습니다. 지난 장에서 살펴본 순환 신경망을 뛰어넘는 매우 진보된 진화, 즉 트랜스포머라는 기술을 사용하여 작동했습니다.
트랜스포머는 한 텍스트를 다른 텍스트로 바꾸는 패턴을 학습합니다. 충분히 큰 트랜스포머 아키텍처와 학습할 수 있을 만큼 큰 텍스트 세트가 있으면 GPT 모델(GPT는 생성적 사전 학습 트랜스포머의 약자)은 텍스트 다음에 따라오는 다음 토큰을 예측할 수 있습니다. GPT를 보다 사용자 친화적인 애플리케이션으로 감싸면서 완전히 새로운 산업이 탄생했습니다.
트랜스포머로 모델을 만드는 것은 이 책의 범위를 벗어나지만, 15장에서 트랜스포머의 아키텍처를 자세히 살펴보겠습니다.
트랜스포머를 사용한 모델 훈련에 관련된 원리는 RNN이나 LSTM과 같은 더 작고 간단한 아키텍처로 복제할 수 있습니다. 이 장에서는 훨씬 더 작은 텍스트 말뭉치인 아일랜드 전통 노래로 이를 살펴보겠습니다.
예를 들어, 유명한 TV 쇼의 이 텍스트 대사를 생각해 보겠습니다:
넌 아무것도 몰라, 존 스노우.
RNN으로 생성된 다음 토큰 예측 모델이 이 노래 가사에 대한 응답으로 이 가사를 내놓았습니다:
넌 아무것도 몰라, 존 스노우
그가 주둔하고 있는 곳이
코르크든 파랑새의 아들이든 간에
여름으로 항해
오래되고 달콤한 길고 기쁨의 반지
그래서 나는 야생 콜린이 죽을 때까지 기다릴거야.
이 텍스트는 작은 말뭉치로 학습된 매우 간단한 모델에 의해 생성된 것입니다. 줄 바꿈과 문장 부호를 추가하여 약간 개선했지만, 첫 줄을 제외한 모든 가사는 이 장에서 구축 방법을 배우게 될 모델에 의해 생성되었습니다. 야생의 콜린이 죽어가는장면을 언급하는 것이 꽤 멋지네요. 존 스노우가 나오는 드라마를 본 적이 있다면그 이유를 이해할 수 있을 거예요!
지난 몇 장에서는 먼저 텍스트 기반 데이터를 신경망에서 처리할 수 있는 숫자와 시퀀스로 토큰화한 다음 임베딩을 사용해 벡터를 사용해 감정을 시뮬레이션하고 마지막으로 심층 및 반복 신경망을 사용해 텍스트를 분류하는 등 텍스트 기반 데이터에 PyTorch를 사용하는 방법을 살펴봤습니다. 이 모든 것이 어떻게 작동하는지 설명하기 위해 작고 간단한 풍자 데이터 세트를 사용했습니다.
이 장에서는 기존 텍스트를 분류하는 대신 텍스트를 예측하여 텍스트를 생성할 수 있는 신경망을 생성하는 것으로 방향을 전환해 보겠습니다.
텍스트 말뭉치가 주어지면 네트워크는 텍스트 내의 단어 패턴을 학습하고 이해하여 시드라고 하는 새로운 텍스트 조각이 주어지면 다음에 어떤 단어가 나올지 예측할 수 있습니다. 네트워크가 이를 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access