본문 바로가기

이론/모두의 딥러닝

(6)
< 다섯째 마당 > 딥러닝 활용하기 16장 이미지 인식의 꽃, 컨볼루션 신경망(CNN) - MNIST 데이터셋: 고등학생과 인구조사국 직원 등이 쓴 손글씨를 이용해 만든 데이터로 구성되어 있습니다. 7만 개의 글자 이미지에 각각 0부터 9까지 이름표를 붙인 데이터셋이다. 이미지를 인식하는 원리 MNIST 데이터는 텐서플로의 케라스 API를 이용해 간단히 불러올 수 있습니다. X = 이미지 데이터 Y = 이미지에 0 ~ 9를 붙인 이름표 학습에 사용될 부분: X_train, y_train 테스트에 사용될 부분: X_test, y_test 이 이미지는 가로 28 x 세로 28 = 총 784개의 픽셀로 이루어져 있습니다. 각 픽셀은 밝기 정도에 따라 0부터 255까지 등급을 매깁니다. 흰색 배경이 0이라면 글씨가 들어간 곳은 1~255의 숫자 ..
< 넷째 마당 > 딥러닝 기본기 다지기 10장 딥러닝 모델 설계하기 모델 실습| 폐암 수술 환자의 생존율 예측하기 # 텐서플로 라이브러리 안에 있는 케라스 API에서 필요한 함수들을 불러옵니다. from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense # 데이터를 다루는 데 필요한 라이브러리를 불러옵니다. import numpy as np # 깃허브에 준비된 데이터를 가져옵니다. !git clone https://github.com/taehojo/data.git # 준비된 수술 환자 데이터를 불러옵니다. Data_set = np.loadtxt("./data/ThoraricSurgery3.csv", delimiter=",") X = Data_s..
< 심화 학습2 > 파이썬 코딩으로 짜 보는 신경망 환경 변수 설정하기 실제 값이 될 XOR 진리표는 다음과 같다. 먼저 두 개의 입력 값과 한 개의 타깃 값으로 먼저 설정하겠습니다. 실행 횟수, 학습률, 모멘텀 계수도 설정하겠습니다. import random import numpy as np # 환경 변수 지정 # 입력값 및 타깃 값 data = [ [[0, 0], [0]], [[0, 1], [1]], [[1, 0], [1]], [[1, 1], [0]] ] # 실행 횟수(iterations), 학습률(lr), 모멘텀 계수(mo) 설정 iterations=5000 lr=0.1 mo=0.4 # 활성화 함수 - 1. 시그모이드 # 미분할 때와 아닐 때의 각각의 값 def sigmoid(x, derivative=False): if (derivative == T..
< 심화 학습1 > 오차 역전파의 계산법 출력층의 오차 업데이트 + w2의 값 중 하나인 w31을 업데이트하는 과정 + > t는 한 단계 앞, t + 1은 현재 단계의 계산을 의미. > 맨 오른쪽 식은 Yout을 구하고 이를 w31에 대해 편미분하라는 의미입니다. 오차 공식 - 오차 Yout 안에는 두개 (y01, y02)의 출력 값이 있습니다. 오차는 평균 제곱 오차를 이용해 구합니다. y01, y02의 실제 값을 yt1, yt2라고 할 때, 다음과 같이 계산합니다. 즉 오차 Yout은 다음과 같이 구할 수 있습니다. 체인 룰 W31에 대해 오차를 편미분 하는 것은 합성 함수(함수 안에 또 다른 함수가 들어 있는 것을 의미) 미분 공식을 따릅니다. 즉, 체인 룰에 의해 다음과 같이 계산할 수 있습니다. 체인 룰 계산하기 - Yout = 오차 ..
< 셋째 마당 > 딥러닝의 시작, 신경망 7장 퍼셉트론과 인공지능의 시작 인공지능의 시작을 알린 퍼셉트론 - 퍼셉트론: 입력 값을 여러 개 받아 출력을 만드는데, 이때 입력 값에 가중치를 조절할 수 있게 만들어 최초로 '학습'을 함. - 아달라인: 퍼셉트론에 경사 하강법을 도입해 최적의 경계선을 그릴 수 있도록 함. + 가중합이란? 입력 값과 가중치를 모두 곱한 후 바이어스를 더한 값 + 퍼셉트론의 과제 : 퍼셉트론이나 아달라인은 모두 2차원 평면상에 직선을 긋는 것만 가능합니다. 이 예시는 경우에 따라 선을 아무리 그어도 해결되지 않는 상황이 있다는 것을 말해 줍니다. ( 각각 엇갈려 놓인 검은색 점 두개와 흰색 점 두 개를 하나의 선으로 구별x ) 8장 다층 퍼셉트론 다층 퍼셉트론의 등장 1. x1과 x2를 두 연산으로 각각 보냅니다. 2...
<둘째 마당> 예측 모델의 기본 원리 : 독립 변수 x를 사용해 종속 변수 y의 움직임을 예측하고 설명하는 작업. : 임의의 직선을 그어 이에 대한 평균 제곱 오차를 구하고, 이 값을 가장 작게 만들어 주는 a 값과 b 값을 찾아가는 과정. : 예측 하기 위해 y = ax + b에서 직선의 기울기 a 값과 y 절편 b 값을 정확히 예측해야한다. 1) 종류 + 단순 선형 회귀: x 값만으로도 y 값을 설명할 수 있다. + 다중 선형 회귀: x 값이 여러 개 필요하다. 2) 최소 제곱법(독립 변수가 하나 일때) : 가진 정보가 x 값과 y 값 일때 이를 이용해 기울기 a를 구할 수 있다. - y 절편인 b 구하기 - b = y의 평균 - (x의 평균 x 기울기 a) - 파이썬 코딩으로 구하는 최소 제곱 - import nump..