Transformer 모델은 문장 속 단어와 같은 순차 데이터 내의 관계를 추적해 맥락과 의미를 학습하는 신경망이다.
Hugging Face는 다양한 트랜스포머 모델과 학습 스크립트를 제공하는 모듈
사용 방법
#설치
!pip install transformers
#파이프라인 활용하기
from transformers import pipeline
>>> classifier = pipeline('sentiment-analysis')
>>> classifier("But I'm a creep. I'm a weirdo. What the hell am I doin' here?")
[{'label': 'NEGATIVE', 'score': 0.9873543381690979}]
: 학습된 클래스 레이블이 없는 상황에서 새로운 뭄ㄴ장을 주어진 후보 클래스 레이블로 분류
>>> classifier = pipeline('zero-shot-classification')
>>> classifier(
'this is a course about the transformers library',
candidate_labels=['education', 'politics', 'business']
)
{'sequence': 'this is a course about the transformers library',
'labels': ['education', 'business', 'politics'],
'scores': [0.9224742650985718, 0.05610811710357666, 0.02141762152314186]}
>>> generator = pipeline('text-generation')
>>> generator('In this course, we will teach you how to', num_return_sequences=10, max_length=30)
Mask 처리된 부분을 예측해 단어를 채울 수 있다.
>>> unmasker = pipeline('fill-mask')
>>> unmasker('This course will teach you all about <mask> models', top_k = 2)
>>> ner = pipeline("ner", grouped_entities = True)
>>> ner("My name is Sylvain and I work at Hugging Face in Brooklyn.")
#"Sylvain"이 "PER" (사람)로, "Hugging Face"가 "ORG" (조직)로, 그리고 "Brooklyn"이 "LOC" (장소)로 인식
>>> QA = pipeline('question-answering')
>>> QA(
question = 'Where do I work?',
context = "My name is Sylvain and I work at Hugging Face in Brooklyn"
)
>>> summarizer = pipeline("summarization")
>>> summarizer(""" ~~
""")
>>> translator = pipeline("translation", model = "Helsinki-NLP/opus-mt-fr-en")
>>> translator("Ce course produit par Hugging Face ")