Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Keras tensorflow已经存在了吗?_Python_Tensorflow_Keras_Jupyter Notebook - Fatal编程技术网

Python Keras tensorflow已经存在了吗?

Python Keras tensorflow已经存在了吗?,python,tensorflow,keras,jupyter-notebook,Python,Tensorflow,Keras,Jupyter Notebook,我需要帮助,我被这个已经存在的错误困住了 我是这项技术的新手,非常感谢您的帮助。 它在model.fit上抛出错误 ,在网上我找不到任何对我有帮助的东西 因此,有关此代码的任何信息都是有用的 import tensorflow as tf from tensorflow import keras from langdetect import detect from nltk.tokenize import sent_tokenize from keras.models import Sequen

我需要帮助,我被这个已经存在的错误困住了 我是这项技术的新手,非常感谢您的帮助。 它在model.fit上抛出错误 ,在网上我找不到任何对我有帮助的东西 因此,有关此代码的任何信息都是有用的

import tensorflow as tf
from tensorflow import keras
from langdetect import detect
from nltk.tokenize import sent_tokenize
from keras.models import Sequential
from keras.layers import Dense
from keras.layers import Dropout
from keras.layers import LSTM
from keras.callbacks import ModelCheckpoint, ReduceLROnPlateau
from keras.utils import np_utils
from keras import optimizers
抛出错误的代码

#This trains the model batching from the text file
#every epoch it prints out 300 characters at different "temperatures"
#temperature controls how random the characters sample: more temperature== more crazy (but often better) text
for iteration in range(1, 20):
    print()
    print('-' * 50)
    print('Iteration', iteration)
    with open("short_reviews_shuffle.txt",encoding="utf8") as f:
        for chunk in iter(lambda: f.read(90000), ""):
            X, y = getDataFromChunk(chunk)
            model.fit(X, y, batch_size=128, epochs=1, callbacks=None)

     # Select a text seed at random
    start_index = random.randint(0, len(text) - maxlen - 1)
    generated_text = text[start_index: start_index + maxlen]
    print('--- Generating with seed: "' + generated_text + '"')

    for temperature in [0.5, 0.8, 1.0]:
        print('------ temperature:', temperature)
        sys.stdout.write(generated_text)

        # We generate 300 characters
        for i in range(300):
            sampled = np.zeros((1, maxlen, len(chars)))
            for t, char in enumerate(generated_text):
                sampled[0, t, char_indices[char]] = 1.

            preds = model.predict(sampled, verbose=0)[0]
            next_index = sample(preds, temperature)
            next_char = chars[next_index]

            generated_text += next_char
            generated_text = generated_text[1:]

            sys.stdout.write(next_char)
            sys.stdout.flush()
        print()
这是我所犯的错误,也是我所处的困境

AlreadyExistsError                        Traceback (most recent call last)
<ipython-input-27-80576e87ab39> in <module>
      9         for chunk in iter(lambda: f.read(90000), ""):
     10             X, y = getDataFromChunk(chunk)
---> 11             model.fit(X, y, batch_size=128, epochs=1, callbacks=None)
     12 
     13      # Select a text seed at random

c:\users\inias somers\appdata\local\programs\python\python35\lib\site-packages\tensorflow\python\keras\engine\training.py in fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, max_queue_size, workers, use_multiprocessing, **kwargs)
   1637           initial_epoch=initial_epoch,
   1638           steps_per_epoch=steps_per_epoch,
-> 1639           validation_steps=validation_steps)
   1640 
   1641   def evaluate(self,

c:\users\inias somers\appdata\local\programs\python\python35\lib\site-packages\tensorflow\python\keras\engine\training_arrays.py in fit_loop(model, inputs, targets, sample_weights, batch_size, epochs, verbose, callbacks, val_inputs, val_targets, val_sample_weights, shuffle, initial_epoch, steps_per_epoch, validation_steps)
    213           ins_batch[i] = ins_batch[i].toarray()
    214 
--> 215         outs = f(ins_batch)
    216         if not isinstance(outs, list):
    217           outs = [outs]

c:\users\inias somers\appdata\local\programs\python\python35\lib\site-packages\tensorflow\python\keras\backend.py in __call__(self, inputs)
   2984 
   2985     fetched = self._callable_fn(*array_vals,
-> 2986                                 run_metadata=self.run_metadata)
   2987     self._call_fetch_callbacks(fetched[-len(self._fetches):])
   2988     return fetched[:len(self.outputs)]

c:\users\inias somers\appdata\local\programs\python\python35\lib\site-packages\tensorflow\python\client\session.py in __call__(self, *args, **kwargs)
   1437           ret = tf_session.TF_SessionRunCallable(
   1438               self._session._session, self._handle, args, status,
-> 1439               run_metadata_ptr)
   1440         if run_metadata:
   1441           proto_data = tf_session.TF_GetBuffer(run_metadata_ptr)

c:\users\inias somers\appdata\local\programs\python\python35\lib\site-packages\tensorflow\python\framework\errors_impl.py in __exit__(self, type_arg, value_arg, traceback_arg)
    526             None, None,
    527             compat.as_text(c_api.TF_Message(self.status.status)),
--> 528             c_api.TF_GetCode(self.status.status))
    529     # Delete the underlying status object from memory otherwise it stays alive
    530     # as there is a reference to status from this from the traceback due to

