[파이썬 구현] Average Pooling(파이썬 문법으로 구현하기) 임의의 10개의 랜덤한 수를 생성하고 window size =3 을 기준으로 Average pooling 을 실시하는 코드를 구현해보도록 하겠습니다. 아래 그림은 윈도우 1칸씩 이동하는 그림을 순서대로 그려본것입니다. 1칸 이동할때 연산되는 숫자는 3개이며 이 3개의 숫자의 평균 구하는것이 Average Pooling 연산입니다. 연산을 하고 난 뒤에 새롭게 생긴 숫자의 배열 크기는 8이 됩니다. 머리로 연상이 되시지 않으면 아래 공식을 외우셔도 좋습니다! 전체열(10) - window size(3) +1 = 8 코드로 구현하며 자세히 알아보겠습니다. import random pool_size = 3 data = [random.randint(0,10) for _ in range(10)] # 10 data.. 머신러닝,딥러닝/파이썬, 넘파이 구현 2021. 7. 21. [파이썬 구현] one-hot encoding 구현(with 파이썬 문법) 모델을 돌리기 위해선 아래와 같은 문자로 된 데이터를 만나면, 숫자로 변경해줘야 합니다. 왜냐하면 기계는 글자를 모르기 때문이죠. 하지만 문자를 숫자로 바꾸면 또다른 문제가 발생하는데요. 0 ,1, 2 3 은 단순히 동물들을 구분하기 위한 숫자이지만 더 큰숫자가 모델에 더 큰 영향력을 끼치는 부작용이 발생하게 됩니다. 이러한 문제를 해결하기 위한 것이 one-hot encoding 인데요. 실제로 해당 되는 부분을 1로 표시하고 아닐 경우에는 모두 0으로 표시하는 형태입니다. 이번 포스팅에서는 오로지 파이썬 문법을 통해서 해당 코드를 구현 해보도록 하겠습니다. 파이썬 코드 구현 우선 위 그림과 같은 형태를 만들기 위해선 모두 0으로 채워 주는 작업을 해야합니다. labels 라는 리스트에 동물들을 우선 .. 머신러닝,딥러닝/파이썬, 넘파이 구현 2021. 7. 6. [넘파이 기초] 차원 추가/축소/ 변경 완벽 정리 이번 포스팅에서는 ndarray의 size는 유지하면서 차원을 변경하는 법에 대해 알아보도록 할게요. reshape을 이용한 차원 확대 1. 1차원 --> 2차원 이전시간에 언급했듯이 reshape은 말그대로 shape을 바꿔주는 api입니다. 내가 확장하고 싶은 차원의 위치에 1를 넣어주면 되는데요. import numpy as np a = np.arange(9) b = a.reshape((1,9)) c = a.reshape((9,1)) print(f"a: {a.shape}\n {a}\n") print(f"b: {b.shape}\n {b}\n") print(f"c: {c.shape}\n {c}\n") output : b는 row 위치에 1를 위치 시킴으로써 (9,)를 1개 가진 형태의 행렬을 만들어줍니.. 머신러닝,딥러닝/파이썬, 넘파이 구현 2021. 5. 12. 이전 1 다음