일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ChatGPT
- Bert
- 챗지피티
- gpt2
- MLOps
- 챗GPT
- 신뢰성
- XAI
- 설명가능성
- 인공지능 신뢰성
- 자연어
- 케라스
- 트랜스포머
- ML
- DevOps
- GPT
- Tokenization
- 지피티
- Transformer
- 딥러닝
- GPT-3
- fairness
- 인공지능
- AI Fairness
- cnn
- 머신러닝
- nlp
- trustworthiness
- Ai
- word2vec
- Today
- Total
목록GPT/개념정의 (13)
research notes
AI가 생성한 자료를 식별하기 위해서는 고도화된 기술력이 뒷받침되어야 한다. 현재 이용할 수 있는 최선의 대안인 AI 기반 감지 도구 및 워터마킹은 일관성이 없고(확률 베이스) 비영구적이며 때에 따라 정확도가 떨어진다. 이에 대한 대안으로 C2PA가 대안으로 주목받고 있다[1]. C2PA는 출판사, 회사 등이 미디어의 출처와 관련 정보를 확인하기 위해 미디어에 메타 데이터를 삽입할 수 있도록 하는 개방형 기술 표준. C2PA는 AI 생성 이미지에만 적용되는 것이 아니며 카메라 제조업체, 언론사 등에서도 동일한 표준을 채택하여 미디어 콘텐츠의 출처와 기록(또는 출처)을 인증하고 있다[2]. C2PA 기술은 컨텐츠 레이블링(Contents labeling)이라는 단어와 혼용 되어 쓰이고 있는 것으로 파악 C..
1. OpenAI API 정의 OpenAI API는 OpenAI가 제공하는 서비스에 액세스하기 위한 프로그래밍 인터페이스. OpenAI API를 사용하면 개발자는 GPT를 활용해 텍스트 생성, 번역, 요약, 질문 응답 등 다양한 자연어 관련 자신의 서비스를 개발할 수 있다. OpenAI API 지원 프로그래밍 언어는 공식적으로 파이썬과 Node.js이며, API 활용시 비용이 발생할 수 있으므로 이를 확인하는 것이 중요하다. 2. OpenAI API Key OpenAI API 서비스를 사용하기 위해서는 사전에 API키 발급이 되어야 한다. - https://openai.com/blog/openai-api 사이트 이동 - 로그인 → 계정 아이콘 클릭 → View API Keys 클릭 - Create a n..
1. 프롬프트 엔지니어링이란? 프롬프트 엔지니어링이란 챗 GPT(ChatGPT)와 같은 생성형 인공지능에(Generative AI) 사용되는 명령글인 '프롬프트(생성형 AI 모델에서 이미지나 텍스트 결과를 생성하기 위한 명령어를 의미)'를 다양한 방식으로 조작하고 지속적으로 개선하여 사용자가 원하는 최선의 답변을 생성하도록 돕는 것이다. 몇몇 기사에 따르면 현재 프롬프트를 전문적으로 만들어 내는 '프롬프트 엔지니어'라는 새 직업이 주목받고 있으며, 더 나아가 프롬프트를 전문적으로 판매하는 프롬프트베이스에서는 대략 700명의 프롬프트 엔지니어가 활동하고 있다고 한다 [1]. 생각해보면 프롬프트는 ChatGPT와 같은 서비스를 이용할 때 사용자가 궁금한 내용에 대해 작성하는 단순한 텍스트 질문이기 때문에(예..
*** Jay Alammar blog 필요 부분 발췌 내용 *** https://jalammar.github.io/illustrated-gpt2/ https://jalammar.github.io/how-gpt3-works-visualizations-animations/ The illustrated GPT-2 □ Looking Inside GPT-2 The simplest way to run a trained GPT-2 is to allow it to ramble on its own (which is technically called generating unconditional samples) – alternatively, we can give it a prompt to have it speak about..
References: [1] BERT와 GPT로 배우는 자연어 처리, 이지스 퍼블리닝, 이기창 [2] ratsgo's NLP blog, https://ratsgo.github.io/nlpbook/docs/language_model/transformers/ 1. BERT와 GPT차이 항목 GPT BERT 모델 구조 GPT(트랜스포머의 디코더) BERT(트랜스포머의 인코더) 프리트레인 태스크 다음 단어 맞히기 빈칸 맞히기 파인튜닝 다음 단어 맞히기 각 다운스트림 태스크 - BERT는 프리트레인 태스크와 파인튜닝 태스크가 서로 다르다. 하지만 GPT(문장 생성 과제)는 프리트레인과 파인튜닝 태스크가 '다음 단어 맞히기'로 같다. 즉, 문장 생성 과제는 프리트레인과 파인튜닝 태스크가 동일하므로 프리트레인 모델의..
BERT는 구글에서 발표한 최신 임베딩 모델이며 트랜스포머를 이용하여 구현되었다. 또한, 위키피디아(25억 단어)와 BooksCorpus(8억 단어)와 같은 레이블이 없는 텍스트 데이터로 사전 훈련된 언어 모델이다. BERT가 높은 성능을 얻을 수 있었던 것은, 레이블이 없는 방대한 데이터로 사전 훈련된 모델을 가지고, 레이블이 있는 다른 작업(Task)에서 추가 훈련과 함께 하이퍼파라미터를 재조정하여 이 모델을 사용하면 성능이 높게 나오는 기존의 사례들을 참고하였기 때문이다. 다른 작업에 대해서 파라미터 재조정을 위한 추가 훈련 과정을 파인 튜닝(Fine-tuning)이라고 한다. 아래 그림은 BERT의 파인 튜닝 사례를 보여준다. 우리가 하고 싶은 태스크가 스팸 메일 분류라고 하였을 때, 이미 위키피..
GPT-1: Generative Pre-Training of a Language Model 1. 연구배경 보통 NLP 관련 데이터 셋은 Labeled 데이터 세트 보다 Unlabeled 형태의 데이터 셋이 훨씬 많다. 즉, 언어 모델을 학습하는데 필요한 데이터의 활용측면에 있어 레이블 된 데이터와 그렇지 않은 학습데이터 수의 차이가 상당하다. 따라서, Unlabeled 데이터 셋을 이용해 학습을 한 후 이를(Pre-trained model) 활용해 특정 태스크에 대한 학습을 수행하면(레이블 된 데이터를 활용해) 더 좋은 성능을 가진 모델을 만들 수 있을 것이다라는 가정을 가지고 본 연구가 수행되었다. 2. GPT: Unsupervised pre-training GPT는 기존 트랜스포머 구조에서 인코더를 ..
다량의 말뭉치에 대한 의미와 문맥을 학습한 언어모델(language model)을 활용해 문서 분류, 개체명 인식 등 각종 태스크를 수행할 수 있으며, 요즘에는 트랜스포머(transformer) 기반의 언어모델이 각광받고 있으며 주로 자연어 처리에서 사용하는 딥러닝 아키텍처 중 하나이다. 현재 자연어 처리의 역사는 트랜스포머와 함께하고 있다고 해도 과언이 아니다. BERT, GPT 등 요즘 널리 쓰이는 모델 아키텍처가 모두 트랜스포머이다. 또한 자연어 처리 외에 비전, 음성 등 다양한 분야에 널리 활용되고 있다. ※ BERT, GPT 따위의 부류는 미리 학습된 언어 모델(pretrained language model)이라는 공통점이 있다. ※ 기존의 RNN 및 LSTM과 같은 네트워크는 장기 의존성 문제..
*** ratsgo's NLP blog (이기창) 내용 요약 *** 바이트 페어 인코딩(Byte Pair Encoding: BPE)은 원래 정보를 압축하는 알고리즘으로 제안되었으나 최근에는 자연어 처리 모델에서 널리 쓰이는 토큰화 기법 - GPT는 BPE 기법 토큰화 수행 - BERT는 BPE와 유사한 워드피스(Wordpiece) 토크나이저 사용 1. BPE란?(고빈도 바이그램 쌍 병합) BPE는 1994년 제안된 정보 압축 알고리즘으로 데이터에서 가장 많이 등장한 문자열을 병합해서 데이터를 압축하는 기법 aaabdaaabac → ZabdZabac ZabdZabac → ZYdZYac ZYdZYac → XdXac BPE 수행 이전에는 원래 데이터를 표현하기 위한 사전 크기가 4개(a, b, c, d)이나 ..
*** ratsgo's NLP blog (이기창) 내용 요약 *** 토큰화란 문장을 토큰 시퀸스로 나누는 것이며 크게 문자 단위 토큰화, 단어 단위 토큰화, 서브워드의 방법이 있다. 또한 토큰화를 수행하는 프로그램을 토크나이저(Tokenizer)라고 한다. ① 단어 단위 토큰화 단어 단위로 토큰화를 진행 할 수 있으며, 가장 간단한 방법은 공백을 기준으로 분리하는 것이다. 어제 카페 갔었어 → 어제, 카페, 갔었어 어제 카페 갔었는데요 → 어제, 카페, 갔었는데요 위와 같이 공백을 기준으로 분리하게 되면 따로 토크나이저 프로그램을 사용하지 않아도 된다는 장점이 있지만, 어휘 집합의 크기가 매우 커질 수도 있다. 예) '갔었어', '갔었는데요'처럼 표현이 살짝 바뀌어도 모든 경우의 수가 어휘 집합에 포함되..