[실습] 1-2 transformers 시작 - 감성분석, 텍스트 분류 등...

topic. huggingface transformers 라이브러리를 사용해봅시다.


1. 개요

모든 개발자들이나 모든 딥러닝을 하고자 하는 사용자들이 쉽게 접근할 수 있도록 pipeline() 을 사용하는 방법과 AutoClass 를 사용하여 사전 훈련된 모델 및 전처리기를 로드하고 PyTorch 또는 텐서플로우를 이용하여 모델을 빠르게 학습시키는 방법을 알아봅니다.


2. 본론

1. 설치

설치는 파이썬 패키지를 설치하는 방법과 동일합니다.

datasets 은 학습을 위한 데이터를 불러오고 가공하는 용도로 사용합니다.

pip install transformers datasets

또 실습을 위해 필요한 패키지도 설치합니다.

pip install torch
pip install tensorflow

2. pipeline() 사용

pipeline()은 추론을 위해 사전 훈련된 모델을 사용하는 가장 쉽고 빠른 방법입니다.

다양한 양식에 걸쳐 많은 작업에 대해 즉시 사용 가능한 pipeline ()을 사용할 수 있으며

아래 표를 활용하여 사용할 수 있습니다.

Task 설명 Modality
Pipeline
사용예시
텍스트 분류 단어나 문장을 정해진 '라벨' 로 분류합니다. NLP pipeline(task=“sentiment-analysis”)
텍스트 생성 문장을 분석하여 뒤에 이어질 문장을 생성합니다. NLP pipeline(task=“text-generation”)
요약 문장이나 문서를 요약합니다. NLP pipeline(task=“summarization”)
이미지 분류 이미지를 정해진 '라벨'로 분류합니다. Computer vision pipeline(task=“image-classification”)
이미지 분할 이미지의 각 개별 픽셀에 '라벨'을 할당합니다(의미론, 팬옵틱 및 인스턴스 분할 지원). Computer vision pipeline(task=“image-segmentation”)
물체 감지 이미지에 있는 객체의 경계 상자와 클래스를 예측합니다. Computer vision pipeline(task=“object-detection”)
오디오 분류 음성데이터에 '라벨'을 할당합니다. Audio pipeline(task=“audio-classification”)
자동음성인식 음성을 텍스트로 변환합니다. Audio pipeline(task=“automatic-speech-recognition”)
시각적 질의응답 이미지와 질문이 주어지면 이미지에 관한 질문에 답합니다. Multimodal pipeline(task=“vqa”)
문서 질의응답 문서와 질문이 주어졌을 때 문서에 관한 질문에 대답합니다. Multimodal pipeline(task=“document-question-answering”)
이미지 캡션 특정 이미지에 대한 캡션을 생성합니다. Multimodal pipeline(task=“image-to-text”)

 

3. 실습

from transformers import pipeline

classifier = pipeline("sentiment-analysis")
classifier("안녕하세요? 오늘은 날씨가 좋아 기분이 너무 좋아요!")

>>> [{'label': 'POSITIVE', 'score': 0.9754623174667358}]

 

 

3. 결론

파이프라인에 원하는 Task를 넣고 실행하면 자동으로 필요한 모델을 다운로드받습니다.

그 후 가져온 모델을 함수와 같이 프롬프트를 넘기면 응답이 돌아옵니다.

 

이와같이 다른 Task 들도 넣어가며 테스트 해보시기 바랍니다.

 

 Hugging Face 공식문서 인용 - https://huggingface.co/docs

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유