Code generates wrong dinosaur names

My dinosaur code generates plausible names, but they don’t match the expectation. Also, I never found a use for the np.ravel() function in this assignment.

Output:

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 = 2
j = 1536 idx = 3
Iteration: 2000, Loss: 9.894264

Iavosaurus
Dosaurus
Esitosaurus
Iaecerus
Unus
Amanonelhoneris
Tosaurus

Iteration: 4000, Loss: 2.189096

Kesilscelmh
Esipandoravenator
Esitosaurus
Kbomaniorasrurus
Udus
Ananrurus
Tosaurus

Iteration: 6000, Loss: 0.912600

Kesosanrus
Dosaerus
Esitosaurus
Kconaururusaseliaachoselipanoomerus
Uausesitosaurus
Anaorus
Tosaurus

Iteration: 8000, Loss: 0.637094

Kcosaurus
Chomaniuanhoseuatsos
Esitosaurus
Kanceliq
Uausesitikaos
Anborisipandoravenator
Tosaurus

Iteration: 10000, Loss: 1.761213

Iavosaurus
Eripandoravenator
Esitoraerus
Iaacerubuaesitancselatdoriblselimanosaurus
Urus
Anchubelis
Tor

Iteration: 12000, Loss: 0.723301

Iavosaurus
Dosaerus
Esitorialokuburisanhlierus
Iahor
Urus
Ancoras
Tor

Iteration: 14000, Loss: 0.346465

Enisandoravenator
Andoravenator
Ctosaurus
Elimanosaerus
Urusaselanror
Ancorav
Tor

Iteration: 16000, Loss: 1.876693

Eruslorhsooosioosaurtorihosdur
Athoaerus
Avoselomorcslirohomhoor
Enahoseliaosavenoselosanoohcselimomoosasaurus
Urus
Ananosandoomorosriocsatoomasklomhhorurupatoomasesa
Urus

Iteration: 18000, Loss: 1.096196

Erus
Esesandur
Esitoriasaurus
Facbnaurus
Urus
Andhravenasinanhuravenator
Saurus

Iteration: 20000, Loss: 0.366187

Iavesaqravenaseliaurimrsaurus
Eseqlnkubesesasandnsaurus
Esitoriasaurus
Iaeaurus
Urus
Andhravenasinanosaerus
Saurus

Iteration: 22000, Loss: 0.294620

Iavesaqr
Esitoriasaurus
Esitoriasaurus
Iaeaurus
Urus
Andoravenator
Saurur

Hello @jaycarlton,

Let me provide you part of my output that passes the test. There is a difference between our outputs and that should be a pointer for where to start looking at.

Cheers,
Raymond

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

One common error that can cause different but plausible names is not using the randomly shuffled version of the inputs that they create for you in the given template code. If you just use the inputs “as is”, you get different results.