Grovers Algorithm in Machine Learning and Optimization Applications
- Slides: 49
Grover’s Algorithm in Machine Learning and Optimization Applications
Grover Algorithm Reminder in new light
Graph Coloring n n Building oracle for graph coloring is a better explanation of Grover than database search. This is not an optimal way to do graph coloring but explains well the principle of building oracles. The Graph Coloring Problem 1 3 2 5 4 Color every node with a color. Every two nodes that share an edge should have different colors. Number of colors should be minimum 1 3 2 5 4 6 6 7 7 This graph is 3 -colorable
Simpler Graph Coloring Problem 1 3 2 We need to give all possible colors here 4 Two wires for color of node 1 Two wires for color of node 2 Two wires for color of node 3 Two wires for color of node 4 Gives “ 1” when nodes 1 and 2 have different colors 1 2 1 3 2 3 2 4 3 4 F(x) Value 1 for good coloring
Simpler Graph Coloring Problem Give Hadamard for each wire to get superposition of all state, which means the set of all colorings We need to give all possible colors here |0> |0> H H H Discuss naïve nonquantum circuit with a full counter of minterms 1 2 1 3 2 3 2 4 3 4 f(x) Value 1 for good coloring Now we will generate whole Kmap at once using quantum properties - Hadamard
Hadamard Transform Single qubit = = 1/2 1 1 1 -1 -1 1 Here I calculated Kronecker product of two Hadamards H H H Parallel connection of two Hadamard gates is calculated by Kronecker Product (tensor product)
n As we remember, these are transformations of Hadamard gate: Motivating calculations for 3 variables |0> H |0> + |1> H |0> - |1> In general: |x> H |0> + (-1) x |1> For 3 bits, vector of 3 Hadamards works as follows: |abc> (|0>+(-1)a|1>) (|0>+(-1)b|1>) (|0>+(-1)c|1>) = From multiplication |000> +(-1)c |001> +(-1)b |001>+(-1)b+c |001>000> +(-1)a |001> + (-1)a+c |001> + (-1)a+b |001> (-1)a+b+c |001>
|0> oracle This is like a Kmap with every true minterm (1) encoded by -1 |0> f(x) And every false minterm (0) encoded by 1 We can say that Hadamard gates before the oracle create the Kmap of the function, setting the function in each of its possible minterms (cells) in parallel
Block Diagram for graph coloring and similar problems Vector Of Basic States |0> All good colorings are encoded by negative phase Vector Of Hadamards Oracle with Comparators, Global AND gate Think about this as a very big Kmap with -1 for every good coloring Output of oracle Work bits
What Grover algorithm does? n Grover algorithm looks to a very big Kmap and tells where is the -1 in it. 1 1 1 1 1 1 1 -1 1 1 1 1 1 1 1 1 Here is -1
What “Grover for multiple solutions” algorithm does? n n Grover algorithm looks to a very big Kmap and tells where is the -1 in it. “Grover for many solutions” will tell all solutions. 1 1 1 1 1 1 1 -1 1 1 1 1 1 1 1 1 1 Here is -1, and here is 1, and here
Variants of Grover n With this oracle the “Grover algorithm for many solutions” will find all good colorings of the graph. n If we want to find the coloring, that is good and in addition has less than K colors, we need to add the cost comparison circuit to the oracle. n Then the oracle’s answers will be “one” only if the coloring is good and has less colors than K. n The oracle thus becomes more complicated but the Grover algorithm can be still used.
A practical Example n n This presentation shows clearly how to perform a so called 1 in 4 search We start out with the basics 1 in 4 search
Pick your needle and I will find you a haystack The point of this slide is to show examples of 4 different oracles. Grovers search can tell between these oracles in a single iteration, classically we would need 3 iterations.
Properties of the oracle Let f : {0, 1}2 {0, 1} have the property that there is exactly one x {0, 1}2 for which f (x) = 1 Goal: find x {0, 1}2 for which f (x) = 1 Classically: 3 queries are necessary Quantumly: ? Only after 3 tests can we determine with certainty that the oracles is 1 for only a single input value x
A 1 -4 search can chose between 4 oracles in one iteration Black box for 1 -4 search: x 1 x 2 y f(x 1, x 2) Start by creating phases in superposition of all inputs to f: 0 0 1 H H H f Input state to query: ( 00 + 01 + 10 + 11 )( 0 – 1 ) Output state: ((– 1) f(00) 00 + (– 1) f(01) 01 + (– 1) f(10) 10 + (– 1) f(11) 11 )( 0 – 1 ) Here we clearly see the Kmap encoded in phase – the main property of many quantum algorithms
This slide illustrates how the state of the system is changed as it propagates through the quantum network implementation of Grovers Search algorithm. Time 0 0 1 state = 0 1 0 0 0 ab c 00 01 11 10 01 1 H H X X H H f H H X X H state = 0. 353 -0. 353 ab c 01 0. 3 – 0, 3 00 01 0. 3 – 0, 3 10 0. 3 – 0, 3 state = 0. 353 -0. 353 ab c state = 0. 353 -0. 353 01 00 0. 3 – 0, 3 01 0. 3 – 0, 3 11 - 0. 3 0, 3 10 0. 3 – 0, 3 state = -0. 353 -0. 353 ab c 01 state = 0 0 -0. 5 -0. 5 0 0 H H M M H M state = 0 0 -0. 5 0 0 0. 5 -0. 5 ab c 01 00 0. 3 – 0, 3 00 - 0. 3 0, 3 01 0. 3 – 0, 3 11 - 0. 3 0, 3 11 0. 3 - 0, 3 10 0. 3 – 0, 3 ab c 01 00 0 01 - 0. 5 0, 5 01 - 0. 5 11 0 0 11 0. 5 10 0. 5 – 0, 5 10 0 0 0, 5 - 0. 5 0
Time 0 0 1 H H f X X H H 01 H H state = 0. 353 -0. 353 ab c H X X Ibverters flip between 00 and 11 ab c 01 00 0. 3 – 0, 3 00 - 0. 3 0, 3 01 0. 3 – 0, 3 11 - 0. 3 0, 3 11 0. 3 - 0, 3 10 0. 3 – 0, 3 Hadamard addis in 00 and 11 ab c 01 state = -0. 353 -0. 353 state = 0 0 -0. 5 -0. 5 0 0 Inverter flips second bit when first is 1 ab c 01 00 0 01 - 0. 5 0, 5 01 - 0. 5 11 0 0 11 0. 5 10 0. 5 – 0, 5 10 0 0 0, 5 - 0. 5 0 state = -0. 353 -0. 353 state = 0 0 -0. 5 0 0 0. 5 -0. 5 01 00 -0. 3 01 0. 3 11 -0. 3 10 0. 3 -0. 3 M M H M state = 0 0 0 0 -1 state = -0. 353 -0. 353 Ibverters flip between 00 and 11 ab c H H ab c state = 0 0 0 0 1 Hadamard of affine function 01 00 - 0. 3 01 0. 3 - 0. 3 11 - 0. 3 10 0. 3 - 0. 3 ab c 00 01 11 10 01 -1
Time 0 0 1 H H f H H X X H H ψ00 = – 00 + 01 + 10 + 11 ψ01 = + 00 – 01 + 10 + 11 ψ10 = + 00 + 01 – 10 + 11 ψ11 = + 00 + 01 + 10 – 11 The state corresponding to the input to the oracle that has a output result of 1 is ‘tagged’ with a negative 1. H X X H H M M H M After Hadamard the solution is “known” in Hilbert space by having value -1. But it is hidded from us This was a special case where we could transform the state vector without repeating the oracle. In general we have to repeat the oracle – general Grover
Reed-Muller Transform Reminder n Definition: for a function , the Reed-Muller transform pair is given by : n The R-M matrix for two variables is
FPRM n Functions can be represented as a Reed-Muller expansion of a given polarity using a collection of conjunctive terms joined by the moduloadditive operator such as where ai {0, 1}
How to use this? FPRM butterfly 10 11 PPRM in this case x 1’x 2’ x 1’x 2 1 x 2’ x 1 x 2 Basis functions minterms exors Spectral coefficients Creating symbolic functions of spectral coefficient
How to use this? FPRM butterfly x 1’x 2’ x 1’x 2 x 1 x 2’ x 1 x 2 1 0 0 0 minterms 1 1 x 2 1 0 0 x 1 1 x 2 1 exors Basis functions Spectral coefficients Calculating numerical values of spectral coefficients from values of function vector (minterms)
FPRM Butterfly v 3 inputs function Butterfly diagram for Polarity 0
Negative polarity changes butterfly: polarity of x 1 = 1, polarity of x 2 = 0 x 1’x 2 x 1 x 2’ = (1 x 1)(1 x 2’) x 1 x 2’ =1 x 2’ x 1 x 2’ = 1 x 2’ x 1’x 2’ x 1’x 2 x 1 x 2’ x 1 x 2 0 1 1 0 minterms 0 1 1 1 exors x 1 1 X 2’ 0 1 1 x 2’ 1 Spectral coefficients Negative polarity for X 2
Problem that we want to solve n Given is a Boolean function given as a vector of its minterms (true and false), a truth-table. n Find one of 2 n FPRMs and its polarity for which the number of spectral coefficients is below some given cost bound (a number).
Complete example a’b’ for polarity a’b’ = (00) a’b’ = (1+a)b’ = b’ + ab’ for polarity ab’ = (10) a’b’ = a’(1+b) = a’ + a’ b for polarity a’b = (01) a’b’ = (1+a)(1+b) =1+ a + b+ a’b polarity a 0 1 Cost 1 FPRM polarity Cost 2 for polarity ab = (11) Cost 2 Cost 4 Signal YES as a function of FPRM polarity and cost bound b 0 1 a 1 0 0 0 For cost bound 1 0 1 b 0 1 a 1 1 1 0 For cost bound 2 0 1 b 0 1 a 1 1 1 0 For cost bound 3 0 1 b 0 1 1 1 For cost bound 4
R-M Butterflies Quantum Logic Circuit n n A 3*3 Generalized Toffoli Gate Butterflies and corresponding Quantum circuit
Quantum Kernel for FPRM P C d 2 d 1 d 2 C d 2 d 1 C’ (C d 2 d 1) d 2 = C’ d 1 d 2
Quantum Data Path for FPRM P d 1 d 2 d 3 d 4
FPRM Processor n Data path for all 3 variables FPRMs
Components of Grover Loop (called also Grover Iterate) The Oracle -- O n The Hadamard Transforms -- H n The Zero State Phase Shift -- Z n O is an H is Oracle Hadamards Grover Iterate Z is Zero State Phase Shift H is Hadamards
Grover’s Algorithm n 3 Steps for Grover algorithm – place a register in an equal superposition of all states – selectively invert the phase of the marked state – inversion about the mean operation a number of times
Quantum Architecture of FPRM oracle for Grover
Cost Counter and Comparator n n n The first task is to count , The second task to evaluate the condition. If the condition is true. the circuit will output one, otherwise zero.
MVL Compressor Tree Implementation n n More compact if using MVL compressor tree for cost counter and comparator Sign-bit adder and its quantum implementation
Other Problems that we solved with variants of this architecture n Problem 1. Given is function and bound on cost. Find n Problem 2. Given is polarity and bound on cost. Find n Problem 3. Given is polarity and function. Find the FPRM polarity for which the cost of spectrum is below the bound. the function such that FPRM in this polarity has the cost of spectrum that is below the bound such that this function in this FPRM polarity has the cost of spectrum that is below the bound.
Essence of logic synthesis approach to Machine Learning
What oracle knows? Angelina Description of Oracle criteria to separate beautiful from not beautiful Is Angelina beautiful? Alice Is Alice beautiful? Oracle observer We have to learn oracle from examples yes no
Example of Logical Synthesis for oracle creation John Alan Mark Mate Dave Nick Jim Robert
Good guys John Mark Dave Jim Bad guys Alan Mate Nick Robert A - size of hair B - size of nose C - size of beard D - color of eyes
Good guys Mark John A’ BCD Dave Jim A’ B’CD A’ BCD’ A - size of hair CD AB 00 01 11 10 – - 1 1 - B - size of nose C - size of beard D - color of eyes
Bad guys Alan Mate A’ BC’D’ Robert Nick A’ B’C’D ABCD AB’C’D A - size of hair CD AB 00 01 11 10 0 - 0 – 0 1 1 0 - 1 - B - size of nose C - size of beard D - color of eyes A’C
Generalization 1: Bald guys with beards are good Generalization 2: All other guys are no good CD AB 00 01 11 10 0 - 0 – 0 1 1 0 - 1 - A - size of hair B - size of nose C - size of beard D - color of eyes A’C
Other Problems that we solved with variants of this architecture This is the machine learning problem just shown oracle n Problem 4. Given |0> is an incompletely specified function. Find When |0> the FPRM polarity for in loop which the cost of spectrum is the |0> When minimum. |1> fixed |0> values f(x)
Other Applications n Logic Design – (also logic minimization for reversible and quantum circuits themselves) n Image Processing n DSP
Applications n Quantum Game Theory. – For instance, the problem discussed above is more general than the game of finding the conjunctive formula of literals for a given set of data.
Applications n All circuits presented here can be generalized to ternary quantum gates, allowing for ternary butterflies and more efficient arithmetic for larger counters and comparators.
Conclusion Hi guys, you just learnt a method that allows everybody who knows how to design a reversible oracle to create a Grover-based quantum algorithm for a new NP-hard problem
- Convex optimization in machine learning javatpoint
- Engineering optimization methods and applications
- Induction as inverted deduction in machine learning
- Find s algorithm machine learning
- Inductive and analytical learning
- Inductive and analytical learning
- Eager vs lazy classification
- Sequential minimal optimization algorithm
- Concept learning task in machine learning
- Analytical learning in machine learning
- Pac learning model in machine learning
- Machine learning t mitchell
- Instance based learning in machine learning
- Inductive learning machine learning
- First order rule learning in machine learning
- Cmu machine learning
- Machine independent code optimization
- Phases of compiler construction
- Machine dependent code optimization example
- Explain machine independent loader features in detail.
- Cuadro comparativo de e-learning
- Leo meta learning
- Learning principles and applications
- A* and ao* algorithm
- Moore machine
- Energy work and simple machines chapter 10 answers
- Sweep line algorithm codeforces
- Automata chapter 1
- Machine learning and data mining
- Andrew ng hbr
- Pseudolabeling
- Azure data mining
- Cm bishop pattern recognition and machine learning
- Finite state machine vending machine example
- Mealy to moore conversion
- Brute force map learning algorithm
- Andrew ng introduction to machine learning
- Perceptron learning algorithm
- Q learning algorithm
- What is this
- Tony wagner's seven survival skills
- Constrained and unconstrained optimization in economics
- Relative vs absolute max and min
- "real system"
- Supply base rationalization and optimization
- Deep neural networks and mixed integer linear optimization
- Supply base rationalization and optimization
- Algorithms for query processing and optimization
- Optimization goals and figures of merit in wsn
- Linear optimization and prescriptive analysis