Moremoresuga 2017-04-20 03:24 采纳率: 0%
浏览 1094
已结题

急求!Python3.5下运行报错

我用的Python3.5,TensorFlow0.11.0图片说明

def gen_poetry():  
    def to_word(weights):  
        t = np.cumsum(weights)  
        s = np.sum(weights)  
        sample = int(np.searchsorted(t, np.random.rand(1)*s))  
        return words[sample]  

    _, last_state, probs, cell, initial_state = neural_network()  

    with tf.Session() as sess:  
        sess.run(tf.initialize_all_variables())  

        saver = tf.train.Saver(tf.all_variables())  
        saver.restore(sess, 'poetry.module-49')  

        state_ = sess.run(cell.zero_state(1, tf.float32))  

        x = np.array([list(map(word_num_map.get, '['))])  
        [probs_, state_] = sess.run([probs, last_state], feed_dict={input_data: x, initial_state: state_})  
        #word = to_word(probs_)  
        word = words[np.argmax(probs_)]  
        poem = ''  
        while word != ']':  
            poem += word  
            x = np.zeros((1,1))  
            x[0,0] = word_num_map[word]  
            [probs_, state_] = sess.run([probs, last_state], feed_dict={input_data: x, initial_state: state_})  
            #word = to_word(probs_)  
            word = words[np.argmax(probs_)]  
        return poem  

print(gen_poetry()) 
  • 写回答

1条回答

  • oyljerry 2017-04-20 05:29
    关注

    sample = int(np.searchsorted(t, np.random.rand(1)*s))

    return words[sample]

    你打印一下sample,和words,应该是sample的值超过words的范围了,所以越界错误了

    评论

报告相同问题?

悬赏问题

  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?
  • ¥15 电磁场的matlab仿真
  • ¥15 mars2d在vue3中的引入问题
  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面
  • ¥15 算法题:数的划分,用记忆化DFS做WA求调
  • ¥15 chatglm-6b应用到django项目中,模型加载失败
  • ¥15 CreateBitmapFromWicBitmap内存释放问题。
  • ¥30 win c++ socket
  • ¥15 C# datagridview 栏位进度