IP Library › Granted Patent US 10,839,267
Granted Patent B2
US 10,839,267 · App. 15/965,123 · Granted Nov 17, 2020

Learning an autoencoder

Inventors: Eloi Mehr (Velizy-Villacoublay, FR); Andre Lieutier (Velizy-Villacoublay, FR)
Assignee: DASSAULT SYSTEMES
G06K9/6262G06F30/00G06K9/00214G06K9/6203G06K9/6274G06K9/66G06N3/04G06N3/0454G06N3/088G06T3/0068G06T7/30G06F2111/04G06T2200/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,839,267
App. No.
15/965,123
Granted
Nov 17, 2020
Kind
B2
Abstract

A computer-implemented method for learning an autoencoder notably is provided. The method comprises providing a dataset of images. Each image includes a respective object representation. The method also comprises learning the autoencoder based on the dataset. The learning includes minimization of a reconstruction loss. The reconstruction loss includes a term that penalizes a distance for each respective image. The penalized distance is between the result of applying the autoencoder to the respective image and the set of results of applying at least part of a group of transformations to the object representation of the respective image. Such a method provides an improved solution to learn an autoencoder.

Claims (59)

1. A computer-implemented method for learning an autoencoder, the method comprising:

obtaining a dataset of images, each image including a respective object representation: and

learning the autoencoder based on the dataset, the learning including minimization of a reconstruction loss, the reconstruction loss including a term that penalizes for each respective image a distance between the result of applying the autoencoder to the respective image and the set of results of applying at least part of a group of transformations to the object representation of the respective image,

wherein the autoencoder is invariant with respect to at least part of the group of transformations,

wherein the autoencoder includes a transformation component configured to apply each one of the at least part of the group of transformations to the object representation of an input image, an aggregation component configured to be applied to results stemming from the transformation component, an encoding component and a decoding component, and

wherein the results stemming from the first component to which the aggregation component is configured to be applied are vectors of a same size, the aggregation component outputting a vector of the same size having for each coordinate a value equal to the maximum among the values of said coordinate for the vectors to which the aggregation component is configured to be applied.

2. The method of claim 1 , wherein the encoding component is configured be applied in parallel to each result of the transformation component.

3. The method of claim 2 , wherein the aggregation component is configured to be applied to the results of the encoding component.

4. The method of claim 1 , wherein the decoding component is configured to be applied to the result of the aggregation component.

5. The method of claim 1 , wherein the encoding component and/or the decoding component includes a convolutional neural network.

6. The method of claim 1 , wherein the images are surface occupancy 3D models, the group of transformations including translations.

7. A computer-implemented method for learning an autoencoder, the method comprising:

obtaining a dataset of images, each image including a respective object representation; and

learning the autoencoder based on the dataset, the learning including minimization of a reconstruction loss, the reconstruction loss including a term that penalizes for each respective image a distance between the result of applying the autoencoder to the respective image and the set of results of applying at least part of a group of transformations to the object representation of the respective image,

wherein the object representations are each a representation of an instance of a same class of objects, each image of the dataset having a non-oriented frame, each object representation being aligned in the non-oriented frame, the group of transformations including all rotations from one alignment in the non-oriented frame to another alignment in the non-oriented frame.

8. The method of claim 7 , wherein the autoencoder is invariant with respect to at least part of the group of transformations.

9. The method of claim 8 , wherein the autoencoder includes a transformation component configured to apply each one of the at least part of the group of transformations to the object representation of an input image, an aggregation component configured to be applied to results stemming from the transformation component, an encoding component and a decoding component.

10. The method of claim 9 , wherein the encoding component is configured be applied in parallel to each result of the transformation component.

11. The method of claim 10 , wherein the aggregation component is configured to be applied to the results of the encoding component.

12. The method of claim 9 , wherein the decoding component is configured to be applied to the result of the aggregation component.

13. The method of claim 9 , wherein the encoding component and/or the decoding component includes a convolutional neural network.

14. The method of claim 7 , wherein the images are surface occupancy 3D models, the group of transformations including translations.

15. A device comprising:

a data storage medium having recorded thereon a data structure, the data structure comprising an encoder, a decoder, and/or the whole of an autoencoder learnable according to computer-implementable instructions for learning an autoencoder, the instructions configuring a processor to:

obtain a dataset of images, each image including a respective object representation, and

learn the autoencoder based on the dataset, the learning including minimization of a reconstruction loss, the reconstruction loss including a term that penalizes for each respective image a distance between the result of applying the autoencoder to the respective image and the set of results of applying at least part of a group of transformations to the object representation of the respective image,

wherein the autoencoder is invariant with respect to at least part of the group of transformations,

