We made available our Python and TensorFlow code about machine learning design of multilevel quantum gates with reservoir computing
Lectures on our Come Lake school on Machine Learning and Photonics are now available on Youtube!
Stay tuned for the new edition next years (hopefully on site and in person!)
We use neural networks to represent the characteristic function of many-body Gaussian states in the quantum phase space. By a pullback mechanism, we model transformations due to unitary operators as linear layers that can be cascaded to simulate complex multi-particle processes. We use the layered neural networks for non-classical light propagation in random interferometers, and compute boson pattern probabilities by automatic differentiation. We also demonstrate that multi-particle events in Gaussian boson sampling can be optimized by a proper design and training of the neural network weights. The results are potentially useful to the creation of new sources and complex circuits for quantum technologies.
We propose the use of artificial neural networks to design and characterize photonic topological insulators. As a hallmark, the band structures of these systems show the key feature of the emergence of edge states, with energies lying within the energy gap of the bulk materials and localized at the boundary between regions of distinct topological invariants. We consider different structures such as one-dimensional photonic crystals, PT-symmetric chains and cylindrical systems and show how, through a machine learning application, one can identify the parameters of a complex topological insulator to obtain protected edge states at target frequencies. We show how artificial neural networks can be used to solve the long standing quest of inverse-problems solution and apply it to the cutting edge topic of topological nanophotonics.
Pilozzi et al 2020 Nanotechnology https://doi.org/10.1088/1361-6528/abd508
Invoke function (
C-x C-e to evaluate)
(f x0 x1) (f x0 x1 x2)
(defun my-fun (x0 x1) "function description" (+ x0 x1))
(setq my-f (lambda (x y) (+ x y))) (funcall my-f 1 2)
Setting variables, with quote is the name of the variable
(setq x y) is equivalent to
(set (quote x) y)
(setq name "nautilus") (setq name value) 'x ;; is the name of x, not the value (like the pointer in C) '(a b c) ;; is a list (setq x '(0 1 2 3)) ;; x is a list