Automatic iNat suggestion for "unknown" observations that reach a certain age

It’s a good question/suggestion. The answer belongs to iNat, but as far as I can remember a previous discussion about this :

The choice of iNat is NOT to store in the database the computer vision suggestions. The reason is that the c.v. is updated from time to time (a few times a year), so that generating the suggestions on demand ensures that we always benefit from the best suggestions, resulting from the latest c.v. training.

On the contrary, my software stores the c.v. suggestions in a cache and never asks again for the c.v. suggestions of the same observation. This means that my software makes decisions (to put this observation in that project) on the basis of some c.v. suggestions generated one year ago.

So, for these reasons, I think you should not be afraid of consulting the uptodate c.v. suggestions of an observation, if you think this helps you. It is iNat’s choice to provide you only uptodate suggestions and it is iNat’s choice NOT to store the uptodate suggestions in a cache in the database.

(Should this become an issue, iNat could store the uptodate suggestions in the database, still providing only uptodate suggestions to everyone. iNat would just have to clear the whole cache after every new c.v. training. So, we need NOT do that for iNat, in order to prevent you from requesting again the c.v. suggestions).

(Moreover, writing the CV suggestions in a comment (or wherever) in an observation would also require 1 more request to the API for every observation. No guarantee that this comment will be read by someone, for every observation).


To go into details, I have no access through the API to the top suggestion Genus Lophocampa for observation 138013069 What I receive from the API is a set of 10 suggestions (at the rank species), and each suggestion has a 0-100 confidence score.

My software (see 1, 2) computes a “Best ID” from these 10 suggestions and scores (using my own algorithm) after analyzing where these 10 taxa are located in the whole taxonomical tree. No guarantee that the result will match the website top suggestion (and it does NOT need to, because I made my own algorithm tuning, according to how cautious I wanted this “Best ID” to be). An observation will be put in the Lepidoptera project only if this “Best ID” is Lepidoptera or any taxon below Lepidoptera.

For observation 138013069, the 10 suggestions and their 10 associated scores are as follows (the scores are between brackets):

There are also 10 others scores for telling if the 10 taxa have been “seen nearby”.

As you see, the top suggestion Genus Lophocampa displayed by the website is none of the 10 suggestions provided by the c.v. through the API. This top suggestion has been computed somewhere but I have no access to it. It is simply not provided by the API (and I don’t know the algorithm generating it).

The website displays at most 8 of the 10 suggestions:

4 Likes