Practice Object Recognition Challenge | DPhi

Image recognition is a vital component in robotics such as driverless vehicles or domestic robots. Image recognition is also important in image search engines such as Google or Bing image search whereby you use rich image content to query for similar stuff. Like in Google photos where the system uses image recognition to categorize your images into things like cats, dogs, people and so on so that you can quickly search your albums for things like, “give me photos of my cat”, that's awesome.


This is a companion discussion topic for the original entry at https://dphi.tech/practice/challenge/31

when is the last day for the submission?

What is the output format expected? The output that I am getting on the test data
predictions= model.predict(test_data)
is of shape 2000x10 (2-d array). Something like this:
array([[0.10029498, 0.10038707, 0.10003635, …, 0.09964055, 0.09981371,
0.09961668],
[0.10029498, 0.10038707, 0.10003635, …, 0.09964055, 0.09981371,
0.09961668],…

Hey, Convert the output to a list then submit. (here your output is in numpy array format)

2 Likes

Thanks,
Yes I had to get the values of the prediction from the prediction array. using np.argmax(predictions[i]) and submit that list and it was successful
-Sunny

2 Likes

Hi, everyone
I have trained the model and saved model as model.h5 in google colab
How to submit that results?
could anyone please explain step by step.

Hi @g.saidheeraj
Just download the predicted values for each image from the notebook and then make a submission. How to download the prediction and make a submission are explained here

Can we use any algorithm for this challenge?

@suryavardan Hey can you tell me how did you get such test accuracy. maybe after the deadline ends? I have completed it though, just wanna know how you did it.

for me model.predict(test_data)
this step was showing error that
ValueError: Input 0 of layer sequential_3 is incompatible with the layer: : expected min_ndim=4, found ndim=2. Full shape received: [None, 3072]

I am getting output like this!
array([[1., 0., 0., …, 0., 0., 0.],
[1., 0., 0., …, 0., 0., 0.],
[1., 0., 0., …, 0., 0., 0.],
…,
[1., 0., 0., …, 0., 0., 0.],
[1., 0., 0., …, 0., 0., 0.],
[1., 0., 0., …, 0., 0., 0.]],
can you explain what to do further?

You need to go to the “Solve” tab to submit your solution. To do so, you need to manually copy the solution as a hardcoded array, for example
predictions = [1,3,9,…]

In your case you have your answer still in the one-hot coded expanded form, so you need first to convert it into right format, using code like this in the workbook where you have run your model:

import numpy as np
print(np.argmax([[1,0,0,0,0,0,0,0,0,0],
[0,0,1,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,1],
],axis=1).tolist())

-> results in [0,3,9] which you then can manually copy into predictions

Hope this helps, good luck

The last day for submission is 6th September.

Hey g.saidheeraj,

I get the same problem how you resolve this issue ?

Best.

Phil.

Hi Dheeraj & Phil,

I have a similar error as below;

ValueError: Input 0 of layer sequential_7 is incompatible with the layer: : expected min_ndim=4, found ndim=2. Full shape received: [None, 3072]

Did you find a way around to resolve it?

  • Rajeev
1 Like

hi Rajajeev,

I reshape

x_test_data = test_data.astype(‘float32’)
x_test_data /= 255
df = x_test_data.rename_axis(‘ID’).values
dff = df.reshape(2000,32,32,3)
model.predict(dff)

after that, i get stuck when i want to submit my prediction.

2 Likes

Thanks Phil, It worked.

glad it work :sunglasses:

I get length mismatch error while downloading the predicted values. Anyone help to rid the error

Hi @rabinghimire
Please share the screen shot.