ICT 멘토링/혼자 공부하는 머신러닝+딥러닝(20)
-
25강 - LSTM과 GRU 셀
25강 - LSTM과 GRU 셀 IMDB 리뷰 데이터셋 LSTM 셀 LSTM 신경망 model = keras.Sequential() model.add(keras.layers.Embedding(500, 16, input_length=100)) model.add(keras.layers.LSTM(8)) model.add(keras.layers.Dense(1, activation='sigmoid')) model.summary() #// Model: "sequential" #// _________________________________________________________________ #// Layer (type) Output Shape Param # #// ========================..
2021.07.08 -
24강 - 순환 신경망으로 IMDB 리뷰 분류하기
24강 - 순환 신경망으로 IMDB 리뷰 분류하기 IMDB 리뷰 데이터셋 영화 평점 소개 사이트. 리뷰 댓글을 모아 데이터로 만듦. 감성 분석. 긍정리뷰(양성샘플), 부정리뷰(음성샘플)로 25,000개씩 잘 나뉘어져 있음. NLP 말뭉치-데이터셋 토큰-단어 어휘 사전 케라스로 IMDB 데이터 불러오기 from tensorflow.keras.datasets import imdb (train_input, train_target), (test_input, test_target) = imdb.load_data( num_words=500) print(train_input.shape, test_input.shape) #//(25000,) (25000,) print(train_input[0]) #//[1, 14, 2..
2021.07.08 -
23강 - 순차 데이터와 순환 신경망
23강 - 순차 데이터와 순환 신경망 순차 데이터 텍스트 데이터 - 순서가 의미가 있음. 순환 신경망 순환되는 고리 존재. 앞 샘플의 출력을 재사용할 수 있음. 처리 단계 - 타임 스택 셀 - 순환층. 앞 정보를 기억하고 있다는 의미로 셀이라 함. 하나의 큰 덩어리로 표현. 출력 - 은닉상태라고 함. 이전 타임스택의 샘플을 처리할 때 재사용됨. 활성화함수 - 일반적으로 tanh 사용. tanh를 시그모이드라고 하기도 하는데, S 모양 그래프라 시그모이드! 타임스텝으로 펼친 신경망 완전연결신경망, 합성곱신경망 모두 입력 * 가중치 = 출력 합성곱신경망은 입력의 일부에만 곱해져서 적은 가중치 효율적으로 사용함. 가중치를 공유한다고 함. 타임스택으로 펼침. 타임스택에 따라 가중치 공유함. 순환 신경망의 가중치..
2021.07.08 -
22강 - 합성곱 신경망의 시각화
22강 - 합성곱 신경망의 시각화 가중치 시각화 합성곱 신경망 시각적으로 보기 좋음. 입력에 작은 필터(가중치)를 곱해서 출력 특성 맵을 만듦. 가중치가 높은 부분과 곱해지면 높은 출력 값 가짐. 가중치가 낮은 부분과 곱해지면 낮은 출력 값 가짐. 층의 가중치 분포 model.layers #//[, #// , #// , #// , #// , #// , #// , #// ] conv = model.layers[0] print(conv.weights[0].shape, conv.weights[1].shape) #//(3, 3, 1, 32) (32,) 필터의 가중치와 절편. conv_weights = conv.weights[0].numpy() plt.hist(conv_weights.reshape(-1, 1)) ..
2021.07.08 -
21강 - 합성곱 신경망을 사용한 이미지 분류
21강 - 합성곱 신경망을 사용한 이미지 분류 패션 MNIST 데이터 (train_input, train_target), (test_input, test_target) = keras.datasets.fashion_mnist.load_data() train_scaled = train_input.reshape(-1, 28, 28, 1) / 255.0 train_scaled, val_scaled, train_target, val_target = train_test_split( train_scaled, train_target, test_size=0.2, random_state=42) 이전과 다르게 합성곱 신경망을 사용하여 이미지 그대로 사용함. 28*28 -> 28*28*1의 3차원 배열 차원이 1 추가되어도 ..
2021.07.08 -
20강 - 합성곱 신경망의 개념과 동작 원리 배우기
20강 - 합성곱 신경망의 개념과 동작 원리 배우기 밀집층 dense 층 각 특성에 뉴런의 가중치 곱하고 절편을 더해서 출력. 그런데 이 방식은 2차원 -> 1차원이 되면서 기존 이미지가 다 사라짐. 도장을 찍는 형태로 이미지 특징을 유지할 수 없을까? 합성곱 합성곱 - 가중치의 개수가 입력 개수 전체에 대응하지 않고 일부만 존재함. 위 그림에서는 3개의 가중치만 존재. 입력보다 훨씬 작은 개수의 가중치 3~5 정도 사용. 커널=필터=가중치 합성곱에서는 뉴런이라고 표현을 잘 하지 않음. 입력층의 모든 특성이 다 곱해져서 다음 층으로 전달되어서 뉴런이란 말을 썼던 것인데, 여기서는 슬라이드식으로 입력층의 특성이 곱해짐. 보통은 필터라는 말을 많이 사용함. 필터 = 커널 = 가중치 2차원 합성곱 4*4 입력..
2021.07.08