  Recently, integrated optics has gained interest as a hardware platform for
implementing machine learning algorithms. Of particular interest are artificial
neural networks, since matrix-vector multi- plications, which are used heavily
in artificial neural networks, can be done efficiently in photonic circuits.
The training of an artificial neural network is a crucial step in its
application. However, currently on the integrated photonics platform there is
no efficient protocol for the training of these networks. In this work, we
introduce a method that enables highly efficient, in situ training of a
photonic neural network. We use adjoint variable methods to derive the photonic
analogue of the backpropagation algorithm, which is the standard method for
computing gradients of conventional neural networks. We further show how these
gradients may be obtained exactly by performing intensity measurements within
the device. As an application, we demonstrate the training of a numerically
simulated photonic artificial neural network. Beyond the training of photonic
machine learning implementations, our method may also be of broad interest to
experimental sensitivity analysis of photonic systems and the optimization of
reconfigurable optics platforms.
