본문 바로가기

파이썬 프로그래밍59

40.[RNN기초] RNN(many to one) 순전파 구현(실습) 이전시간에 아래의 순환 셀과 분류기(fc)에 대하여 각 가중치는 아래와 같음을 증명하였다. Wxh = ( sequence length(2), hidden node(3) ) → ( 2, 3 ) Whh = ( hidden node(3), hidden node(3) ) → ( 3, 3 ) Bh = (1, 1) Wy = ( hidden node(3), output feature(1) ) → ( 3, 1 ) By = (1, 1) 순전파를 코드로 구현해 보자. 1. 데이터 전처리 38차시에서 실시했던 전처리 코드이다. 그대로 시행하면 된다. import numpy as np from itertools import * np.random.seed(230907) dataset = ["as", "soon", "as"] d.. 2023. 9. 13.
39.[RNN기초] RNN(many to one) 순전파 구현(이론) 이전시간에 자연어 데이터를 이용하기 위해 문장을 의미 있는 단위로 구별(토크나이징)하고 구별한 토큰을 컴퓨터가 이해할 수 있는 데이터로 변환(워드 임베딩)을 실시하였다. 그리고 데이터를 직렬로 이어 붙이면 순서에 의미가 없는 데이터가 되므로 병렬로 쌓아 (batch, time steps, sequence length) 형태로 전처리함을 이야기하였다. as, soon의 문자에 대해 순서대로 ('as', 'as', 'soon'), ('soon', 'as', 'as'), ('as', 'soon', 'as') 이고 as → [1. 0.], soon → [0. 1.] 일 때 데이터 전처리 결과는 [ [ [1. 0.] [1. 0.] [0. 1.] ] [ [0. 1.] [1. 0.] [1. 0.] ] [ [1. 0... 2023. 9. 12.
38.[RNN기초] 자연어 데이터는 어떻게 접근해야 할까? 드디어 연구를 끝냈다! 1. 들어가며 이전까지 학습한 내용의 데이터는 ( 데이터 갯수, 데이터 특징 )으로 구성된 csv 자료였거나 ( 데이터 갯수, 가로, 세로, 채널 )로 구성된 이미지 파일이었다. 이번엔 인공신경망에 자언어 데이터를 입력할 수 없을까? 자연어란 인간이 사용하는 언어라고 쉽게 생각하자. 예를 들어 "as soon as", "as as soon", "soon as as" 세 개의 문장에 대해 문법적으로 어떤 것이 의미 있는지 구별할 수 있는 인공신경망을 제작한다고 하자 "as soon as" → 1 "as as soon" → 0 "soon as as" → 0 "as soon as"는 문법적으로 올바르고 영어에서 널리 사용된다. 이것은 어떤 특정한 사건이나 상태가 발생한 직후 또는 직후에.. 2023. 9. 11.
37. [CNN기초] 다채널(multi channel) 다루기 이전 시간까지 1개 채널을 가진 이미지를 1개의 필터를 이용하여 특성을 추출한 후 학습을 진행하였다. 1개 채널을 가진 이미지로 만들기 위해 흑백이미지(Grayscale)로 만들어 학습시켰다. 하지만, 색깔도 엄연히 이미지의 특징에 해당된다. 예를 들어 아래 사진의 색맹분들 처럼 입력 데이터에 색깔 정보가 없다면, 인공신경망은 잘못된 학습을 할 가능성이 높다. 색상에 대한 정보를 어떻게 다루어야 하는지 CNN 시리즈 마지막 포스트로 이야기 하고자 한다. 1. 채널(channel) 채널이란 영상 또는 이미지의 색상에 대한 정보를 담은 객체라고 생각해 볼 수 있으며 일반적으로 아래와 같이 R, G, B, Alpha로 구성되어 있다. 아래 코드를 통해 직접 확인해 보자. import numpy as np im.. 2023. 2. 18.