잘못된 차원 수 : 0이 필요함, (1,) 모양이있는 1 개

Uyaseen

저는 바닐라 rnn을 사용하여 단어 수준 언어 모델링을 수행하고 있습니다. 모델을 훈련시킬 수는 있지만 이상한 이유로 모델에서 샘플 / 예측을 얻을 수 없습니다. 다음은 코드의 관련 부분입니다.

train_set_x, train_set_y, voc = load_data(dataset, vocab, vocab_enc)  # just load all data as shared variables
index = T.lscalar('index')
x = T.fmatrix('x')
y = T.ivector('y')
n_x = len(vocab)
n_h = 100
n_y = len(vocab)

rnn = Rnn(input=x, input_dim=n_x, hidden_dim=n_h, output_dim=n_y)

cost = rnn.negative_log_likelihood(y)

updates = get_optimizer(optimizer, cost, rnn.params, learning_rate)

train_model = theano.function(
    inputs=[index],
    outputs=cost,
    givens={
        x: train_set_x[index],
        y: train_set_y[index]
    },
    updates=updates
)

predict_model = theano.function(
    inputs=[index],
    outputs=rnn.y,
    givens={
        x: voc[index]
    }
)

sampling_freq = 2
sample_length = 10
n_train_examples = train_set_x.get_value(borrow=True).shape[0]
train_cost = 0.
for i in xrange(n_train_examples):
    train_cost += train_model(i)
    train_cost /= n_train_examples

    if i % sampling_freq == 0:
       # sample from the model     
       seed = randint(0, len(vocab)-1)
       idxes = []
       for j in xrange(sample_length):
           p = predict_model(seed)
           seed = p
           idxes.append(p)
           # sample = ''.join(ix_to_words[ix] for ix in idxes)
           # print(sample)

오류가 발생합니다 : "TypeError : ( 'Bad input argument to theano function with name"train.py:94 "at index 0 (0-based)",'Wrong number of dimension : expected 0, got 1 with shape (1 ,). ') "

이제 이것은 (predict_model에서) 다음 줄에 해당합니다.

 givens={   x: voc[index]   }

몇 시간을 보낸 후에도 다음과 같은 경우 차원 불일치가 발생할 수있는 방법을 이해할 수 없습니다.

train_set_x has shape: (42, 4, 109)
voc has shape: (109, 1, 109)

내가 train_set_x [인덱스], 내가 무엇입니까 할 때 (4 109) ' X '텐서 형 fmatrix의 저장할 수있는 (이것은에서 일어나는 것입니다 train_model 하지만) 나는 휘발성 유기 화합물 (VOC) [인덱스], 내가 무엇입니까 수행 할 때 (1, 109) , 이것은 또한 행렬이지만 ' x '는 이것을 가질 수 없습니다. 왜? !

어떤 도움이라도 대단히 감사하겠습니다.

감사 !

파스칼 램 블린

오류 메시지는 predict_model대체가 givens발생 하는 특정 줄이 아니라 라는 이름의 전체 Theano 함수의 정의를 나타냅니다 .

문제 스칼라 대신 길이 1predict_model벡터 인 인수로 호출되는 것 같습니다 . 에서 샘플링 된 초기 값 은 실제로 스칼라이지만의 출력 스칼라가 아닌 벡터 라고 추측합니다 .seedrandintppredict_model(seed)

이 경우, 당신도 반환 할 수 rnn.y[0]있는 predict_model, 또는 교체 seed = pseed = p[0]를 통해 루프 j.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

잘못된 인수 개수 (1은 0)

분류에서Dev

Rails : 잘못된 인수 개수 (1이 주어졌고 0이 예상 됨)

분류에서Dev

구조체 특성 오류 : 잘못된 형식 인수 수 : 1 개 필요, 0 개 발견

분류에서Dev

DBCException : LineString의 잘못된 포인트 수 (1 개 발견-0 또는> = 2 여야 함)

분류에서Dev

잘못된 인수 개수 (0에 대해 1) (소셜 보석)

분류에서Dev

Rails : .new에 대한 잘못된 인수 개수 (0은 1)

분류에서Dev

활성 관리자 : 잘못된 인수 개수 (1은 0)

분류에서Dev

Rails : 잘못된 인수 개수 (1은 0)

분류에서Dev

Rails : 잘못된 인수 개수 (0은 1)

분류에서Dev

Rails 잘못된 인수 개수 (0은 1), SubscribeController # update의 ArgumentError

분류에서Dev

꼭두각시 루비 잘못된 인수 개수 (0은 1)

분류에서Dev

