딥러닝 9

RNN 단점 보완! GRU/LSTM

참고: 메타코드M https://www.youtube.com/watch?v=rbk9XFaoCEE&lis RNN의 단점 - Exploding gradient / Vanishing gradient가 발생된다 - W_xx를 계속해서 곱해주니까 RNN: Exploding Gradient - 학습 도중 loss가 inf 뜰 경우 학습이 더 이상 진행 불가능 - 해결책? Gradient clipping : gradient를 구획 안에 가둬 놓는 것 RNN: Vanishing Gradient - 학습 종료됨..과연 이것이 vanishing문제인가? 아니면 학습이 잘 끝난 것인가? - 해결책? 초기화를 간결하게 해주는 방법이 존재하지만..다른 네트워크 구조를 쓰는것이 좋을 것이다 따라서 수도꼭지처럼 열고 닫고 할 수 ..

자연어 처리 유사도 분석 정리

참고: 메가코드M https://www.youtube.com/watch?v=9ea7Ja52ezQ 단어와 단어 사이에 문장과 문장 사이의 관계가 얼마나 비슷한가? 벡터의 유사도가 중요하다!! *(기본) 코사인 유사도를 알아보자 직접 코사인 세타를 구해보자 (내적 = 길이 *길이 * cos세타) 본격적으로 유사도 분석 유형을 알아보자 1) Bag of words 1) I love apple. (Norm: root 2) 2) Apple is delicious which I love too. (Norm: root 3) 3) I want a delicious food, but an apple. (Norm: root 3) 4) Deep learning is difficult. (Norm: root 1) 각 문장의 ..

이중 분류

#1. non-linear activation 이진 분류 (unit step function ) 단점: 미분 불가능, 직선 형태이기 때문에 엄격하게 구분 단점을 해결해 줄 다른 수식이 필요함. 그것이 시그모이드! #2. sigmoid 장점: 전 구간에서 미분 가능, 곡선이기 때문에 조금 덜 엄격함, 확률로 표현가능 --> 1과 0으로 가장 잘 나눠주는 선(결정경계)을 만들어서 출력값을 반환 *그렇다면 예시를 보자, 강아지 그림(확률 q) =1 고양이 그림(확률 1-q)=0 따라서 강아지의 확률을 높이려면 q를 최대화 해야하며, 고양이 확률을 높이려면 1-q를 최대화 해야한다. 즉, 간단한 식으로 보면 아래와 같다. 자 그러면 사건 하나하나를 넣어서 확률을 구해보자. 사건은 독립시행이기 때문에 곱으로 표현..

꼭 알아야할 수학(6)_정보이론

# 1 정보이론이란? * 정보 이론이란, 최대한 많은 데이터를 매체에 저장하거나 채널을 통해 통신하기 위해 데이터를 정량화하는 응용 수학의 한 분야이다.(위키백과) ex. Bits (이진수, 모스부호) - 랜덤한 정보를 최대한 효율적으로 표현하기 위해서는 높은 확률로 나오는 글자는 간결하게 낮은 확률로 나오는 글자는 보다 길게 코딩하는 것이 좋을 것. (아래의 식을 최소화하는 것이 목표) 그렇다면 어떻게 효율적인 코드 길이를 알 수 있나? 그 수치는 무엇인가? --> 엔트로피! # 2 엔트로피 (Entropy) * 엔트로피 공식은 아래와 같다. -log를 취한 이유는 언급한 확률이 클수록 길이(y)를 작게 반환하는 그래프이기 때문이다. 예시>> ** 균등 분포일때가 가장 최악의 상황이 나온다. why? ..

꼭 알아야할 수학(5)_확률

#4 최대 우도 추정 MLP (Maximum Likelihood Estimation) * 간단하게 말해 사건을 보고 확률을 추론하는 방법 (조건부 확률값이지만, 확률 분포는 아님. why? 확률의 합이 1이 아니기 때문) 아래의 예시에서 검은 공이 나올 최대의 확률을 구하는 것이 목표가 됨.! (검은 공이 A주머니에서 나왔을까 B에서 나왔을까? 어떤 주머니에서 골랐을지 그 확률을 구하는것) (vs. 조건부확률의 경우, A라는 상자를 골랐을떄 검은 공이 나올 확률을 구하는 것) 예시>> x 사건을 구해야한다고 할때 Z1, Z2 라는 예측 분포가 주어진다면 1) x+n1 = Z1 (n~N(0,표준편차)) 2) x+n2 =Z2 Z1과 Z2를 독립이라고 가정하고 x를 예측해보자, 정규분포(가우시안 분포)를 따른..

