아빠는 개발자

[NLP] Hugging Face 본문

NLP/HuggingFace

[NLP] Hugging Face

father6019 2025. 4. 30. 23:52
728x90
반응형

Hugging Face는 최신 자연어 처리(NLP) 기술을 손쉽게 사용할 수 있도록 해주는 AI 플랫폼이자 오픈소스 라이브러리를 제공하는 회사입니다. 특히 Transformers 라이브러리를 통해 BERT, GPT, T5 등 사전학습된 대규모 언어 모델들을 매우 간단하게 활용할 수 있도록 해주며, NLP 뿐 아니라 음성, 이미지, 멀티모달 작업도 지원합니다.

 

1. Hugging Face란?

  • 회사 소개:
    • 2016년 설립, 처음에는 챗봇으로 시작 → 이후 NLP 커뮤니티 중심 플랫폼으로 진화
  • 대표 라이브러리:
    • transformers: NLP 모델 (BERT, GPT 등)
    • datasets: 대규모 데이터셋 로딩/처리
    • tokenizers: 빠른 토크나이저 구현 (Rust 기반)
    • evaluate: 모델 평가 지표 지원 (accuracy, BLEU 등)

2. Transformers 라이브러리

주요 특징:

  • 수천 개의 사전학습 모델을 바로 사용 가능
  • PyTorch / TensorFlow 모두 지원
  • 추론 뿐 아니라 fine-tuning(미세조정)도 간단

 

3. 모델 허브 (Model Hub)

  • 주소: https://huggingface.co/models
  • 누구나 모델을 업로드/공유 가능
  • 다양한 Task 지원:
    • Text Classification
    • Token Classification (NER 등)
    • Question Answering
    • Text Generation
    • Translation
    • Summarization
    • Conversational AI (GPT 기반)

예:

  • bert-base-uncased: BERT 원본 모델
  • gpt2: GPT-2 모델
  • skt/kogpt2-base-v2: 한국어 GPT2 (SKT)

 

 

4.대표적인 사전학습 모델들

아래는 가장 많이 쓰이는 “범용” 모델들입니다. 필요에 따라 가져다 쓰시면 됩니다.

태스크 분류모델 이름 (허브 ID)용도 예시
문장 분류 bert-base-uncased 감정 분석·스팸 분류 등
경량 문장 분류 distilbert-base-uncased 빠른 실험용, 리소스 제약 환경
문장 임베딩 sentence-transformers/all-MiniLM-L6-v2 유사도 검색·클러스터링
개체명 인식 dbmdz/bert-large-cased-finetuned-conll03-english 영어 NER 활용
텍스트 요약 t5-small 추출·추상 요약
텍스트 생성 gpt2 언어 모델링·간단한 생성
다국어 지원 xlm-roberta-base 번역·다국어 분류
 

Tip.
모델 ID 앞에 사용자 토큰이나 API 키가 필요 없고, 코드에서 AutoModelForSequenceClassification.from_pretrained("bert-base-uncased") 처럼 바로 불러올 수 있습니다.

 

 

 

5. 한국어 모델 (한글 전용 실험용)

한글 NLP에도 특화된 모델이 있습니다.

  • kykim/bert-kor-base – 범용 한국어 BERT
  • monologg/koelectra-base-v3-discriminator – 빠른 ELECTRA
  • snunlp/KR-SBERT-V40K-klueNLI – 한글 문장 임베딩
728x90
반응형

'NLP > HuggingFace' 카테고리의 다른 글

[NLP] jhgan vs snunlp vs upskyy  (0) 2025.05.05
[NLP] jhgan  (0) 2025.05.05
[NLP] upskyy  (0) 2025.05.01
[NLP] snunlp  (0) 2025.05.01
[NLP] 가상환경 만들기 - conda  (0) 2025.05.01