Tôi đang cố gắng triển khai mô hình hồi quy logistic đơn giản được đào tạo với bộ hình ảnh của riêng tôi, nhưng tôi nhận được lỗi này khi tôi cố gắng để đào tạo các mô hình:Tensorflow (python): "ValueError: thiết lập một phần tử mảng với một chuỗi" trong train_step.run (...)
Traceback (most recent call last):
File "main.py", line 26, in <module>
model.entrenar_modelo(sess, training_images, training_labels)
File "/home/jr/Desktop/Dropbox/Machine_Learning/TF/Míos/Hip/model_log_reg.py", line 24, in entrenar_modelo
train_step.run({x: batch_xs, y_: batch_ys})
File "/home/jr/.local/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 1267, in run
_run_using_default_session(self, feed_dict, self.graph, session)
File "/home/jr/.local/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 2763, in _run_using_default_session
session.run(operation, feed_dict)
File "/home/jr/.local/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 334, in run
np_val = np.array(subfeed_val, dtype=subfeed_t.dtype.as_numpy_dtype)
ValueError: setting an array element with a sequence.
các dữ liệu tôi đang ăn để train_step.run({x: batch_xs, y_: batch_ys})
là như thế này:
- batch_xs: danh sách các đối tượng tensor đại diện cho hình ảnh của 100x100 (10.000 tensors dài)
- batch_ys: danh sách nhãn s phao (1.0 hoặc 0.0)
Tôi đang làm gì sai? Thx trước!
EDIT 1: Nó vỉa vấn đề là tôi đã phải đánh giá tensors trong batch_xs
trước khi đi qua họ train_step.run(...)
. Tôi nghĩ rằng phương pháp chạy sẽ chăm sóc đó, nhưng tôi đoán tôi đã sai? Dù sao, vì vậy một khi tôi đã làm điều này trước khi gọi hàm:
for i, x in enumerate(batch_xs):
batch_xs[i] = x.eval()
#print batch_xs[i].shape
#assert all(x.shape == (100, 100, 3) for x in batch_xs)
# Now I can call the function
EDIT 2: Tôi có một số vấn đề ngay cả sau khi làm những gì được diễn tả bằng những câu trả lời dưới đây. Cuối cùng tôi đã sửa tất cả mọi thứ bằng cách bỏ máng tensors và sử dụng các mảng numpy.
Hy vọng điều này sẽ giúp người khác
Cảm ơn! Tôi đã gặp sự cố này bằng cách sử dụng dữ liệu hình ảnh từ một tập dữ liệu hdf5 nơi mỗi hình ảnh có hình dạng khác nhau. –