꼭 알아야할 수학(3)_미분심화

본 포스팅은 혁펜하임 [AI를 위한 수학] 딥린이를 위한 필수 수학 패키지를 참고하였습니다. https://www.youtube.com/watch?v=frkVgBvp850 #10 벡터를 벡터로 미분하기 *벡터 입력 --> 벡터 출력 (여러개 들어가서 여러개 나오는 경우) * 스칼라를 벡터로 미분 공식 (이전 포스트에서 도출된 공식을 바탕으로.. 벡터를 벡터로 미분해보겠음) *문제: f([x1, x2]) = [X1x2^2 , X1+X2]를 미분해보면, * 연쇄법칙 미분 적용 가능>> Y=XA , Z=YB * X-->Y(X로 미분)-->Z(Y로 미분) : 결국은 단계별로 미분하는 것과 Z를 X로 미분하는 값과 똑같음 # 11 스칼라를 행렬로 미분 * 행렬 입력 --> 스칼라 출력 *문제: f(x)=tr(xA..

꼭 알아야할 수학(2)_미분

본 포스팅은 혁펜하임 [AI를 위한 수학] 딥린이를 위한 필수 수학 패키지를 참고하였습니다. https://www.youtube.com/watch?v=frkVgBvp850 # 4 극한 * x가 a에 제일 가까운 값일때 f(x)는 무엇인가 * 극한 값이 존재해야 미분이 가능해짐! # 5 연쇄법칙 * 함수를 조각조각 미분해서 쉽게 구하자! 예시>> # 6 편미분 = 그라디언트 * f(x,y)=yx^2 와 같은 여러개의 변수로 이루어진 함수를 미분할때 각각에 대해서 미분하는 것을 말함. 즉, x에 대한 미분과 y에 대한 미분 (이때, 다른 변수는 상수로 취급하고 미분해주면 됨) # 7 Maclaurin 급수/ Taylor 급수 * 어떤 임의의 함수를 다항함수로 나타내는 것 (미분이 불가능한 함수를 다항함수로 ..

꼭 알아야할 수학(1)_로그/행렬/벡터

본 포스팅은 혁펜하임 [AI를 위한 수학] 딥린이를 위한 필수 수학 패키지를 참고하였습니다. https://www.youtube.com/watch?v=frkVgBvp850 #1 log (로그) *로그의 밑이 클수록 그래프가 더 눞는다. #2 행렬 *여러 식을 한번에, 단순하게, 간단하게 표시 밑 계산할 수 있는 장점 *단 AB!=BA * 전치 행렬 #3 벡터 * 스칼라는 숫자 1개, 벡터(좌표점을 생각하기)는 숫자 여러개로 생각하면 된다..! * 벡터는 크기와 방향이 같으면 시점이 달라도 같은 벡터 * 벡터의 크기(norm) 1) L2 norm --> 피타고라스 정리 생각하기 2) L1 norm --> 절댓값 참고: https://sooho-kim.tistory.com/85 l1-norm과 l2-norm..

인공신경망 (Artificial Neural Network, ANN)_(3)

용어 정리 DNN (Deep Neural Network) : 깊은 인공 신경망 FC (Fully-Connected Layer): 노드끼리 싹다 연결된 층 Perceptron: unit step function(계단 함수)을 활성화 함수로 사용하는 인공 신경을 의미 MLP (Multilayer Perceptron): 모든 layer가 FC layer인 신경망으로 임의의 활성화 함수를 사용하는 인공 신경망을 의미한다. 딥러닝의 목표!! loss(=cost)를 최소화하는 weight와 bias 찾기 * loss란? 내가 풀고 싶은 문제에 맞게 잘 정의하는 것 (ex. 머신의 예측값 - 실제 값) >> linear regression에서 loss를 어떻게 계산할 수 있을까? 하지만, 양수값과 음수값이 동시에 존..