본문 바로가기

반응형

torch

(2)
Pytorch - ModuleList vs List Pytorch의 nn 모듈은 neural networks를 위한 다양한 구성 요소 클래스를 제공합니다. 특히, 여러 개의 구성 요소를 하나의 리스트로 담는 nn.ModuleList 객체 또한 많이 사용되는데요, 겉보기에는 일반 파이썬 list와 큰 차이가 없어 보입니다. 다음과 같이 간단한 네트워크를 구성해 보겠습니다. import torch import torch.nn as nn class MyNN(nn.Module): def __init__(self, fc_input_size, fc_hidden_sizes, num_classes): super(MyNN, self).__init__() fcs = [nn.Sequential( nn.Linear(fc_input_size, fc_hidden_size), nn..
Pytorch - embedding 임베딩 (Embedding) 이라는 말은 자연어처리 분야에서 (NLP) 매우 많이 등장하는 단어로 이산적, 범주형인 변수를 sparse한 one-hot 인코딩 대신 연속적인 값을 가지는 벡터로 표현하는 방법을 말합니다. 즉, 수많은 종류를 가진 단어, 문장에 대해 one-hot 인코딩을 수행하면 수치로는 표현이 가능하겠지만 대부분의 값이 0이 되버려 매우 sparse 해지므로 임의의 길이의 실수 벡터로 밀집되게 표현하는 일련의 방법을 임베딩이라 하고 각 카테고리가 나타내는 실수 벡터를 임베딩 벡터라고 합니다. Pytorch, Tensorflow 딥러닝 프레임워크는 이러한 임베딩을 쉽게 할 수 있는 api 함수를 제공합니다. 임베딩을 할 전체 크기에 대해 각 카테고리 별로 지정한 차원을 가지는 임베딩 벡터..

반응형