• 카테고리

    질문 & 답변
  • 세부 분야

    자연어 처리

  • 해결 여부

    미해결

강의 내용중 질문있습니다.

24.05.02 15:10 작성 조회수 40

0

LSTM 함수 정의전 맨 아래와 같이 정의를하는데

B같은 경우 인풋을 의미로

sentences = ["hi man", "hi woman"]

리스트의 값과 같이 2개를 받는다고 생각하면되나요?

T 같은경우에는 time이 정확히 어떤것을 의미하는 것일까요??

D 또한 feature인데 어떤것을 의미하는 지모르겠습니다..

U는 아웃풋인건 이해했고요..

혹시 아래 이미지와 같은 이미지를 기준으로 T값 2는

hi를 h, i 로 2개 받는다는 의미일까요?

D와 T는 모르겠습니다..

U는 이미지 기준 4겠네요?

 

이부분만해결되면 코드를 더 이해할수있을것같습니다ㅜㅜ

B = 2 #batch size / 2개의 인풋 값이 들어가도록 설정
T = 5 #time steps
D = 1 #features
U = 3 #LSTM units / LSTM output 유닛 개수

X = np.random.randn(B,T,D)
print(X.shape)
print("\n")
print(X)

답변 1

답변을 작성해보세요.

1

LSTM 함수 정의전 맨 아래와 같이 정의를하는데

B같은 경우 인풋을 의미로

sentences = ["hi man", "hi woman"]

리스트의 값과 같이 2개를 받는다고 생각하면되나요?

==> 맞습니다. 정확하게는 전처리 과정을 거쳐서 [["hi", "man"], ["hi", "woman"]] 이렇게 B=2, T=2 가 됩니다.

T 같은경우에는 time이 정확히 어떤것을 의미하는 것일까요??
["hi", "man"] 에서 t1 은 "hi", t2 는 "man" 입니다. 만약 T 를 5로 정한 경우에는 전처리 과정에서 다음과 같이 바꿔줘야 합니다.

[["hi", "man", "pad", "pad", "pad"], ["hi", "woman", "pad", "pad", "pad"]]

D 또한 feature인데 어떤것을 의미하는 지모르겠습니다.
==> 단어의 경우 word embedding의 dimension 수를 의미합니다. 예제에서는 간단히 하려고 1로 정했지만 만약 512 차원의 word embedding으로 만들어 주면 512, 100 차원의 word embedding을 만들면 D=100 이 됩니다.

혹시 아래 이미지와 같은 이미지를 기준으로 T값 2는

hi를 h, i 로 2개 받는다는 의미일까요?

==> 맞습니다. 당연히 helo 의 경우는 h, e, l, o 로 T 가 4 겠지요?

U는 이미지 기준 4겠네요? ==> 아니요. 3 입니다. hidden layer 에 값(가중치)이 3개 있으니까요.

output layer 가 h, e, l, o 중 하나를 맞추는 softmax 출력층이므로 neuron 이 4 입니다.


동휘김님의 프로필

동휘김

질문자

2024.05.02

감사합니다~!