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 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)