2017-09-18 21 views
0

コンピュータ:Win10ホームエディション_lstm_ops.dllがtensorflowで見つけることができないのはなぜ、それ実際に私のパスに

エディタ:アナコンダ/スパイダー

Tensorflow:tensorflow-GPU

import tensorflow as tf 
import keras 
from tensorflow.examples.tutorials.mnist import input_data 

tf.set_random_seed(1) 

mnist = input_data.read_data_sets('MNIST_data/', one_hot=True) 

lr = 0.001 
training_iters = 100000 
batch_size = 128 

n_inputs = 28 
n_steps = 28  
n_hidden_units = 128 
n_classes = 10  

x = tf.placeholder(tf.float32, [None, n_steps, n_inputs]) 
y = tf.placeholder(tf.float32, [None, n_classes]) 

weights = {  
    'in': tf.Variable(tf.random_normal([n_inputs, n_hidden_units])), 
    'out': tf.Variable(tf.random_normal([n_hidden_units, n_classes])) 
} 
biases = { 
    'in': tf.Variable(tf.constant(0.1, shape=[n_hidden_units, ])), 
    'out': tf.Variable(tf.constant(0.1, shape=[n_classes, ])) 
} 


def RNN(X, weights, biases): 
    # hidden layer for input to cell 

    X = tf.reshape(X, [-1, n_inputs]) 
    X_in = tf.matmul(X, weights['in']) + biases['in'] 
    X_in = tf.reshape(X_in, [-1, n_steps, n_hidden_units]) 

    # cell 
    ########################################## 

    cell = tf.contrib.rnn.BasicLSTMCell(n_hidden_units) 

    init_state = cell.zero_state(batch_size, dtype=tf.float32) 

    outputs, final_state = tf.nn.dynamic_rnn(cell, X_in, 
    initial_state=init_state, time_major=False) 

    outputs = tf.unstack(tf.transpose(outputs, [1,0,2])) 
    results = tf.matmul(outputs[-1], weights['out']) + biases['out'] 

pred = RNN(x, weights, biases) 
cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=pred, labels=y)) 
train_op = tf.train.AdamOptimizer(lr).minimize(cost) 

correct_pred = tf.equal(tf.argmax(pred, 1), tf.argmax(y, 1)) 
accuracy = tf.reduce_mean(tf.cast(correct_pred, tf.float32)) 

with tf.Session() as sess: 
    tf.global_variables_initializer().run() 
    step = 0 
    while step * batch_size < training_iters: 
     batch_xs, batch_ys = mnist.train.next_batch(batch_size) 
     batch_xs = batch_xs.reshape([batch_size, n_steps, n_inputs]) 
     sess.run([train_op], feed_dict={x: batch_xs,y: batch_ys,}) 

     if step % 20 == 0: 
      print(sess.run(accuracy, feed_dict={x: batch_xs,y: batch_ys,})) 
     step += 1 

このRNNコードを実行すると、_lstm_ops.dllが見つからないという混乱したエラーが表示されます...しかし、この.dllファイルは実際にこのパス(C:\ Users \ Clean山\ AppData \ Local \ conda \ conda \ envs \ opencvtest \ lib \ site-packages \ tensorflow \ contrib \ rnn \ python \ ops_lstm_ops.dll)誰でも私を助けることができますか? QQ

packages\keras\engine\__init__.py", line 8, in <module> 
     from .training import Model 

    File "C:\Users\清山\AppData\Local\conda\conda\envs\opencvtest\lib\site-packages\keras\engine\training.py", line 25, in <module> 
    from .. import callbacks as cbks 

    File "C:\Users\清山\AppData\Local\conda\conda\envs\opencvtest\lib\site-packages\keras\callbacks.py", line 26, in <module> 
    from tensorflow.contrib.tensorboard.plugins import projector 

    File "C:\Users\清山\AppData\Local\conda\conda\envs\opencvtest\lib\site-packages\tensorflow\contrib\__init__.py", line 27, in <module> 
    from tensorflow.contrib import cudnn_rnn 

    File "C:\Users\清山\AppData\Local\conda\conda\envs\opencvtest\lib\site-packages\tensorflow\contrib\cudnn_rnn\__init__.py", line 28, in <module> 
    from tensorflow.contrib.cudnn_rnn.python.ops.cudnn_rnn_ops import CudnnGRU 

    File "C:\Users\清山\AppData\Local\conda\conda\envs\opencvtest\lib\site-packages\tensorflow\contrib\cudnn_rnn\python\ops\cudnn_rnn_ops.py", line 21, in <module> 
    from tensorflow.contrib.rnn.python.ops import lstm_ops 

    File "C:\Users\清山\AppData\Local\conda\conda\envs\opencvtest\lib\site-packages\tensorflow\contrib\rnn\python\ops\lstm_ops.py", line 36, in <module> 
    resource_loader.get_path_to_datafile("_lstm_ops.so")) 

    File "C:\Users\清山\AppData\Local\conda\conda\envs\opencvtest\lib\site-packages\tensorflow\contrib\util\loader.py", line 55, in load_op_library 
    ret = load_library.load_op_library(path) 

    File "C:\Users\清山\AppData\Local\conda\conda\envs\opencvtest\lib\site-packages\tensorflow\python\framework\load_library.py", line 64, in load_op_library 
    None, None, error_msg, error_code) 

NotFoundError: C:\Users\清山\AppData\Local\conda\conda\envs\opencvtest\lib\site-packages\tensorflow\contrib\rnn\python\ops\_lstm_ops.dll not found 

はところで私はCNNのようなコードは、エラーのこの種を示さなかったいくつかの情報は、私のパスに中国語の単語はエラーになります言ったが、私は他の人を実行し得ますか!? と私はパスについてeng単語に私の中国語の単語を変更するtryimgですが、私のコンピュータは私にそれを変更させることができないホームエディションです... Orz.Orz。

答えて

0

英語は母国語ではないことをご了承ください。私は間違いを犯す可能性があります。

私はあなたと同じ問題を抱えていました。 問題の理由は、あなたが思うように漢字でした。

私は日本語です。私はユーザー名として中国語を使用しました。 したがって、私のパスにはあなたのような漢字が含まれていました。

私はウィンドウに新しいアカウントを作成しました。名前には中国語は含まれていません。 それから私はすべてを再インストールしました。

そこで、私のコード(tf.contrib.data.Dataset ...)が働いた。

一部のモジュールはUnicodeに対応していない場合があります。

Windows 10にアカウントを追加する場合は、 が問題になることがあります。これは、Windows 10にその操作に関するバグがあることがあるためです。
この場合、コマンドプロンプトで[net User qingshan/add]を試してください。
新しいアカウントを作成できます。

関連する問題