A Selection of Present and Correct Error Messages
The "present" error messages here are real error messages which came up in actual Python code I wrote in Professor Andrew Ng's deeplearning.ai Coursera sequence of courses on Deep Learning.
Present Error Message 1:--------------------------------------------------------------------------- in rnn_forward(x, a0, parameters) 50 ### END CODE HERE ### 51 ===> 52 print("caches.shape: " + caches.shape) 53 54 # store values needed for backward propagation in cache TypeError: must be str, not tuple Correct Error Message: Sandeep, I'm having a problem interpreting your code. I believe the problem is that in Line 52 of your code, the "caches.shape" variable should be enclosed by a "str()" function. ***************************** Present Error Message 2: --------------------------------------------------------------------------- in rnn_forward(x, a0, parameters) 47 # Append "cache" to "caches" (1 line) 48 caches = np.append( caches, cache ) ===> 49 print("cache.shape: " + str(cache.shape)) 50 print("caches.shape: " + str(t) + " "+ str(caches.shape)) 51 ### END CODE HERE ### AttributeError: 'tuple' object has no attribute 'shape' Correct Error Message: I believe the problem is that in Line 49 of your code, the variable "cache" is of type "tuple", and a tuple cannot be referenced by a "shape" attribute. ***************************** Present Error Message 3: --------------------------------------------------------------------------- in lstm_cell_forward(xt, a_prev, c_prev, parameters) 33 print("sigmoid: ") 34 a = [0] ===> 35 print(sigmoid(a)) 36 # Retrieve parameters from "parameters" 37 Wf = parameters["Wf"] /home/jovyan/work/Week 1/Building a Recurrent Neural Network - Step by Step/rnn_utils.py in sigmoid(x) 7 8 def sigmoid(x): ====> 9 return 1 / (1 + np.exp(-x)) 10 11 TypeError: bad operand type for unary -: 'list' Correct Error Message: I believe the problem is that in line 9 of your code, the variable "x" is of type list, whereas it should be of type float. ***************************** Present Error Message 4: --------------------------------------------------------------------------- TypeError Traceback (most recent call last) 13 da_next = np.random.randn(5,10) 14 gradients = rnn_cell_backward(da_next, cache) ===> 15 print("gradients[\"dxt\"][1][2] =", gradients["dxt"][1][2]) 16 print("gradients[\"dxt\"].shape =", gradients["dxt"].shape) 17 print("gradients[\"da_prev\"][2][3] =", gradients["da_prev"][2][3]) TypeError: 'NoneType' object is not subscriptable Correct Error Message: I believe the problem is that in line 15 of your code, the variable "gradients" is of type None, because you have not assigned any value to it yet. ***************************** Present Error Message 5: --------------------------------------------------------------------------- in rnn_cell_backward(da_next, cache) 33 print("da_next.shape: ", da_next.shape) 34 print("Wax.T.dtanh: ", (np.dot(Wax.T, dtanh)).shape) ===> 35 dxt = np.dot( da_next, np.dot(Wax.T, dtanh)) 36 dWax = np.dot( dtanh, xt.T) 37 print("dWax.shape: ", dWax.shape) ValueError: shapes (5,10) and (3,10) not aligned: 10 (dim 1) != 3 (dim 0) Correct Error Message: I believe the problem is that in line 35 of your code, you are trying to take the product of two matrices whose dimensions are not matching. ***************************** Present Error Message 6: --------------------------------------------------------------------------- IndexError Traceback (most recent call last) 21 print("gradients[\"dWaa\"][1][2] =", gradients["dWaa"][1][2]) 22 print("gradients[\"dWaa\"].shape =", gradients["dWaa"].shape) ===> 23 print("gradients[\"dba\"][4] =", gradients["dba"][4]) 24 print("gradients[\"dba\"].shape =", gradients["dba"].shape) IndexError: invalid index to scalar variable. Correct Error Message: I believe the problem is that in line 23 of your code, the variable gradients["dba"] is a scalar value, whereas you are trying to reference an array index from it. ***************************** Present Error Message 7: --------------------------------------------------------------------------- in rnn_backward(da, caches) 19 20 # Retrieve values from the first cache (t=1) of caches (2 lines) ===> 21 (caches, x) = None 22 (a1, a0, x1, parameters) = None 23 TypeError: 'NoneType' object is not iterable Correct Error Message: I believe the problem is that in line 21 of your code, you are assigning the value "None" to the tuple (caches, x), which is not allowed by Python. ***************************** Present Error Message 8: --------------------------------------------------------------------------- in rnn_backward(da, caches) 20 # Retrieve values from the first cache (t=1) of caches (2 lines) 21 (caches, x) = caches ===> 22 (a1, a0, x1, parameters) = caches[0] 23 24 # Retrieve dimensions from da's and x1's shapes (2 lines) ValueError: too many values to unpack (expected 4) Correct Error Message: I believe the problem is that in line 22 of your code, the variable "caches[0]" is a tuple that is returning too many values to be assigned to the left hand side of the equation. ***************************** Present Error Message 9: --------------------------------------------------------------------------- in rnn_backward(da, caches) 21 print("len-caches 0: ", len(caches)) 22 (caches, x) = caches ===> 23 print("len-caches 1: ", len(caches[0][0][0])) 24 (a1, a0, x1, parameters) = caches[0] 25 TypeError: object of type 'numpy.float64' has no len() Correct Error Message: I believe the problem is that in line 23 of your code, you are calling the function "len" on the variable caches[0][0][0], which is a float value, which is not allowed by Python. ***************************** Present Error Message 10: --------------------------------------------------------------------------- in rnn_cell_backward(da_next, cache) 17 18 # Retrieve values from cache ===>19 (a_next, a_prev, xt, parameters) = cache 20 21 # Retrieve values from parameters ValueError: too many values to unpack (expected 4) Correct Error Message: I believe the problem is that in line 19 of your code, the variable "cache" is a tuple that is returning too many values to be assigned to the left hand side of the equation. ***************************** Present Error Message 11: --------------------------------------------------------------------------- in rnn_backward(da, caches) 42 # Increment global derivatives w.r.t parameters by adding their derivative at time-step t 43 dx[:, :, t] = dxt ===> 44 dWax += dWaxt 45 dWaa += dWaat 46 dba += dbat ValueError: operands could not be broadcast together with shapes (5,10) (5,3) (5,10) Correct Error Message: I believe the problem is that in line 44 of your code, the variables "dWax" and "dWaxt" are matrices which are of different dimensions. ***************************** Present Error Message 12: --------------------------------------------------------------------------- line 38 dcct = dc_next * it * ^ SyntaxError: invalid syntax Correct Error Message: I believe the problem is that in line 38 of your code, after the last * in the line, you need another number. ***************************** Present Error Message 13: --------------------------------------------------------------------------- 21 dc_next = np.random.randn(5,10) 22 gradients = lstm_cell_backward(da_next, dc_next, cache) ===> 23 print("gradients[\"dxt\"][1][2] =", gradients["dxt"][1][2]) 24 print("gradients[\"dxt\"].shape =", gradients["dxt"].shape) 25 print("gradients[\"da_prev\"][2][3] =", gradients["da_prev"][2][3]) TypeError: 'NoneType' object is not subscriptable Correct Error Message: I believe the problem is that in line 23 of your code, the variable 'gradients["dxt"]' is of type None, and you cannot index into a None object. ***************************** Present Error Message 14: --------------------------------------------------------------------------- in lstm_cell_backward(da_next, dc_next, cache) 49 50 # Compute parameters related derivatives. Use equations (11)-(14) (8 lines) ===> 51 concat = (np.concatenate(a_prev,xt)).T 52 print("concat shape: ", concat.shape) 53 dWf = None TypeError: only length-1 arrays can be converted to Python scalars Correct Error Message: I believe the problem is that in line 51 of your code, the np.concatenate function needs two sets of braces around the list of matrices to be concatenated. ***************************** Present Error Message 15: --------------------------------------------------------------------------- in lstm_cell_backward(da_next, dc_next, cache) 52 print("concat shape: ", concat.shape) 53 print("dft.shape: ", dft.shape) ===> 54 dWf = dft * concat 55 dWi = None 56 dWc = None ValueError: operands could not be broadcast together with shapes (5,10) (10,8) Correct Error Message: I believe the problem is that in line 54 of your code, the variables dft and concat are matrices of different dimensions, and hence cannot be multiplied together. ***************************** Present Error Message 16: --------------------------------------------------------------------------- in lstm_backward(da, caches) 25 # Retrieve values from the first cache (t=1) of caches. 26 (caches, x) = caches ===> 27 (a1, c1, a0, c0, f1, i1, cc1, o1, x1, parameters) = caches[0] 28 29 ### START CODE HERE ### ValueError: not enough values to unpack (expected 10, got 5) Correct Error Message: I believe the problem is that in line 27 of your code, the variable "caches[0]" does not have enough values to assign to the tuple on the left hand side of the equation. ***************************** Present Error Message 17: --------------------------------------------------------------------------- in lstm_backward(da, caches) 33 print("da.shape: ", da.shape) 34 print("x1.shape: ", x1.shape) ===> 35 n_a, m, T_x = None 36 n_x, m = None 37 TypeError: 'NoneType' object is not iterable Correct Error Message: I believe the problem is that in line 35 of your code, the tuple on the left hand side of the equation cannot be assigned a "None" value. ***************************** Present Error Message 18: line 17 print("pair: pair) ^ SyntaxError: EOL while scanning string literal Correct Error Message: I believe the problem is that in line 17 of your code, you have not closed a quote mark. ***************************** |