0
현재 응용 프로그램에서 숙련 된 모델을 사용하려고합니다.응용 프로그램에서 tflearn 훈련 모델을 사용하는 방법은 무엇입니까?
나는 우리에게 LSTM 모델 도시 이름을 생성하는 this code을 사용하고있다. 코드가 잘 작동하고 도시 이름을 얻을 수 있습니다.
지금 모델을 다시 저장하지 않고 다른 응용 프로그램에서로드 할 수 있도록 모델을 저장하려고합니다. 여기
내 기본 응용 프로그램의 코드입니다 : 모양이 때 변경 이유, 내가 볼 수없는 불행하게도Do you want to generate a U.S. city names ? [y/n]y
-- Test with temperature of 1.5 --
rk
Orange Park AcresTraceback (most recent call last):
File "App.py", line 46, in <module>
model.generate(20, temperature=1.5, seq_seed=seed, display=True)
File "/usr/local/lib/python3.5/dist-packages/tflearn/models/generator.py", line 216, in generate
preds = self._predict(x)[0]
File "/usr/local/lib/python3.5/dist-packages/tflearn/models/generator.py", line 180, in _predict
return self.predictor.predict(feed_dict)
File "/usr/local/lib/python3.5/dist-packages/tflearn/helpers/evaluator.py", line 69, in predict
o_pred = self.session.run(output, feed_dict=feed_dict).tolist()
File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/client/session.py", line 717, in run
run_metadata_ptr)
File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/client/session.py", line 894, in _run
% (np_val.shape, subfeed_t.name, str(subfeed_t.get_shape())))
ValueError: Cannot feed value of shape (1, 25, 61) for Tensor 'InputData/X:0', which has shape '(?, 20, 61)'
: 여기
from __future__ import absolute_import, division, print_function
import os
from six import moves
import ssl
import tflearn
from tflearn.data_utils import *
path = "US_cities.txt"
maxlen = 20
X, Y, char_idx = textfile_to_semi_redundant_sequences(
path, seq_maxlen=maxlen, redun_step=3)
# --- Create LSTM model
g = tflearn.input_data(shape=[None, maxlen, len(char_idx)])
g = tflearn.lstm(g, 512, return_seq=True, name="lstm1")
g = tflearn.dropout(g, 0.5, name='dropout1')
g = tflearn.lstm(g, 512, name='lstm2')
g = tflearn.dropout(g, 0.5, name='dropout')
g = tflearn.fully_connected(g, len(char_idx), activation='softmax', name='fc')
g = tflearn.regression(g, optimizer='adam', loss='categorical_crossentropy',
learning_rate=0.001)
# --- Initializing model and loading
model = tflearn.models.generator.SequenceGenerator(g, char_idx)
model.load('myModel.tfl')
print("Model is now loaded !")
#
# Main Application
#
while(True):
user_choice = input("Do you want to generate a U.S. city names ? [y/n]")
if user_choice == 'y':
seed = random_sequence_from_textfile(path, 20)
print("-- Test with temperature of 1.5 --")
model.generate(20, temperature=1.5, seq_seed=seed, display=True)
else:
exit()
그리고 것은 내가 출력으로 무엇을 얻을 내 응용 프로그램에서 generate() 사용. 아무도 내가이 문제를 해결할 수 있도록 도와 줄 수 있습니까?
는윌리엄
이 질문에 완전히 답할 수는 없지만'sef_maxlen = 20'을'tflearn.models.generator.SequenceGenerator'에 추가하려고 할 수 있습니까? 나는이 생성자 매개 변수에서 '25 '가 나온 것 같아요. – sygi
안녕하세요. sygi, 답장을 보내 주셔서 감사 드리며 늦어서 반갑습니다. 나는 seq_maxlen을 바꾸었고 모양 문제가 수정되었습니다! 하지만 말했듯이 완전하게 작동하지 않는다고 ... 생성 된 이름은 전혀 새로운 것이 아닙니다. checkpoint_path를 생성자에 추가하려고 시도했지만 여전히 아무것도 변경하지 않았습니다. –