전체 글134 딥러닝(Deep Learning) #14 - CNN CNN 합성곱 신경망 : Convolutional Neural Network 이미지처리에 탁월한 성능을 가진 신경망. 합성곱 신경망은 합성곱층(Convolution layer) / 풀링층(Pooling layer)로 구성된다. 2. 합성곱(Convolution) 연산 : 이미지의 특징을 추출함 - 커널/필터라는 N X M 크기 행렬로 높이 X 너비 크기의 이미지를 처음부터 끝까지 겹치며 훑으면서 N X M 크기의 겹쳐지는 이미지와 커널 원소 값을 곱해서 모두 더한 값을 출력으로 한다. - 이미지는 왼쪽위부터 오른쪽 아래 순으로 훑는다. - 스트라이드(Stride) : 입력데이터 필터 적용 시 이동 간격을 조절 하는 것. 필터가 이동할 간격 최종 결과값 : 특성맵(feature map) if stride .. 2022. 4. 15. Epoch, Step, Batch size, Weight(가중치), Bias(편향) 개념 정리 Weight(가중치), Bias(편향) 개념 정리 - Weight(가중치) : 입력층에서 다음node로 넘어갈 때, 각기 다른 값을 곱해야 한다는 게 Weight(가중치)를 준다고 말한다. 데이터를 다른 비중으로 다음 은닉층(hidden layers)로 전달하기 위한 중요도(=가중치)를 다르게한다고 이해하면 편하다. 가중치는 각 요소에 부여되는 값(입력값 X)으로 가장 최적의 W(가중치)를 찾아내는 과정이다. 수능점수를 예측하는 딥러닝 모델을 만들 때, 4~6월 점수보다 11월 수능에 가까운 8~10월 점수의 중요성이 더 높다. 8~10월에 더 비중을 두는 것을 가중치(Weight)를 준다고 말한다. - Bias(편향) : 하나의 뉴런으로 입력된 모든 값을 모두 더한 다음(가중합한 다음), 가중합에 값을.. 2022. 4. 15. 딥러닝(deel learning) #13 - 선형회귀 적용하기 선형회귀 수치를 예측하는 선형회귀 라이브러리 & 데이터 확인하기 # 라이브러리 설정 import pandas as pd import numpy as np import matplotlib.pyplot as plt import tensorflow as tf from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense from sklearn.model_selection import train_test_split # seed 값 설정 seed = 0 np.random.seed(seed) tf.set_random_seed(seed) # 데이터 확인 및 분석 data = pd.read_csv("C:/Users/kwon.. 2022. 4. 14. 딥러닝(Deep Learning) #12 베스트 모델 구하기 베스트 모델구하기 기본 와인데이터 확인 및 딥러닝 프레임워크 완성하기 # 베스트 모델 구하기 # 기본 데이터 확인 및 딥러닝 모델 만들기 # 라이브러리 설정 import pandas as pd import numpy as np import matplotlib.pyplot as plt import tensorflow as tf from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense from tensorflow.callback import ModelCheckpoint, EarlyStopping # seed=0 고정설정 seed = 0 np.random.seed(seed) tf.set_random_seed(.. 2022. 4. 14. 딥러닝(Deep Learning) #11 - 과적합 피하기 과적합 # 과적합 피하기 # 라이브러리 설정 from tkinter import Y, Label from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense from sklearn.preprocessing import LabelEncoder import pandas as pd import numpy as np import tensorflow as tf # seed 설정 seed=0 np.random.seed(seed) tf.set_random_seed(seed) # 데이터 확인 및 분석 data = pd.read_csv("C:/Users/kwonk/juno1412-1/juno1412/DL/모두의 딥러닝/da.. 2022. 4. 14. 딥러닝(Deep learning) #10 다중 분류 다중 분류(multi classificiation) 클래스의 정보가 3개 이상인 경우, 여러개의 답 중 하나를 고르는 분류 문제를 다중분류라고 한다. seed 설정 seed = 0 numpy.random.seed(seed) tf.set_random_seed(seed) seed 고정 설정 random() 함수로 임의값을 설정하는 것처럼 보여도 컴퓨터안에 내장된 '내장테이블' 중 하나를 불러내어 순서대로 숫자를 보여주는 것이다. seed 설정은 랜덤테이블 중 몇 번째 테이블을 불러와 쓸 것인지를 결정하는 것이다. numpy 라이브러리를 사용한 tensorflow 딥러닝 구현 시 numpy.seed와 tensorflow.seed 설정 2개 모두 설정해야한다. 데이터 확인 및 분석 data = pd.read_c.. 2022. 4. 13. 딥러닝(Deep learning) #9 데이터 분석 & 피마 인디언 당뇨병 예측 피마 인디언 데이터 가져오기&분석 # 라이브러리 설정 import pandas as pd import matplotlib.pyplot as plt import seaborn as sns # 데이터 가져오기 # 데이터에 header가 없어 names로 각 속성별 이름 붙여줌 data = pd.read_csv('C:/Users/kwonk/juno1412-1/juno1412/DL/모두의 딥러닝/dataset/pima-indians-diabetes.csv', names = ["pregnant", "plasma", "pressure", "thickness", "insulin", "bmi", "pedigree", "age", "class"]) # 데이터 확인 print(data.head(5)) print(data... 2022. 4. 13. 딥러닝(Deep learning) #8 모델 설계 keras 입력층 은닉층 출력층 Sequential() 힘수 - Sequential()을 모델로 선언하고 model.add()라는 라인을 추가하면 새로운 층 형성가능. - Sequential 모델은 각 레이어에 정확히 하나의 입력 텐서와 하나의 출력 텐서가 있는 일반 레이어 스택에 적합합니다. model.add() 함수 : 새로운 층을 만드는 함수 Dense()함수 : model.add()로 새로운 층 생성 후, Dense()함수를 통해 몇개의 노드를 만들 건지 지정함. - (Dense(30, input_dim=17, activation='relu')) = Dense(30개의 노드), input_dim(폐암환자 생존여부 데이터 17개를 노드로 보냄), activation = 'relu'(활성화 함수) # 딥러닝 모.. 2022. 4. 13. 딥러닝(Deeping Learning) #7 - 오차 역전파/신경망 오차역전파 다층 퍼셉트론의 최적화과정을 오차역전파(back propagation)라 한다. 오차역전파 구동방식 1. 임의의 초기 가중치 w를 준 뒤, 결과를 계산한다. 2. 실제 값(실제 계산 결과)와 이상값(원하는 값)의 오차를 구한다. 3. 경사 하강법을 이용해 앞 가중치의 오차가 작아지는 방법으로 업데이트 한다. 4. 더이상 오차가 줄어들지 않을 때까지 반복한다. 오차역전파 가중치 수정 수식 신경망의 구현 과정 1. 환경변수 지정 데이터셋, 학습률, 활성화함수, 가중치 선언 등 환경변수 지정 2. 신경망 실행 초기값을 입력해 활성화 함수와 가중치를 거쳐 결과값이 나오게 합니다. 3. 결과를 실제 값에 비교 실제값 vs 이상값 비교 4. 역전파 출력층/은닉층 가중치를 수정한다. 이상값과 실제값의 오차.. 2022. 4. 12. 이전 1 ··· 11 12 13 14 15 다음 반응형