wherein the autoencoder includes a transformation component configured to apply each one of the at least part of the group of transformations to the object representation of an input image, an aggregation component configured to be applied to results stemming from the transformation component, an encoding component and a decoding component, and

wherein the results stemming from the first component to which the aggregation component is configured to be applied are vectors of a same size, the aggregation component outputting a vector of the same size having for each coordinate a value equal to the maximum among the values of said coordinate for the vectors to which the aggregation component is configured to be applied.

16. The device of claim 15 , wherein the device further comprises the processor coupled to the data storage medium.

17. A device comprising:

a data storage medium having recorded thereon a data structure, the data structure comprising a computer program including instructions for learning an autoencoder, the instructions configuring a processor to:

obtain a dataset of images, each image including a respective object representation, and

learn the autoencoder based on the dataset, the learning including minimization of a reconstruction loss, the reconstruction loss including a term that penalizes for each respective image a distance between the result of applying the autoencoder to the respective image and the set of results of applying at least part of a group of transformations to the object representation of the respective image,

wherein the autoencoder is invariant with respect to at least part of the group of transformations,

wherein the autoencoder includes a transformation component configured to apply each one of the at least part of the group of transformations to the object representation of an input image, an aggregation component configured to be applied to results stemming from the transformation component, an encoding component and a decoding component, and

wherein the results stemming from the first component to which the aggregation component is configured to be applied are vectors of a same size, the aggregation component outputting a vector of the same size having for each coordinate a value equal to the maximum among the values of said coordinate for the vectors to which the aggregation component is configured to be applied.

18. The device of claim 17 , wherein the device further comprises the processor coupled to the data storage medium.

19. The device of claim 17 , wherein the encoding component is configured be applied in parallel to each result of the transformation component.

20. The device of claim 17 , wherein the aggregation component is configured to be applied to the results of the encoding component.

21. The device of claim 17 , wherein the decoding component is configured to be applied to the result of the aggregation component.

22. The device of claim 17 , wherein the encoding component and/or the decoding component includes a convolutional neural network.

23. A device comprising:

a data storage medium having recorded thereon a data structure, the data structure comprising a computer program including instructions for learning an autoencoder, the instructions configuring a processor to:

obtain a dataset of images, each image including a respective object representation, and

learn the autoencoder based on the dataset, the learning including minimization of a reconstruction loss, the reconstruction loss including a term that penalizes for each respective image a distance between the result of applying the autoencoder to the respective image and the set of results of applying at least part of a group of transformations to the object representation of the respective image,

wherein the results stemming from the first component to which the aggregation component is configured to be applied are vectors of a same size, the aggregation component outputting a vector of the same size having for each coordinate a value equal to the maximum among the values of said coordinate for the vectors to which the aggregation component is configured to be applied.

24. The device of claim 23 , wherein the device further comprises the processor coupled to the data storage medium.

25. The device of claim 23 , wherein the autoencoder is invariant with respect to at least part of the group of transformations.

26. The device of claim 25 , wherein the autoencoder includes a transformation component configured to apply each one of the at least part of the group of transformations to the object representation of an input image, an aggregation component configured to be applied to results stemming from the transformation component, an encoding component and a decoding component.

27. The device of claim 26 , wherein the aggregation component is configured to be applied to the results of the encoding component.

28. The device of claim 25 , wherein the encoding component is configured be applied in parallel to each result of the transformation component.

29. The device of claim 23 , wherein the decoding component is configured to be applied to the result of the aggregation component.

30. The device of claim 23 , wherein the encoding component and/or the decoding component includes a convolutional neural network.

31. A device comprising:

a data storage medium having recorded thereon a data structure, the data structure comprising an encoder, a decoder, and/or the whole of an autoencoder learnable according to computer-implementable instructions for learning an autoencoder, the instructions configuring a processor to:

obtain a dataset of images, each image including a respective object representation, and

learn the autoencoder based on the dataset, the learning including minimization of a reconstruction loss, the reconstruction loss including a term that penalizes for each respective image a distance between the result of applying the autoencoder to the respective image and the set of results of applying at least part of a group of transformations to the object representation of the respective image,

wherein the results stemming from the first component to which the aggregation component is configured to be applied are vectors of a same size, the aggregation component outputting a vector of the same size having for each coordinate a value equal to the maximum among the values of said coordinate for the vectors to which the aggregation component is configured to be applied.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 9, 2018
From: MEHR, ELOI; LIEUTIER, ANDRE
To: DASSAULT SYSTEMES
Reel/Frame 047206/0526 →
Priority Claims (1)
EP 17305475 · Apr 27, 2017 · regional
Continuity (1)
Related Publication 20180314917A1 · Nov 1, 2018
Cited By (1)
US 12,541,962