Skip to content

attention 계산중에 Dense layer 반복생성 Bug #36

Open
@hccho2

Description

@hccho2

두가지에 대해서 의견 드립니다.

  1. page 386 코드중에
for i in range(DEFINES.max_sequence_length):

    ...

    if params['attention'] == True:
        W1 = tf.keras.layers.Dense(params['hidden_size'])
        W2 = tf.keras.layers.Dense(params['hidden_size'])

attention을 계산하기 위한 Dense layer가 for loop 안쪽에 있어, Dense layer가 max_sequence_length 만큼 반복 생성되고 있습니다.
Dense layer들을 for 밖으로 뽑아야 할 것 같습니다.

  1. 6장의 챗봇에서

page 320의 PREDICT부분에서는 Auto Regressive한 구조로 설계되어 있지 않습니다.
그러면, main.py에서 문장을 생성할 때, loop를 돌려, 앞 step에서 생성한 것을 다음 step의 입력에 더해 주어서 문장을 만들어야 합니다. code가 그렇게 되어 있지 않습니다.

다시 정리하면, GreedyEmbeddingHelper와 같이 모델 내부를 수정하든지, 아니면 생성하는 부분을 수정해야 합니다.

page 327에 제시되어 있는 "가끔 궁금해" --> "네가 연락해보세요" 와 같은 결과가 나온 것은 입력 문장이 짧아 우연히 그렇게 나온 것 같습니다.

이미 제기된 이슈중에 유사한 이슈가 있었습니다.
#7

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions