A computer-implemented method on a data processing apparatus for generating a unified machine learning computing model for object recognition in digital images or audio signal data using a plurality of neural networks, the method comprising: determining, by the data processing apparatus and for the plurality of neural networks, each of the plurality of neural networks being a specialized machine learning model, respective learning targets for each of a plurality of object verticals, wherein each object vertical defines a distinct category for an object, and wherein the respective learning targets for each of the plurality of object verticals correspond to first embedding outputs from respective specialized machine learning models taking digital images or audio signal data as input, each machine learning model trained based on a first loss function, wherein the first embedding outputs comprise feature vectors for object recognition in digital images or audio signal data; characterized in that: generating, by the data processing apparatus and using the plurality of neural networks, a unified machine learning model configured to generate the second embedding outputs for identifying objects of the plurality of object verticals, comprising adding one or more of the plurality of object verticals to a group of object verticals: training, by the data processing apparatus, based on a second loss function and the digital images or audio signal data as inputs, a neural network to generate for the inputs, second embedding outputs similar to the first embedding outputs corresponding to the learning targets for the object verticals in the group; and while a threshold level of accuracy is maintained or until all object verticals have been processed: adding further one or more of the plurality of object verticals to the group of object verticals; repeating the training. determining, by the data processing apparatus and for the plurality of neural networks, each of the plurality of neural networks being a specialized machine learning model, respective learning targets for each of a plurality of object verticals, wherein each object vertical defines a distinct category for an object, and wherein the respective learning targets for each of the plurality of object verticals correspond to first embedding outputs from respective specialized machine learning models taking digital images or audio signal data as input, each machine learning model trained based on a first loss function, wherein the first embedding outputs comprise feature vectors for object recognition in digital images or audio signal data; characterized in that: generating, by the data processing apparatus and using the plurality of neural networks, a unified machine learning model configured to generate the second embedding outputs for identifying objects of the plurality of object verticals, comprising adding one or more of the plurality of object verticals to a group of object verticals: training, by the data processing apparatus, based on a second loss function and the digital images or audio signal data as inputs, a neural network to generate for the inputs, second embedding outputs similar to the first embedding outputs corresponding to the learning targets for the object verticals in the group; and while a threshold level of accuracy is maintained or until all object verticals have been processed: adding further one or more of the plurality of object verticals to the group of object verticals; repeating the training. generating, by the data processing apparatus and using the plurality of neural networks, a unified machine learning model configured to generate the second embedding outputs for identifying objects of the plurality of object verticals, comprising adding one or more of the plurality of object verticals to a group of object verticals: training, by the data processing apparatus, based on a second loss function and the digital images or audio signal data as inputs, a neural network to generate for the inputs, second embedding outputs similar to the first embedding outputs corresponding to the learning targets for the object verticals in the group; and while a threshold level of accuracy is maintained or until all object verticals have been processed: adding further one or more of the plurality of object verticals to the group of object verticals; repeating the training. training, by the data processing apparatus, based on a second loss function and the digital images or audio signal data as inputs, a neural network to generate for the inputs, second embedding outputs similar to the first embedding outputs corresponding to the learning targets for the object verticals in the group; and while a threshold level of accuracy is maintained or until all object verticals have been processed: adding further one or more of the plurality of object verticals to the group of object verticals; repeating the training. adding further one or more of the plurality of object verticals to the group of object verticals; repeating the training.