第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

帶有 Tensorflow 數(shù)據(jù)集 API 的 Keras 生成器 - IndexError:

帶有 Tensorflow 數(shù)據(jù)集 API 的 Keras 生成器 - IndexError:

慕無(wú)忌1623718 2021-06-03 23:22:54
我需要開(kāi)發(fā)一個(gè) RNN 模型,并希望使用數(shù)據(jù)生成器來(lái)提供訓(xùn)練/評(píng)估循環(huán)。首先,我在從 csv 文件中獲取數(shù)據(jù)時(shí)使用了這個(gè)幫助功能。RECORD_DEFAULTS_TRAIN = [[0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0]]def decode_csv(line):   parsed_line = tf.decode_csv(line, RECORD_DEFAULTS_TRAIN)   label =  parsed_line[-1]      # label is the last element of the list   del parsed_line[-1]           # delete the last element from the list   del parsed_line[0]            # even delete the first element bcz it is assumed NOT to be a feature   features = tf.stack(parsed_line)  # Stack features so that you can later vectorize forward prop., etc.   return features, label 這是我的數(shù)據(jù)生成器功能:def data_generator(file_path_list, batch_size):  filenames = tf.placeholder(tf.string, shape=[None])  dataset = tf.data.Dataset.from_tensor_slices(filenames)  dataset = dataset.flat_map(lambda filename: tf.data.TextLineDataset(filename).skip(1).map(decode_csv))  dataset = dataset.shuffle(buffer_size=1000)  dataset = dataset.batch(batch_size)  iterator = dataset.make_initializable_iterator()  next_element = iterator.get_next()  with tf.Session() as sess:      while True:          sess.run(iterator.initializer, feed_dict={filenames: file_path_list})          while True:                          try:                batch_data, batch_labels = sess.run(next_element)                # Dimension of the data needs to be: (batch_size, length_of_each_sequence, nr_inputs_in_each_timestep)                # Since the last batch in a epoch can have a different size,                # "batch_data.shape[0]" is used instead of batch_size                batch_data = np.reshape(batch_data, (batch_data.shape[0], SEQUENCE_LEN, 1))              except tf.errors.OutOfRangeError:                break              yield (batch_data, batch_labels)
查看完整描述

1 回答

?
冉冉說(shuō)

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超1個(gè)贊

解決了。我想解釋這個(gè)問(wèn)題而不是刪除我的帖子,以便它也可以幫助其他人。


我只會(huì)給出evaluate_generator(...)函數(shù)的例子。這就是我調(diào)用函數(shù)的方式..


lstm_model.evaluate_generator(data_generator(TEST_FILE_PATHS, TEST_BATCH_SIZE), 

                             steps=(NR_TEST_EXAMPLES // TEST_BATCH_SIZE), 

                             verbose=1)

我將其更改如下:


test_data_generator = data_generator(TEST_FILE_PATHS, TEST_BATCH_SIZE)

lstm_model.evaluate_generator(test_data_generator, 

                              steps=(NR_TEST_EXAMPLES // TEST_BATCH_SIZE), 

                              verbose=1)

問(wèn)題解決了。我在不同的地方看到了這兩種用法,即使人們?cè)诰W(wǎng)上找到的每一種信息都不一定是真的。我也不清楚為什么在更改上面的代碼時(shí)可以解決它。如果有人知道,我會(huì)很高興聽(tīng)到解釋。


查看完整回答
反對(duì) 回復(fù) 2021-06-16
  • 1 回答
  • 0 關(guān)注
  • 206 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)