C5 W1 P2 - Dinosaur

Hi Mentors,

I am getting a wrong output error.

I was wondering if step 4 )after determining the index) is correct?

Overwrite the input x with one that corresponds to the sampled index idx.

x = np.zeros((len(char_to_ix),1))
x[idx] = y[idx]

My Output -
list of sampled indices:
[23, 16, 26, 26, 19, 25, 22, 16, 7, 11, 17, 26, 23, 23, 23, 18, 10, 6, 12, 2, 14, 24, 14, 17, 7, 18, 0]
list of sampled characters:
[‘w’, ‘p’, ‘z’, ‘z’, ‘s’, ‘y’, ‘v’, ‘p’, ‘g’, ‘k’, ‘q’, ‘z’, ‘w’, ‘w’, ‘w’, ‘r’, ‘j’, ‘f’, ‘l’, ‘b’, ‘n’, ‘x’, ‘n’, ‘q’, ‘g’, ‘r’, ‘\n’]


AssertionError Traceback (most recent call last)
in
19 print("\033[92mAll tests passed!")
20
—> 21 sample_test(sample)

in sample_test(target)
15 assert indices[-1] == char_to_ix[’\n’], “All samples must end with \n”
16 assert min(indices) >= 0 and max(indices) < len(char_to_ix), f"Sampled indexes must be between 0 and len(char_to_ix)={len(char_to_ix)}"
—> 17 assert np.allclose(indices[0:6], [23, 16, 26, 26, 24, 3]), “Wrong values”
18
19 print("\033[92mAll tests passed!")

AssertionError: Wrong values

Thank you,

Neil

Your code is supposed to create x as a one-hot vector.
Copying y into x won’t do that.