레플리
글 수 220

seq2seq train과 test 분리에 대한 질문

조회 수 116 추천 수 0 2020.09.03 11:03:13


seq2seq모델을 이용해서

챗봇을 개발하려고 합니다.

그런데 서비스화하려고 생각해보니

보통 구현들이

train을 돌리고 test가 합쳐져있는데

저는 train코드와 test코드를 분리해서

train코드에서 생성된 모델을

teat코드를 이용해 서비스에서 사용하고 싶습니다.

 

하지만 이런식으로 train과 test분리된 자료가 없어

분리하는 방법을 모르겠습니다..

 

선형회귀 모델을 예로들면

train.py에서 학습을 진행하고 모델을 저장해서

test.py에서 모델을 로드에서 model.predict(x,y)하는 방식이 쉽게 적용되는데

seq2seq는 어떤식으로 분리하여 개발할 수 있을까요 ?

엮인글 :

깊은바다

2020.09.04 12:40:12
*.68.248.98

간단한 seq2seq 예제들은 훈련 모델을 그대로 사용해서 예측을 하기도 합니다. 예측시 입력을 [Start, Pad, Pad, ...] 이런 식으로 패딩을 넣어서 한 번에 모든 타임스텝을 돌립니다. 사실 이렇게 하면 안되고 훈련과 예측 모델을 별도로 구현해야 합니다. 

 

훈련시에는 LSTM에서 모든 타임스텝을 한 번에 자동으로 진행합니다. 반면에 예측시에는 LSTM을 타임스텝 1번씩만 돌립니다. 그리고 그 결과를 저장해서 새로 LSTM을 초기화하고 다음 타임스텝을 반복적으로 실행합니다. 이렇게 해야만 이전 타임스텝의 출력 단어를 다음 타임스텝의 입력으로 넣을 수 있습니다.

 

http://aidev.co.kr/chatbotdeeplearning/7921

 

위의 예제는 훈련과 예측 모델을 분리하여 구현했습니다. 참고하시기 바랍니다.

Nike

2020.09.04 13:26:13
*.133.55.106

조언 감사합니다.

하지만 알려주신 코드 또한

예측모델을 생성할때 이미 학습된 상태의 훈련모델을 이용해서 생성하는데

이 경우도 결국 .fit()이 진행된 코드 내부에 예측모델이 있어야 생성할 수 있는 것 아닌가요 ?

 

저는 train.py로 .h5 사전학습된 모델을 생성해서 test.py에서 .h5를 로드 후 질문 -> 답변 이라는 결과물을 얻고 싶습니다. 이는 불가능한 건가요 ?

Nike

2020.09.04 14:43:59
*.133.55.106

감사합니다 이것저것해보니 해결한것 같습니다 !!!!

냥냥

2021.11.14 19:15:58
*.7.24.187

혹시 어떤식으로 해결하셨는지 알 수 있을까요? 비슷한 문제로 고민중에 있습니다.
List of Articles
제목 글쓴이 날짜sort 조회 수
카톡 대화를 학습하는 AI 아바타 챗봇 - 레플리 file 깊은바다 2024-01-17 362
인간에 욕설하는 AI 로봇 등장 깊은바다 2016-03-26 439
삼성전자 '소프트웨어 개발회사 적극 사들일 것' 깊은바다 2016-03-26 121
가입! [1] 뭐지What 2016-03-26 62
가입인사 [2] Granada 2016-03-26 59
가입인사 [1] MarkChoi 2016-03-27 54
일본에서 인공지능이 소설쓰기 도전, 문학상 1차 심사 통과 성과 [2] 깊은바다 2016-03-30 711
가입인사 올립니다. [2] KoreanShortHair 2016-03-31 68
가입인사 [1] 글래머로리 2016-04-01 55
MS, AI 채팅봇 개발도구 공개 깊은바다 2016-04-01 223
구글 딥마인드 카드 게임 연구 file 깊은바다 2016-04-05 326
AI가 그린 그림 900만원에 팔려..예술 넘보는 인공지능 file [1] 깊은바다 2016-04-08 279
가입인사 올려봅니다 Bang 2016-04-11 48
가입인사드립니다. 고구마니 2016-04-19 42
가입인사 hakim 2016-04-28 42
상식을 배우는 인공지능 깊은바다 2017-03-13 263