Neural network image classifier

US2017316281A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017316281-A1
Application numberUS-201615141759-A
CountryUS
Kind codeA1
Filing dateApr 28, 2016
Priority dateApr 28, 2016
Publication dateNov 2, 2017
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A training engine is described which has a memory arranged to access a neural network image classifier, the neural network image classifier having been trained using a plurality of training images from an input space, the training images being labeled for a plurality of classes. The training engine has an adversarial example generator which computes a plurality of adversarial images by, for each adversarial image, searching a region in the input space around one of the training images, the region being one in which the neural network is linear, to find an image which is incorrectly classified into the plurality of classes by the neural network. The training engine has a processor which further trains the neural network image classifier using at least the adversarial images.

First claim

Opening claim text (preview).

1 . A training engine comprising: a memory arranged to access a neural network image classifier, the neural network image classifier having been trained using a plurality of training images from an input space, the training images being labeled for a plurality of classes; an adversarial example generator which computes a plurality of adversarial images by, for each adversarial image, searching a region in the input space around one of the training images, the region being one in which the neural network is linear, to find an image which is incorrectly classified into the plurality of classes by the neural network; and a processor which further trains the neural network image classifier using at least the adversarial images. 2 . The training engine of claim 1 wherein the adversarial example generator computes an adversarial image as a perturbation of an associated training image which is correctly classified by the neural network, such human perception of the adversarial image and the associated training image is the same. 3 . The training engine of claim 1 wherein the adversarial example generator searches the region in the input space by searching a convex polyhedron in the input space. 4 . The training engine of claim 1 wherein the adversarial example generator searches for the closest adversarial example in the region to the training image. 5 . The training engine of claim 1 wherein the adversarial example generator applies the training image to the neural network and observes a response of the neural network, and computes a constraint system using the observed response, the constraint system approximating the region of the input space. 6 . The training engine of claim 1 wherein the adversarial example generator computes a constraint system comprising a plurality of equalities and a plurality of inequalities describing the region of the input space. 7 . The training engine of claim 6 wherein the adversarial example generator removes disjunctions from the constraint system. 8 . The training engine of claim 7 wherein the adversarial example generator forms a linear program from the constraint system after removal of the disjunctions and solves the linear program using an iterative constraint refinement process. 9 . The training engine of claim 8 wherein the adversarial example generator initializes a current constraint set with the plurality of equalities and computes a current solution to a linear program formed from the current constraint set, and adds ones of the inequalities which are unsatisfied by the current solution to the current constrain set, and computes an updated current solution. 10 . The training engine of claim 8 wherein the iterative constraint refinement process uses fewer than five iterations. 11 . The training engine of claim 1 wherein the adversarial example generator computes the plurality of adversarial images in parallel. 12 . A computer-implemented method comprising: accessing, from a memory, a neural network image classifier, the neural network image classifier having been trained using a plurality of training images from an input space, the training images being labeled for a plurality of classes; computing a plurality of adversarial images by, for each adversarial image, searching a region in the input space around one of the training images, the region being one in which the neural network is linear, to find an image which is incorrectly classified into the plurality of classes by the neural network; and further training the neural network image classifier using at least the adversarial images. 13 . The method of claim 11 comprising computing an adversarial image as a perturbation of an associated training image which is correctly classified by the neural network, such human perception of the adversarial image and the associated training image is the same. 14 . The method of claim 11 comprising searching the region in the input space by solving a linear program comprising a constraint system which approximates the region in the input space. 15 . The method of claim 11 comprising searching the region in the input space by searching a convex polyhedron in the input space. 16 . The method of claim 11 comprising searching for the closest adversarial example in the region to the training image. 17 . The method of claim 11 comprising applying the training image to the neural network and observing a response of the neural network, and computing a constraint system which represents the input space using the observed response. 18 . An adversarial example generator comprising: a memory arranged to access a neural network image classifier, the neural network image classifier having been trained using a plurality of training images from an input space, the training images being labeled for a plurality of classes; a processor which computes a plurality of adversarial images by, for each adversarial image, solving a constraint system which approximates a region in the input space around the training image, to find an image which is incorrectly classified into the plurality of classes by the neural network. 19 . A computer-implemented method comprising: accessing a neural network image classifier, the neural network image classifier having been trained using a plurality of training images from an input space, the training images being labeled for a plurality of classes; computing, using a processor, a plurality of adversarial images by, for each adversarial image, solving a constraint system which approximates a region in the input space around the training image, to find an image which is incorrectly classified into the plurality of classes by the neural network. 20 . A training engine comprising: a memory arranged to access a neural network image classifier, the neural network image classifier having been trained using a plurality of training images from an input space, the training images being labeled for a plurality of classes; an adversarial example generator which computes a plurality of adversarial images by, for each adversarial image, solving a constraint system which approximates a region in the input space around the training image, to find an image which is incorrectly classified into the plurality of classes by the neural network; and a processor which further trains the neural network image classifier using at least the adversarial images.

Assignees

Inventors

Classifications

  • Organisation of the process, e.g. bagging or boosting · CPC title

  • G06V10/82Primary

    using neural networks · CPC title

  • using classification, e.g. of video objects · CPC title

  • characterised by the process organisation or structure, e.g. boosting cascade · CPC title

  • based on distances to training or reference patterns · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2017316281A1 cover?
A training engine is described which has a memory arranged to access a neural network image classifier, the neural network image classifier having been trained using a plurality of training images from an input space, the training images being labeled for a plurality of classes. The training engine has an adversarial example generator which computes a plurality of adversarial images by, for eac…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06V10/82. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Nov 02 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).