본문 바로가기

Deep Learning

(10)
[Deep Learning] 220810 학습일기 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 1. sys.path.append()가 잘 이해가 안 되어 아래 링크를 참고했다. https://sshkim.tistory.com/158 [퍼옴] [점프투파이썬] 환경변수 및 sys를 이용한 모듈 import 참조: https://wikidocs.net/29 [모듈을 불러오는 또 다른 방법] 우리는 지금껏 도스 창을 열고 모듈이 있는 디렉터리로 이동한 다음에나 모듈을 사용할 수 있었다. 이번에는 모듈을 저장한 디렉터리로 sshkim.tistory.com 2...
[Deep Learning] 220809 학습일기 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 1. 기계학습 문제는 분류와 회귀로 나뉜다. 분류: 데이터가 어느 class에 속하느냐는 문제 ex) 인물의 성별을 분류하는 문제 회귀: 입력 데이터에서 (연속적인) 수치를 예측하는 문제 ex) 사진 속 인물의 몸무게를 예측하는 문제 2. 소프트 맥스 함수는 다음과 같다. import numpy as np a = np.array([0.3,2.9,4.0]) exp_a = np.exp(a) sum_exp_a = np.sum(exp_a) y= exp_a/sum_e..
[Deep Learning] 220808 학습일기 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 1. 행렬의 곱을 사용해 A1를 구하고 시그모이드 함수를 이용해 Z를 구해보자.(0층 -> 1층) import numpy as np def sigmoid(x): return 1/(1+np.exp(-x)) X = np.array([1.0,0.5]) W1 = np.array([[0.1,0.3,0.5],[0.2,0.4,0.6]]) B1 = np.array([[0.1,0.2,0.3]]) A1 = np.dot(X,W1) +B1 Z1 = sigmoid(A1) print..
[Deep Learning] 220806 학습일기 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 1. 위와 같이 행렬의 곱으로 신경망의 계산을 수행할 수 있다. 그리고 이것을 파이썬으로 구현해보자. import numpy as np X= np.array([1,2]) W= np.array([[1,3,5],[2,4,6]]) Y = np.dot(X,W) print(Y) [ 5 11 17] 다차원 배열의 스칼라곱을 구해주는 np.dot 함수를 사용하면 Y의 원소가 100개든 1000개든 한 번의 연산으로 계산할 수 있다. np.dot을 사용하지 않으면 Y의 원..
[Deep Learning] 220805 학습일기 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 1. 입력 신호의 총합이 h(x)라는 함수를 거쳐 변환되어, 그 변환된 값이 y의 출력이 됨을 보여준다. h(x)는 입력이 0을 넘으면 1을 돌려주고 그렇지 않으면 0울 돌려준다. 여기서 이러한 h(x) 같은 함수를 활성화 함수 라고 한다. 활성화 함수는 입력 신호의 총합이 활성화를 일으키는지를 정하는 역할을 한다. 2. 1번과 같이 임계값을 경계로 출력이 바뀌는 함수를 계단 함수(step function)이라고 한다. 계단함수를 파이썬으로 구현해보자. 먼저..
[Deep Learning] 220803 학습일기 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 1. 퍼셉트론을 파이썬으로 구현해보자. 먼저 AND 게이트를 구현해보자. def AND(x1,x2): w1,w2, theta = 0.5,0.5,0.7 tmp = x1*w1 + x2*w2 if tmp theta: return 1 매개변수 w1, w2, theta는 함수 안에서 초기화하고, 가중치를 곱한 입력의 총합이 임계값(theta)을 넘으면 1을 반환하고 그 외에는 0을 반환한다. def AND(x1,x2): w1,w2, theta = 0.5,0.5,0.7..
[Deep Learning] 220730 학습일기 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 1. matplotlib는 그래프를 그려주는 라이브러리. matplotlib를 사용하면 그래프 그리기와 데이터 시각화가 쉬워진다. matplotlib의 pyplot 모듈을 이용해 sin 함수를 그려보자. import numpy as np import matplotlib.pyplot as plt #데이터 준비 x = np.arange(0,6,0.1) #0부터 6까지 0.1 간격으로 생성 y = np.sin(x) #그래프 그리기 plt.plot(x,y) plt...
[Deep Learning] 220729 학습일기 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 1. 그저께 인덱스가 n1,n2,n3인 원소를 얻을 때 아래와 같은 방법으로 구해야 해서 기존의 파이썬식 원소 구하는 방법과 달라 어렵다고 생각했다. import numpy as np A = np.array([[1,2], [10,21], [12,60]]) Af = A.flatten() print(Af) print(Af[np.array([0,2,4])]) [ 1 2 10 21 12 60] [ 1 10 12] 그런데 이건 인덱스가 n1,n2,n3인 원소를 구하는..
[Deep Learning] 220727 학습일기 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 1. import numpy as np A = np.array([[1, 2],[3, 4],[5, 6]]) print(A) print(A.shape) print(A.dtype) [[1 2] [3 4] [5 6]] (3, 2) int32 3X2 배열을 입력하면 shape(배열의 형상. 즉 행렬을 포함한 N차원 배열에서 그 배열의 각 차원의 크기)가 (3,2)라고 출력된다. 2. import numpy as np A = np.array([[1,2],[3,4]]) ..
[Deep Learning] 220721 학습일기 교재는 이 친구로 정했다. 밑바닥부터 시작하는 딥러닝 - YES24 직접 구현하고 움직여보며 익히는 가장 쉬운 딥러닝 입문서 이 책은 라이브러리나 프레임워크에 의존하지 않고, 딥러닝의 핵심을 ‘밑바닥부터’ 직접 만들어보며 즐겁게 배울 수 있는 본격 딥 www.yes24.com 항상 비주얼 스튜디오로만 했지만 이번에는 좀 다르게 cmd에서 진행해보려 한다. 파이썬과 아나콘다는 이미 깔려있는 상태다. cmd(명령 프롬프트)에 python을 입력하면 이렇게 뜬다. 이 파이썬 인터프리터는 콘다 환경인데 그 환경이 아직 활성화되지 않았단다. 그래서 활성화를 위해 cmd에서 친절히 알려준 사이트로 들어갔다. https://conda.io/activation Managing environments — conda 4...