딥러닝

    [TIL] 210330 - Deep LearniNg (~C1W2L13)

    이 글은... Andrew Ng 교수의 Deep Learning 강좌 C1W2L13 까지의 내용을 정리한 것이다. 벡터화가 무엇이고 어떻게 사용하는지 살펴본다. 내용 요약 벡터화 (Vectorization) 순차적으로 계산하는 것보다 동시에 분산해서 처리하는 것이 훨씬 빠른 결과를 낼 수 있다. 예시로든 코드를 직접 실행해보니 for 문은 약 600ms, 벡터화를 사용한 코드는 약 2ms의 시간이 걸렸다. import numpy as np import time a = np.random.rand(1000000) b = np.random.rand(1000000) tic = time.time() c = np.dot(a, b) toc = time.time() print(c) print("Vectorized ve..

    [TIL] 210329 - Deep LearniNg (~C1W2C10)

    [TIL] 210329 - Deep LearniNg (~C1W2C10)

    이 글은... Andrew Ng 교수의 Deep Learning 강좌 C1W2L10 까지의 내용을 정리한 것이다. 계산 그래프를 이용해서 미분 해보고 이를 로지스틱 회귀의 경사하강법에 적용해 보았다. 내용 요약 계산그래프로 미분하기 파라미터 $a$, $b$, $c$가 $J$의 결과값에 어떤 영향을 미치는지 알아낼 수 있음 위 그래프의 오른쪽에서 왼쪽으로 미분을 이용하여 파라미터 관계를 알아내는 방법을 설명함 이 때 미분의 연쇄법칙을 이용함 ${dJ \over da} = {dJ \over dv}{dv \over da}$ Andrew Ng 교수는 코드에서 미분값을 의미하는 변수를 선언할 때 아래처럼 표기하기로 함 $d Finaloutputvar \over dvar$ --> dvar 로지스틱 회귀의 경사하강법..

    [TIL] 210326 - Deep LearniNg (~C1W2L07)

    [TIL] 210326 - Deep LearniNg (~C1W2L07)

    이 글은... Andrew Ng 교수의 Deep Learning 강좌 C1W2L07 까지의 내용을 정리한 것이다. 비용함수의 결과값을 최저로 만드는 파라미터를 어떻게 찾아야 하는지 설명한다. 그리고 그 과정에 필요한 미분의 개념을 간단히 살핀다. 내용 요약 경사 하강법 비용함수의 값을 최소화하는 $w$와 $b$를 찾는데 사용할 수 있는 방법이다. 이때 비용함수는 볼록한(convex) 형태여야 한다. 만약 비용함수의 형태가 볼록하지 않다면 지역 최솟값을 여러 개 가지게 되어 진짜 최솟값을 찾기 어려워진다. 비용함수의 최솟값을 찾기 위한 시작점은 임의로 정하여도 상관없다. 경사 하강법을 사용하면 어디에서 시작하든 최솟값이 있는 곳으로 향하게 된다. 가파른 방향으로 한 스텝씩 업데이트하며 최솟값을 찾아간다. ..

    [TIL] 210325 - Deep LearniNg (~C1W2L03)

    [TIL] 210325 - Deep LearniNg (~C1W2L03)

    이 글은... Andrew Ng 교수의 Deep Learning 강좌 C1W2L03 까지의 내용을 정리한 것이다. 로지스틱 회귀와 비용 함수에 대한 내용을 다룬다. 내용 요약 신경망 학습방법 정방향 전파 역방향 전파 이 두가지가 어떻게 다른지는 이후에 다루게 됨 일단은 이런 것이 있다는 것을 알고 넘어감 이진분류(Binary Classification) yes or no로 분류하는 것 고양이가 맞다. / 고양이가 아니다. 로지스틱 회귀(Logistic regression)라는 알고리즘을 사용함 표기법 정리 $m$: 학습을 위한 데이터 세트 수 ${(x^{(1)}, y^{(1)}), (x^{(2)}, y^{(2)}), ... (x^{(m)}, y^{(m)}), }$ $n$: 입력 데이터 하나의 원소 개수 ..

    [TIL] 210324 - Deep LearniNg (~C1W1L04)

    [TIL] 210324 - Deep LearniNg (~C1W1L04)

    이 글은... Andrew Ng 교수의 Deep Learning 강좌 C1W1L04 까지의 내용을 정리한 것이다. 내용 요약 신경망 X(입력)와 Y(출력)를 연결지어주는 함수를 찾는 과정 데이터가 많으면 많을수록 성능이 좋은 함수를 찾을 수 있음 해당 뉴런에 관련 없는 입력값이라도 입력해야 함 그 입력의 관계 여부, 가중치는 학습하면서 조절됨 신경망 종류 NN: 데이터베이스화된 데이터에 적합 CNN: 이미지에 적함 RNN: 오디오, 텍스트에 적합 Custom, Hybrid 데이터 종류 Structured Data 데이터베이스로 표현된 데이터 정보의 특성이 잘 드러남 Unstructured Data 오디오, 텍스트, 이미지 특징값을 추출하기 어려움 딥러닝 기술 발전으로 특징을 잘 찾아낼 수 있게 됨 최근 ..