안녕하세요 늑대양입니다 😍
이번에 모두의연구소에서 K-디지털 서포터즈로 선정되어 금일부터 12월 23일까지 활동하게 되었습니다.
오늘은 관련 활동의 두 번째 포스팅으로 모두의연구소 신기술 세미나에 참석한 경험을 공유드리고자 합니다.
[체험! 인공지능 | NAVER 'HyperCLOVA' 신기술 세미나]
개발 관련 전문 지식이 없어도 AI의 적용 가능성을 탐색하고 실제 서비스에 적용해 볼 수 있는 노코드 AI 플랫폼인 클로바 스튜디오 내 새로운 기능인 튜닝을 통해 하이퍼클로바 언어 모델의 가능성을 극대화하는 방법과 활용 사례, 관련 기술을 소개합니다!
#초거대언어모델 #하이퍼클로바 #노코드AI #튜닝 #클로바스튜디오
NAVER CLOVA main URL: https://clova.ai/ko
하이퍼클로바 튜닝 서비스 개발기
- NAVER CLOVA 신성진 님 진행
약력
- LG 유플러스 PM
- 모두의 연구소
- 딥러닝 EDU 3기
- 딥러닝 자연어처리
- CompanyAI ML 엔지니어
- NAVER CLOVA 테크리더
Index
- Background: 튜닝 서비스를 개발하게 된 계기
- Overview: Tune-as-a-Service (TaaS) 소개
- Model: TaaS에 사용된 기술
- Wrap-UP: Plan & Q&A
Background.
Hyper CLOVA
- 우리말을 가장 잘 이해하고 구사하는 최초의 초대형 한국어 인공지능!!
- 방대한 한국어 말뭉치로 학습된 초거대 언어모델인 하이퍼클로바는 현재 많은 사내외 서비스에 활용
- 별도의 튜닝 없이, 유저의 예시만을 보고 다양한 능력 발휘 (In-context Learning)
Motivation of tuning
- Performance
- Stability
- Resource
Overview.
Taas
- 초거대 모델을 사용자의 니즈에 특화할 수 있도록 모델 튜닝
- 적은 수의 파라미터만 추가, 학습하여 빠르고 가벼운 튜닝 모델을 사용자에게 제공
Backbone & Serving
- CLOps: 머신러닝 서빙 학습 플랫폼
- FTServe: FasterTransformer 활용, Serving 최적화
Process Overview
- Training Request > Training Process > Save Tuning Model > Serving
Model.
Transformer
- 성능, 효율 면에서 주목받고 있는 모델 구조
- Self-attention:
- 모든 단어-단어 쌍 사이의 의미적 연관성 고려
- 입력된 문장을 입체적으로 분석하는 능력 있음
- 구조
- Encoder, decoder 두 개의 모듈로 구성
- Encoder는 소스 시퀀스 압축
- Decoder는 타깃 시퀀스 생성
- GPT(Generative Pre-trained Transformer)
- Decoder만 사용
- 프리트레인시 디코더 입력: 이전 단어들 <s>, 어제, 카페 (문서의 의미를 이해)
- 프리트레인시 디코더 출력: 다음 단어갔었어 (원하는 구문을 생성)
- Encoder, decoder 두 개의 모듈로 구성
Transfer Learning
- Pretrain한 모델을 다른 task에 재사용(knowledge transfer)
- Pretrain tasks: 마스킹된 문서 복원(T5), 다음 단어 맞추기(GPT) 등
Fine-tuning
- 프리트레인을 마친 모들의 전부를 내가 가진 데이터에 맞게 업데이트
- 정확도 등 성능이 좋지만 비용이 큼
- 학습: 업데이트 대상 파라미터가 많아 메모리, 계산 요구량이 많음
- 인퍼런스: 튜닝 앱이 바뀌는 경우 모델 전체를 교체해야 인퍼런스 가능
- BERT, T5는 파인튜닝이 표준
Transfer Learning - Prompt-tuning (P-tuning)
- 트랜스포머 입력 앞뒤로 몇 개 벡터를 추가하여 해당 벡터들만 내가 가진 데이터로 업데이트
- 백본은 공유한 채로 업데이트 된 이들 벡터만 교체함으로써 다양한 앱에 대응 가능
- 전체를 학습하는 full fine-tuning 방식보다 훨씬 적은 수의 파라미터만을 학습 (~10MB)
- 특히 데이터 양이 적고 Noisy (real world) 할 때, P-tuning을 활용하여 높은 성능을 달성 가능!!
Transfer Learning - LoRA (Low-Rank Adaptation)
- 트랜스포머에 작은 모듈을 추가하고 이 모듈만 내가 가진 데이터로 업데이트
- LoRA의 경우 트랜스포머 레이어 내 쿼리, 키를 계산할 때 개입
- 백본은 공유한채로 업데이트 된 모듈만 교체함으로써 다양한 앱 대응 가능
Wrap-up.
- Small Data를 활용한 Performance의 모델을 Efficient하게 제공!!!
- Computing power
- Small data
- Performance
- 자연어처리 task는 하이퍼클로바 튜닝 (TaaS) 서비스
- 실 서비스 가능한 초거대 모델 튜닝 플랫폼
튜닝으로 하이퍼클로바 언어모델의 잠재력 끌어올리기
- NAVER CLOVA 이예빈 님 진행
Index
- WHY | 왜 튜닝인가?
- WHAT | 튜닝이란? 튜닝서비스 소개
- HOW | 튜닝은 어떻게? 튜닝 기술 소개
- IF | 튜닝을 한다면? 튜닝으로 무엇을 할 수 있나요?
- Behind Story | 튜닝 탄생기!
WHY:
Playground vs Tuning
- 기본 Backbone 모델을 활용하여 In-Context-Learning 방식으로 다향한 NLP Task를 실험하는 공간
- Playground: 플레이그라운드에서 프롬프트 엔지니어링을 거쳐 하이퍼클로바 모델의 가능성 탐색
- Tuning: 유저 데이터셋으로 하이퍼클로바 모델을 튜닝하여, 유저에 최적화된 모델을 API로 사용
WHAT:
데이터셋만 있으면 튜닝을 통해 누구든 나만의 AI 모델을 만들 수 있다!!
- Prompt가 결과물 품질에 큰 영향을 끼침 (Playground)
- 유저 데이터셋에 최적화된, 보다 안정적이고 품질 좋은 결과물 생성 (Tuning)
- 매번 Prompt를 입력할 필요 X
- 데이터셋에 집중된 결과를 얻을 수 있음
CLOVA Studio main URL: https://www.ncloud.com/product/aiService/clovaStudio
HOW:
튜닝!! 어떻게 사용할 수 있나요?
- NAVER Cloud Platform에서 베타 버전 사용 가능
- 노코드 기반의 튜닝!!
- Task 선택(현재 7가지 카테고리 제공) > 데이터셋 업로드 > 튜닝 > 테스트앱/서비스앱 생성
튜닝은 하이퍼클로바 언어모델의 일부를 활용해 유저에 최적화된 모델을 만드는 기법
튜닝을 통해 아래와 같은 효과를 기대할 수 있습니다.
- AI for everyone
- Optimized Model
- Cost & Time Efficiency
- High Performance & Data Efficiency
IF:
튜닝으로 무엇을 할 수 있나요?
- 교정 및 전환
- 규격에 맞는 글쓰기
- Q&A
- 대화
- 창의적 글쓰기
- 분류
- 요약
예시1) 문장 생성: 의류 상품 설명문 생성 (여성의류 & 남성의류)
- 브랜드 아이덴티티 및 제품 속성을 반영한 상품 설명문을 대량 생산 가능!!
- Dataset: 4360건, 상품명 & 상품 설명문
- Output: 상품명에 있는 속성 및 브랜드 아이덴티티를 반영한 설명문 생성
예시2) 문장 생성: 화장품 설명문 생성
예시3) 문체 전환: 인소체 전환
시의성 있는 유행어와 같이 데이터셋의 특수성을 반영한 문체로 전환 가능!!
- 문장 내 의미/감정과 적합한 이모티콘 생성
- 2000년대 유행어가 반영됨
- 의성어에 특수기호가 반영됨
예시4) 대화: MBTI Q&A 봇
MBTI에 관한 어떤 질문을 하든 자연스러운 답변이 가능!!
- Dataset:
- MBTI 카페의 질문 & 답변 1000건
- 나무위키 MBTI 특성을 Q&A 형태로 가공한 데이터 500건
- Output:
- 각 유형에 적합한 답변 생성
- MBTI 속성을 답변에 반영
- 실제 사람이 작성한 듯이 자연스러운 답변
예시5) 대화: 웹소설 주인공과 대화하기
판타지 웹소설 주인공의 대사를 튜닝하여 페르소나 기반의 챗봇과 대화 가능!!
- Dataset:
- 요리 주제 현실 판타지 웹소설 <신과 함께 요리천재>
- 주인공 '하루'의 대사 1,200 건
- Output:
- 주인공의 문체, 특징, 성격, 배경 등을 반영한 대화 가능
예시6) 대화: 웹소설 주인공과 대화하기
로맨스 웹소설 주인공의 대사를 튜닝하여 페르소나 기반의 챗봇과 대화 가능!!
- Dataset:
- 로맨스 웹소설 <내가 저지른 결혼>
- 주인공 '도하'의 대사 1,200 건
- Output:
- 주인공의 문체, 특징, 성격, 배경 등을 반영한 대화 가능
이외에도 튜닝을 활용해 다양한 도메인의 NLP 과제를 다방면으로 수행 가능!!
- 이커머스 도메인
- 리뷰 분류
- 고객 FAQ 분류
- 고객 FAQ 자동 답변
- 상품명/상세 설명 생성
- 콘텐츠 도메인
- 글감 생성
- 캐릭터 페르소나 기반 챗봇
- 콘텐츠 창작
- 대사 생성
- 에듀케이션 도메인
- 교육용 챗봇
- 문서 기반 Q&A 챗 생성
- 교육용 문서 생성
- 대입 자소서 생성
튜닝은 현재 NAVER 내에서도 고도화가 진행중!!
Behind story:
튜닝 탄생기
- AI 서비스 기획자로 살아남기
- 기획자: AI 연구자 간 긴밀한 엽업 중
- 이를 통해 서비스 피쳐와 모델을 동시에 개선해나가고 있음(예: 학습 시간, 데이터셋 규격, 튜닝 결과물 품질 등)
- 언어데 대한 이해도와 기획력이 중요한 서비스!!
기획자는 다양한 직무와 협업을 진행
- AI 연구자
- FE/BE 개발자
- 디자이너
AI 모델 기획에 도전
- 튜닝을 통해 하이퍼클로바 모델의 기능성 및 능력치 발굴
- 하이퍼클로바 모델을 평가하고 모델이 나아가야할 방향을 기획
- 서비스 및 모델 개선을 위한 다양한 실험
통합 Q&A
MODUCON 2022 소개
MODUCON main URL: https://moducon.kr/
긴 글 읽어주셔서 감사합니다 😍
'Conference > K-디지털 서포터즈' 카테고리의 다른 글
[모두의연구소][K-디지털서포터즈] MODUCON 2022 - Beyond AI, by Community (0) | 2022.12.23 |
---|---|
[모두의연구소][K-디지털서포터즈] 개발자의 강화학습 (개발자가 강화학습을 취미로 배운다면?) (0) | 2022.12.06 |
[모두의연구소][K-디지털서포터즈] Beauty AI Conference: Data-Centric Vision AI for Beauty (1) | 2022.11.30 |
[모두의연구소][K-디지털서포터즈] Diffusion 관련 논문 리뷰 1 (0) | 2022.11.24 |
[모두의연구소][K-디지털서포터즈] 경험공유회: AI 비전공자로 AI 논문쓰기 (0) | 2022.11.22 |