nlp 썸네일형 리스트형 [논문 리뷰] 팩트체크 시스템의 기초를 마련한 FEVER 데이터셋 FEVER: a large-scale dataset for Fact Extraction and VERification (논문 링크) 논문 이름은 a large-scale dataset for Fact Extraction and VERification. 사실 추출과 검증을 위한 대규모 데이터셋으로, 줄여서 FEVER라고 부릅니다. 이 논문은 2018년에 발표됐고, 셰필드 대학교와 아마존 리서치 연구자들이 함께 쓴 논문이라는 점이 인상적입니다. 이런 데이터셋을 만든 이유?먼저 논문 서론에서 이 데이터셋을 만든 이유에 대해서 3가지 이유를 소개하고 있습니다. 첫 번째는 검증에 대한 수요가 늘어나는 것인데요. 저널리즘 관점에서 가짜 뉴스를 판별하는 문제는 과거부터 뜨거운 문제였죠. 이 외에도 논문을 쓸 때나 제.. 더보기 [NLP] 경진대회 발표 및 정리 우리 팀이 1등!!! 하핫다른 팀들이 한 삽질 및 인사이트들 공유한 부분을 정리했다. 모델 레이어 프리징T5 모델, 한국전자기술연구원에서 한국어 데이터셋 사전학습된거 - 메모리 누수 - Qlora를 써도 해결이 안됐음젬마 모델 - 구글 베이스의 ko-gemma 2-9b it 이것도 메모리 누수. LoRa 사용하려고 했는데, 안됐음.. 앙상블 적용하셨다는데, 모델 레이어 프리징. 소프트 보팅 방식 사용. 멘토님 의견 -> 데이터 증강할때 LLM한테 퓨샷 샘플을 더 넣어줘서 전이학습을 시켜줬으면 좋았을 것 (데이터셋이 번역한거라서 LLM이 쌩으로 만드는 거랑은 많이 디스트리뷰션이 다름)데이터 오류 발견! 데이터가 노이지한 데이터임.. (요약문에 대화문이 들어가 있는다던가..) 같은 내용의 대화문인데 형식만 .. 더보기 [NLP] VRAM이 딸려서 모델이 안돌아갈때 할 수 있는 방법들 VRAM(Video RAM) = 그래픽 처리 장치(GPU)에 내장된 고속 메모리. GPU와 실시간으로(아주아주 빠르게) 데이터를 주고받을 수 있다. 모델의 파라미터, 배치, 연산의 중간 결과 등을 저장하는 역할을 함.딥러닝 모델을 학습시키거나 파인튜닝할 때, 큰 모델, 대용량 데이터를 넣으려면 VRAM이 많이 필요. (VRAM 용량이 부족하면 데이터, 모델을 못넣음) VRAM이 부족한데 모델은 꼭 돌려보고 싶다면?1) 배치를 줄이거나, 작은 모델을 쓴다. 대신 작업 속도가 느려지고, 품질이 낮아짐.- 배치를 줄이고, 작은 배치를 여러 번 처리한 후 가중치를 업데이트(Gradient Accumulation) -> 이번 대회에서 가장 많이 쓰고 있는 방법! 일반적인 학습: 배치마다 손실함수의 그래디언트를 .. 더보기 [NLP] EXAONE 모델 가져다가 추론만 시키기 멘토링때 멘토님이 EXAONE 모델도 추천을 해주셔서 대회 하루 남겨놓고 급하게 추론만이라도 돌려본다. 30분이 지났는데도 아직도 요약문 만드는 중.. 생각보다 오래걸린다. 현재 사용하고 있는 모델: BM-K/EXAONE-3.0-7.8B-Daily-Conversation-Summary링크에 가면 Quick Start라고 어떻게 쓰면 되는지 나와있는데, 이 방법대로 따라갔다.먼저 모델을 불러와준다. (트랜스포머 버전 안맞으면 로드가 안됨.. 관련글)import torchfrom transformers import AutoTokenizer, AutoModelForCausalLMdevice = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')mo.. 더보기 [NLP] 모델 한번 바꿀 때마다 난관... 우리 팀의 능력자(!) 분께서 또 찾아주신 모델!! EXAONE 모델을 대화문 요약으로 파인튜닝한 모델이 있어서, 이 모델로 인퍼런스 해볼라고 모델 로드하는데 자꾸 막혀서 계속 헤매다가...아 이거 어찌나 짜증나던지.. 클로드한테 물어봐도 자꾸 똑같은 말만 반복하고 access token 을 설정하라는둥, 모델 프라이빗에 있는거 아니냐는둥.. 도돌이표같은 얘기만 계속 하면서 시간을 버림ㅠ 그러다가 원래 모델인 EXAONE-3.0-7.8B-Instruct 페이지를 보다가 뒤늦게 발견했다. "We recommend to use transformers v4.41 or later."트랜스포버 버전을 최신 버전으로 업그레이드하고 액셀러레이터인가? 그거 업데이트하니까 된다..!!!하하하하 ㅠㅠㅠ이 창에서 얼마나 헤.. 더보기 [NLP] 대화의 턴수와 주요 발화자를 토큰으로 추가해보자 가설 1) 대화의 턴수 정보와 발화자의 빈도를 세어서 턴에서 차지하는 비율을 토큰 정보로 주면 성능이 개선되지 않을까?--> 결과적으로 아니였던 걸로.. 대화 턴수 토큰의 효과:요약문의 길이와 상관관계가 있을 수 있음 (긴 대화는 더 긴 요약이 필요할 수 있음)모델이 대화의 전체 구조를 파악하는데 도움특히 encoder_max_len으로 잘린 대화의 경우, 원래 대화가 얼마나 길었는지 인식 가능 발화자 빈도 토큰의 효과:주요 화자 식별을 통해 중요한 정보의 우선순위 결정 가능대화의 주도자가 누구인지 파악하여 요약의 관점 설정에 도움특히 한국어 대화는 주어 생략이 많은데, 주요 화자 정보가 이를 보완할 수 있음import pandas as pdimport redef get_turns_token(turn_c.. 더보기 [NLP] EDA | max_length 확인 학습 데이터인 대화문은 어떻게 생겼을까?트랜스포머 모델은 입력 시퀀스의 최대 길이 제한이 있다. 현재 베이스라인에 설정된 최대 길이는 아래와 같다. "tokenizer": { "encoder_max_len": 512, "decoder_max_len": 100, "bos_token": f"{tokenizer.bos_token}", "eos_token": f"{tokenizer.eos_token}", # 특정 단어들이 분해되어 tokenization이 수행되지 않도록 special_tokens을 지정해줍니다. "special_tokens": ['#Person1#', '#Person2#', '#Person3#', '#PhoneN.. 더보기 [NLP 경진대회] 대회에 들어가며, 베이스라인 이해하기 부트캠프에서 진행하는 3번째 경진대회 NLP가 시작됐다! 가장 기대하고 가장 관심이 많았던 주제였어서 뽜이팅이 넘친다. 일상 대회문을 요약하는 모델을 만드는 것이고, 이번에는 점수 평가 방법이 다른 대회들과 조금 다른 것 같다. 이번 대회에서 얻어가야 할 것텍스트 데이터로 다양한 딥러닝 모델을 구축하는 경험데이터 전처리, 모델 구축, 평가 파이프라인 전반의 사이클을 도는 경험 인공지능 모델의 lifecycle학습 Training 대화문(문제)-요약문(정답)을 주고 모델이 학습하는 과정추론 Inference학습된 모델을 사용하는 단계. 문제(입력)만 주고 정답을 예측/생성하게 하는 단계 EDA학습 데이터를 분석해보면, 대화문과 요약문은 약 5배 차이 정도 난다고. 나중에 인코더와 디코더의 최대 길이를 .. 더보기 이전 1 다음