반응형 분류 전체보기92 CBoW & RN & CNN & Self Attention & RNN 문장표현(Sentence representation)의 의미: 어떤 과제를 풀기에 적합하고 숫자로 나타낸 문장의 표현입니다 CBoW(Continuous bag-of-words): 단어장을 단어 주머니로 보게되고, 이에 따라 단어의 순서는 무시합니다. 문장에 대한 표현은 단어 벡터들을 평균시킨 벡터로 구합니다. 효과가 좋기 때문에 제일 먼저 시도해봐야합니다. (Baseline 모델) 공간상에서 가까우면 비슷한 의미, 아니면 멀리 떨어져 있을 것입니다. Relation Network(Skip-Bigram): 문장안에 있는 모든 토큰 쌍(pairs)을 보고, 각 쌍에 대해서 신경망을 만들어서 문장표현을 찾습니다. 장점: 여러 단어로 된 표현을 탐지 할 수 있습니다. 단점: 모든 단어간의 관계를 보기 때문에, .. 2022. 3. 28. How to represent sentence & token 문장은 일련의 토큰(tokens)으로 구성되어 있습니다. 텍스트 토큰은 주관적, 임의적(arbitrary)인 성격을 띄고 있습니다. 토큰을 나누는 기준은 다양합니다. 공백(White space) 형태소(Morphs) 어절 비트숫자 컴퓨터에게 단어를 숫자로 표현하기 위해서, Vocabulary을 만들고, 중복되지 않는 인덱스(index)로 바꿉니다. 궁극적으로 모든 문장을 일련의 정수로 바꿔줍니다. 이를 인코딩(Encoding)이라고 합니다. 하지만 관계없는 숫자의 나열로 인코딩하는 것은 우리가 원하는 것이 아닙니다. 여전히 주관적인 숫자들 뿐입니다. 우리는 비슷한 의미의 단어는 같이 있고, 아니면 멀리 떨어져 있는 관계를 만들고 싶습니다. 그렇다면 어떻게 관계를 만들어 줘야 할까요? 한 가지 방법으로 ".. 2022. 3. 28. Text classification Overview 텍스트 분류(Text Classification): 문장, 문단 또는 글을 어떤 카테고리에 분류하는 작업을 텍스트 분류라고 합니다. 텍스트 분류는 지도학습입니다. Input: 하나의 문장, 문단 혹은 문서 Output: 유한한 C 개의 카테고리 예시 감성 분석 카테고리 분류 의도 분류 본 내용은 부스트코스 조경현 교수의 딥러닝을 이용한 자연어 처리 수업 내용입니다. 2022. 3. 28. Gradient-Based Optimization Off-the-shelf gradient-based optimization Gradient descent, L-BFGS, Conjugate gradient 등 방법 들이 있습니다. 그러나 위 방법들은 매개변수(parameters)가 많아질 수록 시간이 오래걸립니다. 그 이유는 훈련 샘플 전체의 Loss 는 각 샘플에 대한 Loss 의 합으로 구해지며, 데이터가 많아 질수록 오래 걸리기 때문입니다. 확률적 경사 하강법(Stochastic Gradient descent) 1. M개의 훈련 샘플을 선택합니다. 이를 미니배치(Mini batch) 라고 합니다. 2. 미니배치 경사를 계산합니다. 3. 매개변수를 업데이트합니다. 4. 검증 세트로 구한 validation loss 가 더 이상 진전이 없을때까지 진행.. 2022. 3. 28. Backpropagation 자동 미분법(Automatic differentiation): 모델을 연결하는 비순환 그래프(DAG)는 미분 가능한 함수들로 구성되어 있습니다. 따라서 미분의 연쇄법칙을 사용하여 자동으로 미분합니다. 과정: 각 노드에서 Jacobian-vector product을 계산합니다. 비순환 그래프(DAG) 역순으로 전파합니다. 장점: Gradient 를 손으로 직접 계산할 필요가 없어졌습니다. [front-end]와 [back-end]의 분리 [front-end] 비순환 그래프(DAG)를 만듬으로서 뉴럴넷(모델)을 디자인하는데 집중합니다. [back-end] 디자인 된 비순환 그래프(DAG)는 타겟 컴퓨터 장치를 위한 효과적인 코드로 컴파일됩니다. Framework 개발자들이 타겟에 맞춰 알맞게 구현하면 사용자.. 2022. 3. 28. Optimization methods Loss 는 비순환그래프(DAG)를 거쳐 계산됩니다. 가설이 무수히 많기 때문에 모든 것을 다 시도해보고 최적인 것을 고를 수가 없습니다. 따라서, 일단 아무 곳을 선택한 후에 Loss 를 낮추는 방향으로 최적화를 진행합니다. 방법: Local, Iterative Optimization: Random Guided Search 장점: 어떤 비용함수를 사용해도 무관합니다. 단점: 차원이 작을 때는 잘 되지만, 차원의 저주 때문에 커질 수록 오래걸립니다. 샘플링(sampling) 에 따라서 오래걸립니다. Gradient-based Optimization: 미분을 통해 최적화 할 방향을 정합니다 장점: Random Guided search 에 비해서 탐색영역은 작지만 확실한 방향은 정할 수 있습니다. 단점: 학.. 2022. 3. 28. Probability & Loss Function Probability 사건집합(Event Set) : 모든 가능한 사건의 집합 Ω={e1,e2,⋯,eD} 이벤트 갯수가 유한일때 : 이산(Descrete) 이벤트 갯수가 무한일때 : 연속(Continuous) 확률변수(Random Variable): 사건집합 안에 속하지만 정의되지 않은 어떤 값 확률(Probability): 사건집합에 속한 확률변수에게 어떤 값을 지정해주는 함수입니다. p(X=ei) 특성(Properties) Non-negatives: p(X=ei)≥0 , 확률은 비음수입니다. Unit volume: ∑e∈Ωp(X=e)=1 , 모든 확률의 합은 1이 되어야 합니다. 결합확률(Joint probability): p(Y=ejY,X=eiX) 조건.. 2022. 3. 28. Hypothesis Set 가설 집합은 무수히 많습니다. 머신러닝 접근 방법, 모델 구조, 하이퍼파라미터등 요소를 하나씩 변화할 때 마다 가설 하나가 세워지기 때문입니다. 이번 강의 에서는 딥러닝에 한정 지어서 이야기 하겠습니다. 네트워크 아키텍처가 정해지면, 하나의 가설 집합이 됩니다. 각기 다른 가중치 매개변수 값에 따라서 가설 집합에 속한 모델이 달라집니다. 그렇다면 네트워크 아키텍처를 어떻게 정해야 할까요? 명확한 정답은 없습니다. 다만 네트워크 아키텍처가 정해지면 그 뒤부터는 모든 것이 자동화 과정으로 넘어가는데, 어떻게 이것이 가능한지 알아봅시다. 인공신경망은 무엇일까요? 비순환 그래프(DAG) 라고 할 수 있습니다. 각 노드들은 이미 Tensorflow, Pytorch 등 패키지에서 잘 정의되어 있습니다. 여러분은 이.. 2022. 3. 28. Basic ML/DL Overview 알고리즘 vs 머신러닝 알고리즘: 어떤 문제를 푸는데 있어서 필요한 일련의 명령들입니다. 머신러닝: data-driven algorithm design 예전에는 문제가 주어졌을 때 해당 문제에 알맞는 알고리즘을 만드는 것이 일이었는데, 머신러닝에서는 실제로 문제를 특정하는 것 부터가 어렵습니다. 따라서 아래의 과정을 거칩니다. 대략적인 문제의 정의가 있습니다. 없을 때도 있습니다. 어떤 형태로든 데이터 훈련 샘플이 있습니다. 머신러닝 모델이 이 문제를 풀도록 훈련 시킵니다. 지도 학습에서 결정해야할 일 Provided N 개의 Input 과 Output 으로 구성된 훈련 샘플(Training Examples) D={(x1,y1),⋯,(xN,yN)} Loss Function: 머신러닝.. 2022. 3. 28. 이전 1 2 3 4 5 6 7 8 ··· 11 다음 반응형