I think it’s a good theory that it’s your Y value that is wrong. I added the same print statements and here’s what I see:
<class 'list'>
Y = [20, 21, 18, 9, 1, 19, 1, 21, 18, 21, 19, 0]
X = [None, 20, 21, 18, 9, 1, 19, 1, 21, 18, 21, 19]
Y = [20, 21, 18, 9, 1, 19, 1, 21, 18, 21, 19, 0]
So the problem is not that Y is the wrong type. The problem is that you’ve made it a list of 2 elements, one of which is also a list (containing two elements one of which is a list). It is supposed to be a simple list of numbers.
See this other parallel thread with more discussion of another version of the same problem.
Thank you so much! I have a question though, why doesn’t Y have None as X does? I corrected my code buy my Y has “None” and the result is wrong.
Ok, it looks like you’ve solved all the problems with X and Y, but now there is some other part of the algorithm that is incorrect. Are you sure your sample function passed the tests in the notebook? It might shed some light to compare the results after later iterations. Here’s what I get up to Iteration 6000. Does your code give different results at 2000?
j = 0 idx = 0
single_example = turiasaurus
single_example_chars ['t', 'u', 'r', 'i', 'a', 's', 'a', 'u', 'r', 'u', 's']
single_example_ix [20, 21, 18, 9, 1, 19, 1, 21, 18, 21, 19]
X = [None, 20, 21, 18, 9, 1, 19, 1, 21, 18, 21, 19]
Y = [20, 21, 18, 9, 1, 19, 1, 21, 18, 21, 19, 0]
Iteration: 0, Loss: 23.087336
Nkzxwtdmfqoeyhsqwasjkjvu
Kneb
Kzxwtdmfqoeyhsqwasjkjvu
Neb
Zxwtdmfqoeyhsqwasjkjvu
Eb
Xwtdmfqoeyhsqwasjkjvu
j = 1535 idx = 1535
j = 1536 idx = 0
Iteration: 2000, Loss: 27.884160
Liusskeomnolxeros
Hmdaairus
Hytroligoraurus
Lecalosapaus
Xusicikoraurus
Abalpsamantisaurus
Tpraneronxeros
Iteration: 4000, Loss: 25.901815
Mivrosaurus
Inee
Ivtroplisaurus
Mbaaisaurus
Wusichisaurus
Cabaselachus
Toraperlethosdarenitochusthiamamumamaon
Iteration: 6000, Loss: 24.608779
Onwusceomosaurus
Lieeaerosaurus
Lxussaurus
Oma
Xusteonosaurus
Eeahosaurus
Toreonosaurus
Thank you so much! I got it right now!!!
That’s great news! Thanks for confirming.
Hi,
First of all thanks to you both for helping me debugging my code, I had similar issues working with lists to get Y value right.
Now I´m stucked in iteration #22001:
Iteration: 22000, Loss: 20.578871
Hutusaurus
Euca
Eustrioppn
Hocamptopanceus
Xuspeodon
Elacropechus
Uspeodon
AssertionError Traceback (most recent call last)
in
1 parameters, last_name = model(data.split(“\n”), ix_to_char, char_to_ix, 22001, verbose = True)
2
----> 3 assert last_name == ‘Trodonosaurus\n’, “Wrong expected output”
4 print(“\033[92mAll tests passed!”)AssertionError: Wrong expected output
I’ve been taking a look to my sample function but it is passing all the tests:
Sampling: list of sampled indices: [23, 16, 26, 26, 24, 3, 21, 1, 7, 24, 15, 3, 25, 20, 6, 13, 10, 8, 20, 12, 2, 0] list of sampled characters: [‘w’, ‘p’, ‘z’, ‘z’, ‘x’, ‘c’, ‘u’, ‘a’, ‘g’, ‘x’, ‘o’, ‘c’, ‘y’, ‘t’, ‘f’, ‘m’, ‘j’, ‘h’, ‘t’, ‘l’, ‘b’, ‘\n’] All tests passed!
Expected output
Sampling: list of sampled indices: [23, 16, 26, 26, 24, 3, 21, 1, 7, 24, 15, 3, 25, 20, 6, 13, 10, 8, 20, 12, 2, 0] list of sampled characters: ['w', 'p', 'z', 'z', 'x', 'c', 'u', 'a', 'g', 'x', 'o', 'c', 'y', 't', 'f', 'm', 'j', 'h', 't', 'l', 'b', '\n']
Can you help me with it?
Thanks in advance,
JdF
I think that’s the answer that you get if you forget to use the “shuffled” name list as your input in your model function. They gave you the code to randomly shuffle the last before you start. If the name that is input at iteration 0 is Aachenosaurus, that’s another indication that this is the mistake you’ve made. That is the very first name on the original list, as you can see from the cell early on where they show you the list. Here’s another recent thread about that type of issue.
Thanks a lot, that was my mistake, I was using data_x instead. That little detail was blowing my mind
Iteration: 22000, Loss: 22.728886
Onustreofkelus
Llecagosaurus
Mystolojmiaterltasaurus
Ola
Yuskeolongus
Eiacosaurus
TrodonosaurusAll tests passed!