분류 전체보기68 [딥러닝 기초] 손실 함수 (Loss function) 이번엔 손실 함수에 대해 좀 더 자세히 다뤄보겠습니다. 손실 함수란, 모델의 예측값과 실제 데이터의 값 사이의 차이를 측정하기 위한 함수라고 할 수 있습니다. 손실 함수는 '목적 함수(Objective function)'라고도 합니다. 실제값과 예측값 사이의 차이(loss)는 적을수록 좋겠죠. 이를 줄이기 위해 경사 하강법(Gradient descent)을 수행합니다. 경사 하강법은 미분을 기반으로 하기 때문에 손실 함수 또한 미분 가능해야 합니다. 손실 함수는 목적 함수라고도 불리는 만큼, 학습의 목적에 따라 손실 함수의 유형도 달라집니다. 딥러닝에서의 목적은 크게 2가지로 나눌 수 있을 것 같습니다. (회귀(regression)와 분류(classification)) 지금부터 각 목적에 알맞는 손실 함.. 2023. 5. 17. Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks 오늘 소개할 논문은 줄여서 RAG라고 불리는 연구입니다. RAG는 BART, GPT, T5와 같은 생성 모델의 성능을 보완하면서 모델이 학습한 정보를 컨트롤하기 쉽다는 장점을 가지는 모델입니다. RAG의 배경, 모델 구성, 실험 결과 순으로 소개를 하도록 하겠습니다. 1. 배경 소개 1-1. ODQA와 Retrieval 일반 QA task는 질문과 답변, 그리고 답이 담긴 관련 문서가 주어집니다. 그러면 딥러닝 모델은 질문과 관련 문서를 보고 답을 예측해내야 합니다. 그렇지만 ODQA(Open Domain Question Answering)는 관련 문서가 주어지지 않습니다. 질문과 답변만 주어지고 관련 문서는 거대한 문서 집합에서 모델이 직접 찾아내야 하는 것입니다. Retrieval는 ODQA 데이터의.. 2023. 5. 13. [딥러닝 기초] 경사 하강법(Gradient descent) 오늘은 경사 하강법에 대해서 알아보겠습니다. 딥러닝 모델의 학습은 경사 하강법(gradient descent)에 의해서 이뤄집니다. Gradient descent에 미분을 사용한다고 했었는데, 왜 미분을 이용하는지에 대해 알아보고, 가장 많이 쓰이는 gradient descent 방법인 Adam optimizer에 대해서 알아보도록 하겠습니다. 미분 위키에 따르면 미분(derivate, 도함수)의 정의는 "어떤 함수의 정의역 속 각 점에서 함숫값의 변화량과 독립 변숫값의 변화량 비의 극한 혹은 극한들로 치역이 구성되는 새로운 함수"라고 합니다. 어릴 적 배웠던 수학용어들에 대해서 생각이 안 날 수 있으니까 뜻을 하나하나 알아보겠습니다. 정의역 : 함수의 입력값 $x$들의 집합 치역 : 함수에 변수 $x$.. 2023. 5. 9. Approximate nearest neighbor Negative Contrastive Learning for Dense Text Retrieval 1. Introduction 구글, 네이버 등에 검색을 하면 관련된 블로그, 카페, 위키 페이지가 검색 결과로 나옵니다. 이런 것들을 가능케 하는 것이 retrieval입니다. Retrieval는 텍스트가 입력되었을 때 해당 텍스트와 관련 있는 내용의 문서들을 찾는 모델입니다. 이런 retrieval에는 보통 겹치는 단어를 기반으로 탐색하는 sparse retrieval가 많이 사용되었습니다. 이는 입력 텍스트에 있는 단어가 가장 많이 쓰인 문서를 관련 문서로 선택하는 방법입니다. 그러나 이 sparse retrieval는 겹치는 단어를 보는 방식 때문에 겹치는 단어가 존재하지 않는 관련 문서는 찾아올 수 없는 태생적인 한계를 갖고 있습니다. 그래서 연구된 방식이 딥러닝을 활용한 dense retriev.. 2023. 5. 5. [딥러닝 기초] MNIST 손글씨 인식하기 이제 인공지능의 학습 방식의 흐름을 알았으니, 이를 떠올리며 MNIST 손글씨 인식 인공지능 코드를 다시 살펴보겠습니다! https://colab.research.google.com/drive/1KdjBmrpzOF2ja6dSzf7bdPbVge3ImpMy?usp=sharing 일단 만들어보자!.ipynb Colaboratory notebook colab.research.google.com 1. 문제 정의 인공지능 공부하면서 느낀 것 중 하나는 어떤 문제를 풀던간에 "입력"과 "출력"의 형태를 확실히 파악하는 것이 중요하단 것입니다. MNIST의 입력과 출력을 확실히 정의하고 가겠습니다. MNIST 데이터셋은 "이미지" 입니다. 이미지는 컴퓨터에게 픽셀들로 이루어진 행렬과 같습니다. MNIST 이미지는 가로.. 2023. 5. 1. [딥러닝 기초] 학습은 어떻게 이루어질까 이번에는 인공지능의 학습이 어떻게 이루어지는지 간단한 예시를 통해 알아보겠습니다. 이번 포스트를 통해서 "아 인공지능은 대략 이런 식으로 학습되는구나" 하고 대강 알 수 있길 바랍니다. 1.문제 문제를 하나 내보겠습니다. 아래와 같이 왼쪽의 입력값에 의해 오른쪽의 출력값이 나오는 데이터 통계가 있다고 가정해 봅시다. 0 → 3.025 3 → 10.048 4 → 14.622 7 → 23.332 9 → 24.827 이 데이터를 그래프로 그려보면 다음과 같이 그려질 것입니다. 이 때 만약 입력값이 6이 들어온다면 출력값은 어떻게 나올까요? 저라면 쉽게 생각해서 대강 점을 따라 선을 그어볼 것 같습니다. 그 뒤에 해당 선 그래프를 보고 y가 대충 18정도로 보이니 18이라고 예측을 하면 대강 비슷하지 않을까요?.. 2023. 4. 30. 이전 1 ··· 6 7 8 9 10 11 12 다음