>

Tensorflow로 CNN 방법을 훈련하려고 할 때 다음 오류가 발생했습니다.

Traceback (most recent call last):
File "./train.py", line 87, in 
l2_reg_lambda=FLAGS.l2_reg_lambda)
TypeError: Expected int32, got list containing Tensors of type '_Message' instead.

어떻게 고칠 수 있습니까?

이것은 내 코드입니다 :

with tf.Graph().as_default():
    session_conf = tf.ConfigProto(
      allow_soft_placement=FLAGS.allow_soft_placement,
      log_device_placement=FLAGS.log_device_placement)
    sess = tf.Session(config=session_conf)
    with sess.as_default():
        cnn = TextCNN(
            sequence_length=x_train.shape[1],
            num_classes=2,
            vocab_size=len(vocab_processor.vocabulary_),
            embedding_size=FLAGS.embedding_dim,
            filter_sizes=list(map(int, FLAGS.filter_sizes.split(","))),
            num_filters=FLAGS.num_filters,
            l2_reg_lambda=FLAGS.l2_reg_lambda) (line 87)

  • 답변 # 1

    x_train.shape[1]   Tensor 를 반환   sess.run() 까지는 값이 계산되지 않습니다. 이므로 shape [1] 대신 int32 값을 전달해야합니다.

관련 자료

  • 이전 typescript - 각도 ts - ngfor에서 로컬 데이터가있는 컴포넌트 가져 오기
  • 다음 java - iText를 사용하여 PDF에서 푸시 버튼 필드 비활성화