`name ': 잘못된 인수 개수 (0은 1) (ArgumentError)

분류에서Dev

git push heroku master시 잘못된 인수 개수 (0 for 1) (ArgumentError)

분류에서Dev

Ruby on Rails : 잘못된 인수 개수 (주어진 0, 예상 1)

분류에서Dev

Pandas : "ValueError : 버퍼의 차원 수가 잘못되었습니다 (1 개 예상, 0 개).

분류에서Dev

오류가 발생하는 즐겨 찾는 작업 : 잘못된 인수 개수 (1 개, 0 개 예상)?

분류에서Dev

datadiff에 잘못된 매개 변수 1이 지정되었습니다.

분류에서Dev

Ransack 범위에서 잘못된 인수 개수 (0 개, 1 개 예상)

분류에서Dev

gorm 및 GORM LOG sql 사용 : 0 개 인수가 필요함, 1 개 있음

분류에서Dev

업데이트 방법에 대한 잘못된 인수 개수 (2 개에 1 개)

분류에서Dev

인수 개수가 잘못되었습니다. 형식 문자열 [name]에는 0이 필요하지만 형식 호출은 1을 제공합니다.

분류에서Dev

Jekyll을 제공하는 동안 잘못된 인수 개수 (2 개에 1 개)

분류에서Dev

has_many 종속 : '잘못된 인수 개수 (1에 대해 0)'를 던지는 파괴

분류에서Dev

Wicked gem을 사용하는 동안 잘못된 인수 개수 (0은 1) 오류

분류에서Dev

Wicked gem을 사용하는 동안 잘못된 인수 개수 (0은 1) 오류

분류에서Dev

잘못된 수의 인수 (주어진 0, 1이 예상 됨)-Ruby

분류에서Dev

ArgumentError : afer_save를 사용할 때 잘못된 인수 개수 (0은 1)

분류에서Dev

0과 1이 모두있는 열 개수

분류에서Dev

Jekyll : 잘못된 인수 개수 (2 개, 1 개 예상) (ArgumentError)

Related 관련 기사

  1. 1

    잘못된 인수 개수 (1은 0)

  2. 2

    Rails : 잘못된 인수 개수 (1이 주어졌고 0이 예상 됨)

  3. 3

    구조체 특성 오류 : 잘못된 형식 인수 수 : 1 개 필요, 0 개 발견

  4. 4

    DBCException : LineString의 잘못된 포인트 수 (1 개 발견-0 또는> = 2 여야 함)

  5. 5

    잘못된 인수 개수 (0에 대해 1) (소셜 보석)

  6. 6

    Rails : .new에 대한 잘못된 인수 개수 (0은 1)

  7. 7

    활성 관리자 : 잘못된 인수 개수 (1은 0)

  8. 8

    Rails : 잘못된 인수 개수 (1은 0)

  9. 9

    Rails : 잘못된 인수 개수 (0은 1)

  10. 10

    Rails 잘못된 인수 개수 (0은 1), SubscribeController # update의 ArgumentError

  11. 11

    꼭두각시 루비 잘못된 인수 개수 (0은 1)

  12. 12

    `name ': 잘못된 인수 개수 (0은 1) (ArgumentError)

  13. 13

    git push heroku master시 잘못된 인수 개수 (0 for 1) (ArgumentError)

  14. 14

    Ruby on Rails : 잘못된 인수 개수 (주어진 0, 예상 1)

  15. 15

    Pandas : "ValueError : 버퍼의 차원 수가 잘못되었습니다 (1 개 예상, 0 개).

  16. 16

    오류가 발생하는 즐겨 찾는 작업 : 잘못된 인수 개수 (1 개, 0 개 예상)?

  17. 17

    datadiff에 잘못된 매개 변수 1이 지정되었습니다.

  18. 18

    Ransack 범위에서 잘못된 인수 개수 (0 개, 1 개 예상)

  19. 19

    gorm 및 GORM LOG sql 사용 : 0 개 인수가 필요함, 1 개 있음

  20. 20

    업데이트 방법에 대한 잘못된 인수 개수 (2 개에 1 개)

  21. 21

    인수 개수가 잘못되었습니다. 형식 문자열 [name]에는 0이 필요하지만 형식 호출은 1을 제공합니다.

  22. 22

    Jekyll을 제공하는 동안 잘못된 인수 개수 (2 개에 1 개)

  23. 23

    has_many 종속 : '잘못된 인수 개수 (1에 대해 0)'를 던지는 파괴

  24. 24

    Wicked gem을 사용하는 동안 잘못된 인수 개수 (0은 1) 오류

  25. 25

    Wicked gem을 사용하는 동안 잘못된 인수 개수 (0은 1) 오류

  26. 26

    잘못된 수의 인수 (주어진 0, 1이 예상 됨)-Ruby

  27. 27

    ArgumentError : afer_save를 사용할 때 잘못된 인수 개수 (0은 1)

  28. 28

    0과 1이 모두있는 열 개수

  29. 29

    Jekyll : 잘못된 인수 개수 (2 개, 1 개 예상) (ArgumentError)

뜨겁다태그

보관