AlreadyExistsError: Resource __per_step_6/training/Adam/gradients/lstm/while/ReadVariableOp_8/Enter_grad/ArithmeticOptimizer/AddOpsRewrite_Add/tmp_var/struct tensorflow::TemporaryVariableOp::TmpVar
     [[{{node training/Adam/gradients/lstm/while/ReadVariableOp_8/Enter_grad/ArithmeticOptimizer/AddOpsRewrite_Add/tmp_var}} = TemporaryVariable[dtype=DT_FLOAT, shape=[1024,4096], var_name="training/A...dd/tmp_var", _device="/job:localhost/replica:0/task:0/device:CPU:0"](^training/Adam/gradients/lstm/while/strided_slice_11_grad/StridedSliceGrad)]]
AlreadyExister错误回溯(最近一次调用上次)
在里面
9国际热核实验堆中的块(λ:f.read(90000),“”):
10 X,y=getDataFromChunk(块)
--->11模型拟合(X,y,批量大小=128,历元数=1,回调数=None)
12
13#随机选择一个文本种子
c:\users\inias-somers\appdata\local\programs\python\python35\lib\site-packages\tensorflow\python\keras\engine\training.py(self、x、y、批处理大小、历元、冗余、回调、验证拆分、验证数据、随机、类权重、样本权重、初始历元、每历元的步骤、验证步骤、最大队列大小、工作者、使用多处理、**kwargs)
1637初始纪元=初始纪元,
1638步数/历元=步数/历元,
->1639验证步骤=验证步骤)
1640
1641 def评估(自我,
c:\users\inias-somers\appdata\local\programs\python\35\lib\site-packages\tensorflow\python\keras\engine\training\u array.py in-fit\u循环(模型、输入、目标、样本权重、批量大小、历元、冗余、回调、val\u输入、val\u目标、val\u样本权重、无序、初始历元、每历元的步骤、验证步骤)
213 ins_批次[i]=ins_批次[i].toarray()
214
-->215输出=f(ins\U批次)
216如果不存在(输出,列表):
217出局=[出局]
c:\users\inias-somers\appdata\local\programs\python\python35\lib\site-packages\tensorflow\python\keras\backend.py在调用中(self,inputs)
2984
2985 fetched=self.\u callable\u fn(*数组\u vals,
->2986运行单元元数据=self.run单元元数据)
2987 self.\u call\u fetch\u callbacks(fetched[-len(self.\u fetches):]))
2988获取的返回[:len(自输出)]
c:\users\inias-somers\appdata\local\programs\python\35\lib\site-packages\tensorflow\python\client\session.py在调用中(self,*args,**kwargs)
1437 ret=tf_session.tf_SessionRunCallable(
1438 self.\u session.\u session,self.\u handle,args,status,
->1439运行(元数据)
1440如果运行\u元数据:
1441 proto_data=tf_session.tf_GetBuffer(run_metadata_ptr)
c:\users\inias-somers\appdata\local\programs\python\python35\lib\site-packages\tensorflow\python\framework\errors\u impl.py in\uuuuuuuuu-exit\uuuuuuu(self,type\u-arg,value\u-arg,traceback\u-arg)
526没有,没有,
527兼容as_文本(c_api.TF_消息(self.status.status)),
-->528 c_api.TF_GetCode(self.status.status))
529#从内存中删除基础状态对象,否则它将保持活动状态
530#由于以下原因,在回溯中有一个状态参考:
已存在错误:Resource u per_step_6/training/Adam/gradients/lstm/while/ReadVariableOp_8/输入梯度/算术优化器/AddOpsWrite_Add/tmp_var/struct tensorflow::TemporaryVariableOp::TmpVar
[{node training/Adam/gradients/lstm/while/ReadVariableOp_8/Enter_grad/ArithmeticOptimizer/addopsrerewrite\u Add/tmp_var}}=TemporaryVariable[dtype=DT_FLOAT,shape=[10244096],var_name=“training/A…dd/tmp_var”,_device=“/job:localhost/replica:0/task:0/device:CPU:0”](^training/Adam/gradients/lstm/lstm/while/whiled/stride/11)/dsl]

有人可以帮助我了解keras,我现在不知道该怎么做了,我建议你把代码转换成更地道的代码

而不是

for chunk in iter(lambda: f.read(90000), ""):
    X, y = getDataFromChunk(chunk)
    model.fit(X, y, batch_size=128, epochs=1, callbacks=None)
创建生成数据的生成器并使用fit_generator方法


不要使用执行20次迭代的顶部循环,而是使用回调来评估您的预测,并使用epochs=20调用fit_generator。

谢谢,但我如何才能做到这一点?keras对meI来说是全新的,通过谷歌搜索找到了本教程:。