본문 바로가기
반응형

분류 전체보기1075

자연어 처리(Natural Language Processing, NLP) - transformers 기초, Bert 감정 분류 예제 Transformers 라이브러리?transformers는 딥러닝 기반의 자연어 처리(Natural Language Processing, NLP) 작업을 위한 파이썬 라이브러리이다.주로 최신의 자연어 처리 모델들을 구현하고 사용할 수 있도록 도와준다.Transformers 라이브러리는 Hugging Face라는 회사에서 개발하고 유지 관리하고 있으며, 다양한 언어 모델과 사전 훈련된 가중치를 제공합니다. 가장 유명한 모델로는 BERT, GPT, GPT-2, RoBERTa, XLNet, DistilBERT 등이 있다. Transformers 라이브러리를 사용하면 다음과 같은 작업을 수행할 수 있다.토큰화(Tokenization): 자연어 문장을 작은 단위로 분리하여 모델에 입력할 수 있는 형태로 변환한다... 2024. 8. 11.
기계학습(ML) - epoch, batch size, iteration 기본 의미 기계학습을 진행하면, 코드로 사용하다보면,  epoch, batch, iteration 이라는 파라미터를 볼 수 있느데,  학습을 시작할때 자주 사용되는 용어인 epoch, batch, iteration 에 대해 알아보고자 한다.기계 학습은 데이터를 학습해서 결과를 만들어 내는 과정이라고 할 수 있다.이때 학습할 데이터의 양과 학습 횟수등에 따라서 결과가 달라지게 되는데, 예를 들어보면 다음과 같다.철수 - 172양희 - 140성희 - 330국희 - 10하나 - 400 위와 같은 데이터를 가지고 선형 회계 예측 알고리즘을 이용한다고 생각해보다.만약 국희 라는 데이터가 어떻게 들어가느냐에 따라서 데이터 결과가 달라지기 때문에, 여러번 학습을 해서 데이터의 외곡을 줄이는 게 중요할 수 있지만, 반대로 데이터.. 2024. 8. 11.
자연어 기계학습(ML/Transformer) - temperature, top 파라메터 의미 무엇인가를 사용하고자 한다면, 각 기능의 옵션을 이해할 필요성이 있다.오늘은 자연어 기계 학습에서 최근 각광 받고 있는 Transformer의 파라메터중 temperature와 top은 이 둘은 밀접관 관계가 있다. 그래서 지금 이 둘의 의미에 대해 다루어보고자 한다.그렇게 어렵게 생각할 개념은 아니기 때문에 쉽게 이해가 가능할 것이라고 생각된다.자연어 처리는 input과 output이 존재 하는데, OpenAI기준으로 Prompt 를 입력하면 결과를 출력해주게 된다.OpenAI의 API에서도 temperature와 top 이라는 파라메터가 존재하는데 다음과 같은 의미이다.top 결과를 출력하고자 할때 기계학습은 하나의 결과를 선택하게 된다. 이때 각 데이터의 학습에 따라 가장 적절하고 판단하는 scor.. 2024. 8. 11.
Transformer(Bert/GPT) - Self-Attention, Multi-head Attention 이해 Transformer 모델이란?번역 모델 연구를 통해 나온 모델 (Seq2Seg 기반 모델 )문장 속 단어와 같은 순차 데이터 내의 관계를 학습을 통해 파악해 순차 정보의 맥락과 의미를 학습하는 신경망 모델이라고 할 수 있다.Attention을 가장 중요하게 보는 단어간의 관계를 학습하는 모델로써,  Seq2Seq과 유사한 모델이라고 하였는데, Seq2Seq는 번역을 할때 가장 많이 지정되는 상대 언어의 단어와 점수 차이라고 한다면, Transformer는 Self-Attention은 같은 언어에서의 관계를 다루게 된다는 점이 매우 유사한 점이라고 할 수 있다. 위 내용을 구조를 보면, Multi-Head Attention 이라는 내용이 나오는데 이는 Self-Attention은 병렬로 진행하여 Head.. 2024. 8. 11.
Splunk - Custom Search Commands 에서 Debug log 활성화 Splunk 개발을 진행할 때 오류가 날 경우 로그를 통해서 파악하는 것이 유용하다. 이때 사용이 용이한 방법으로 바로 noop log_DEBUG=* 를 통해 Debug 로그를 활성화 할 수 있다.  문제가 있는 명령을 실행하고 뒤에 파이프라인을 통해 | noop log_DEBUG=*  를 입력하면 Debug 로그가 활성화 된 상태로 실행된다.이후 작업 검사에서 search.log 내용을 확인하여 명령의 문제점을 보다 쉽게 파악이 가능하다.이외에도 Debug 로그를 활성화 하는 방법은 아래 문서에서 확인이 가능하다.Turn on debug logging in Splunk Enterprise Security - Splunk Documentation 2024. 8. 11.
LoRA(Low-Rank Adaptation) - Fine-Tuning 최적화 최근 모델이 거대해 지면이 이를 잘 활용할 수 있는 Fine-Tuning에 집중되고 있는 것 같다.Huggingface도 Parameter-Efficient Fine-Tuning(PEFT) 를 통해 거대 모델을 자신이 알맞게 사용할 수 있도록 Fine-Tuning을 지원해주고 있는데, Transformer 모델 관련하여 2021년 Microsoft에서 공개한 LoRA모델이 PEFT로 큰 인기를 끌고 있어 이를 조사한 내용을 정리해 본다.Row-Rank - rRank는 매트릭스의 기준이 되는 차원으로, 의미가 있는 정보/핵심 정보를 의미한다.여기에 Row를 붙여 Row-Rank, 적은 핵심 정보를 의미한다.LoRA모델은dxd 를 A(dxr) x B(rxd) = dxr 를 통해 배열 곱을 하여 를 통해 핵심.. 2024. 8. 11.
반응형