WO2020204093A1 - コンピュータシステム、情報処理方法、プログラム及び情報処理装置 - Google Patents

コンピュータシステム、情報処理方法、プログラム及び情報処理装置 Download PDF

Info

Publication number
WO2020204093A1
WO2020204093A1 PCT/JP2020/015076 JP2020015076W WO2020204093A1 WO 2020204093 A1 WO2020204093 A1 WO 2020204093A1 JP 2020015076 W JP2020015076 W JP 2020015076W WO 2020204093 A1 WO2020204093 A1 WO 2020204093A1
Authority
WO
WIPO (PCT)
Prior art keywords
quantum
unit
computer
input data
classical
Prior art date
Application number
PCT/JP2020/015076
Other languages
English (en)
French (fr)
Inventor
廣大 斯波
完 曽我部
Original Assignee
株式会社グリッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社グリッド filed Critical 株式会社グリッド
Priority to US17/600,883 priority Critical patent/US20220180239A1/en
Priority to JP2021512186A priority patent/JP7441444B2/ja
Publication of WO2020204093A1 publication Critical patent/WO2020204093A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/20Models of quantum computing, e.g. quantum circuits or universal quantum computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/40Physical realisations or architectures of quantum processors or components for manipulating qubits, e.g. qubit coupling or qubit control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/60Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Definitions

  • the present invention relates to a computer system, an information processing method, a program, and an information processing device.
  • the quantum gate type quantum computer is a highly versatile quantum computer that can construct a quantum circuit by combining quantum gates according to the problem to be solved. Therefore, it is expected that the quantum gate type quantum computer will be put into practical use in several decades.
  • NISQ Noisy Intermediate-Scale Quantum computer
  • an object of the present invention is to provide a computer system, an information processing method, a program, and an information processing device that extend the processing that can be executed by the quantum computer in a hybrid system of a classical computer and a quantum computer.
  • the computer system is a computer system including a classical computer capable of executing a classical program and a quantum computer capable of executing a quantum program, and the classical computer includes a generation unit and an update unit.
  • the quantum computer includes a control unit and a quantum unit, the generation unit generates parameters based on input data that maps a plurality of elements to which element values are associated with each other, and the control unit controls the quantum unit.
  • the quantum part executes the quantum calculation algorithm based on the feature data of the parameters and the input data, and the update part compares the input data with the execution result of the quantum calculation algorithm by the quantum part and updates the feature data based on the comparison result. ..
  • the computer system is a computer system including a classical computer capable of executing a classical program and a quantum computer capable of executing a quantum program, and the classical computer includes an extraction unit, a generation unit, and a synthesis unit.
  • the quantum computer is provided with a control unit and a quantum unit, and the extraction unit is a first element which is a set of first elements from input data in which a plurality of first elements to which element values are associated with each other are mapped.
  • a plurality of groups are extracted, the generation unit generates parameters based on the first element included in the corresponding first element group for each of the plurality of first element groups, and the control unit controls the quantum unit.
  • the quantum part is made to execute a quantum calculation algorithm based on the parameters and the corresponding feature data, and the synthesis part is the quantum calculation algorithm by the quantum part for each of the plurality of first element groups. Synthesize the execution results.
  • the information processing apparatus controls parameters and inputs by controlling a generation unit that generates parameters based on input data that maps a plurality of elements to which element values are associated with each other, and a quantum computer. It includes a control unit that causes a quantum computer to execute a quantum calculation algorithm based on the feature data of the data, and an update unit that updates the feature data based on the input data and the execution result of the quantum calculation algorithm by the quantum computer.
  • the information processing apparatus is an extraction unit that extracts a plurality of first element groups, which are a set of first elements, from input data in which a plurality of first elements to which element values are associated with each other are mapped. And, for each of the plurality of first element groups, each of the plurality of first element groups by controlling the generation unit that generates the parameters based on the first element included in the corresponding first element group and the quantum computer.
  • a control unit that causes the quantum computer to execute a quantum calculation algorithm based on parameters and corresponding feature data, and a synthesis unit that synthesizes the execution results of the quantum calculation algorithm by the quantum computer for each of a plurality of first element groups. Be prepared.
  • the present invention in a hybrid system of a classical computer and a quantum computer, it is possible to provide a computer system, an information processing method, a program, and an information processing device that extend the processing that can be executed by the quantum computer.
  • FIG. 9 is a diagram showing the result of performing a simulation of removing noise 50 times by the process described with reference to FIGS. 9 to 11 by a quantum simulator. It is a figure which shows the result of having performed the simulation which generated the composite image by restoring the image data of the number "0" of 1MNIST which has the size of 28 ⁇ 28 pixels by using a quantum simulator. It is a figure which shows the MNIST image of "0" and the MNIST image of "1". It is a figure which shows the result of plotting the 2D data obtained by compressing each image of the MNIST image of "0" and the MNIST image of "1". It is a figure which shows an example of the hardware configuration of the classical computer which concerns on this embodiment.
  • FIG. 1 is a diagram showing a configuration example of a computer system 1 according to an embodiment of the present invention.
  • the computer system 1 according to the present embodiment includes a classical computer 10 and a quantum computer 20. Therefore, the computer system 1 is configured as a hybrid system having a classical computer function and a quantum computer function.
  • the classical computer 10 and the quantum computer 20 are communicably connected via the communication network N.
  • the communication network N is a wired or wireless communication network, for example, the Internet, or a LAN (Local Area Network) or the like.
  • the classical computer 10 executes a classical program to perform various types of information processing.
  • a classical program is code that represents an algorithm that can be executed by a classical computer.
  • a classical program is a program written in a programming language such as C language.
  • the classical computer 10 includes a storage unit 110, a processing unit 120, and a communication unit 130.
  • the storage unit 110 stores various types of information. Specifically, the storage unit 110 is generated by a classical program for the processing unit 120 to execute various processes, information to be processed by the processing unit 120, the result of the processing by the processing unit 120, and the quantum computer 20. It stores information such as data. For example, the storage unit 110 stores information such as image data processed by the processing unit 120 and parameters generated by the processing unit 120. Various types of information stored in the storage unit 110 are referred to by the processing unit 120 as necessary.
  • the processing unit 120 has a function of performing various types of information processing. Further, the processing unit 120 can store the processing result in the storage unit 110.
  • the processing unit 120 includes an acquisition unit 121, an extraction unit 122, a generation unit 124, an update unit 126, and a synthesis unit 128.
  • the acquisition unit 121 has a function of acquiring various types of information.
  • the acquisition unit 121 can acquire image data from the storage unit 110.
  • the extraction unit 122 has a function of extracting information from various data.
  • the extraction unit 122 can extract a pixel group (element group) which is a set of pixels (elements) constituting at least a part of the image data from the image data.
  • the generation unit 124 can generate various parameters.
  • the generation unit 124 can generate image data or parameters based on information extracted from the image data.
  • the generation unit 124 can generate a parameter based on input data in which a plurality of elements to which element values are associated with each other are mapped.
  • the input data is image data in which pixel values are mapped in a two-dimensional grid pattern.
  • the generation unit 124 can generate parameters such as the longitudinal magnetic field coefficient and the coupling coefficient used in the quantum calculation algorithm described later based on the image data.
  • the update unit 126 can update various parameters. For example, the update unit 126 can update parameters such as the coupling coefficient based on the execution result of the quantum calculation algorithm by the quantum computer 20. Specifically, the update unit 126 can compare the input data with the execution result of the quantum calculation algorithm and update the feature data corresponding to the input data based on the comparison result.
  • the synthesis unit 128 can synthesize various types of information. Specifically, the synthesis unit 128 can synthesize the execution result of the quantum calculation algorithm by the quantum computer 20. More specifically, the synthesis unit 128 can generate a composite image by synthesizing a plurality of pixel groups which are the execution results of the quantum calculation algorithm.
  • the communication unit 130 can send and receive various types of information.
  • the communication unit 130 can transmit, for example, the parameters generated by the generation unit 124 and the parameters updated by the update unit 126 to the quantum computer 20.
  • the communication unit 130 can receive the execution result of the quantum calculation algorithm by the quantum computer 20. Further, the communication unit 130 can store the received information in the storage unit 110.
  • the quantum computer 20 is a computer that performs calculations using the quantum mechanical properties of a substance, and may be a quantum gate type quantum computer.
  • the quantum computer 20 may be configured with arbitrary hardware.
  • the quantum computer 20 can execute a quantum calculation algorithm based on a quantum program.
  • a quantum program is a code that expresses various quantum algorithms.
  • the quantum program may be expressed as, for example, a quantum circuit.
  • the quantum program may include a program written in a programming language, like a classical program.
  • the quantum computer 20 includes a storage unit 210, a control unit 220, a quantum unit 230, and a communication unit 240.
  • the storage unit 210, the control unit 220, and the communication unit 240 may include a classical computer function.
  • the storage unit 210 stores various types of information.
  • the storage unit 210 stores a quantum program used by the quantum unit 230 to execute a quantum calculation algorithm.
  • Various types of information stored in the storage unit 210 are referred to by the control unit 220 as necessary.
  • the control unit 220 can control the quantum unit 230 based on the quantum program. Specifically, the control unit 220 can cause the quantum unit 230 to execute a quantum calculation algorithm based on the feature data corresponding to the parameters and the input data generated by the generation unit 124.
  • the quantum unit 230 is a core part of the quantum computer 20, and can execute a quantum calculation algorithm based on the control by the control unit 220.
  • the quantum unit 230 executes an adiabatic quantum calculation algorithm.
  • the adiabatic quantum computation algorithm is known as one of the optimization algorithms. In the following, the adiabatic quantum calculation algorithm is also simply referred to as "adiabatic quantum calculation”.
  • Adiabatic quantum computation is known as one of the annealing calculation methods calculated using the Ising model (see Reference 1).
  • the Ising model is a model that models the behavior of spins in magnetic materials such as ferromagnets and antiferromagnets. Spin takes two types of states, upspin (+1) and downspin (-1). (Reference 1) E. Farhi, J. Goldstone, S. Gutmann, and M. Sipser, "Quantum Computation by Adiabatic Evolution," quant-ph / 0001106, 2000.
  • the Hamiltonian of the entire Ising model system is expressed by the following equation (1) using the coupling coefficient Jij between the two spins si and sj and the local longitudinal magnetic field hzi applied to the inside of the spin si.
  • the transverse magnetic field coefficient hx is added to set the initial state of the Hamiltonian.
  • the spin si in order to correspond to the Pauli operator .sigma.i z, may be expressed by the phase inversion operation gate Zi is a quantum gate, represented by a matrix.
  • the Hamiltonian in the adiabatic quantum computation is expressed by the following equation (2).
  • Jij, hzi and hx are parameters of the phase of the unitary rotating gate in the quantum circuit. Therefore, these parameters are represented as Wij ( ⁇ ), hzi ( ⁇ ) and hx ( ⁇ ).
  • the time evolution of the Schrodinger equation can be expressed by performing unitary transformations in order. Assuming that the state vector of the qubit is
  • the communication unit 240 has a function of transmitting and receiving various types of information.
  • the communication unit 240 transmits, for example, the execution result of the adiabatic quantum calculation algorithm by the quantum unit 230 to the classical computer 10.
  • FIG. 2 is a diagram showing an outline of processing by the computer system 1 according to the present embodiment.
  • a pixel value of 0 or 1 is associated with each of the nine pixels.
  • the pixel value of 0 corresponds to white and the pixel value of 1 corresponds to black.
  • the classical computer 10 can generate a longitudinal magnetic field coefficient hz ( ⁇ ) based on the input data 300. Specifically, the classical computer 10 can generate the longitudinal magnetic field coefficient hz ( ⁇ ) corresponding to the pixel values corresponding to each of the nine pixels included in the input data 300. The classical computer 10 can also generate a coupling coefficient Wij ( ⁇ ). Here, it is assumed that the classical computer 10 generates a random value as the coupling coefficient Wij ( ⁇ ). The longitudinal magnetic field coefficient hz ( ⁇ ) and the coupling coefficient Wij ( ⁇ ) can be implemented by the generation unit 124 included in the classical computer 10.
  • the quantum computer 20 executes an adiabatic quantum calculation algorithm using the longitudinal magnetic field coefficient hz ( ⁇ ) and the coupling coefficient Wij ( ⁇ ) generated by the classical computer 10. That is, the quantum computer 20 executes the adiabatic quantum calculation described with reference to the equations (1) to (5).
  • the transverse magnetic field coefficient hx ( ⁇ ) may be a predetermined value specified in advance.
  • each of the pixels included in the input data 30 corresponds to a qubit. Also, each of the qubits corresponds to the spin of the Ising model.
  • FIG. 3 is a diagram for explaining the coupling of spins corresponding to each of the pixels.
  • the coupling coefficient between the center pixel 320 and the pixel 322 above it is Wi-1, j ( ⁇ )
  • the coupling coefficient between the center pixel 320 and the pixel 324 on the right side is Wi, j + 1 ( ⁇ ), and the center.
  • the coupling coefficient between the pixel 320 and the pixel 326 below it is Wi + 1, j ( ⁇ ), and the coupling coefficient between the pixel 320 at the center and the pixel 328 on the left side is Wi, j-1 ( ⁇ ). These coupling coefficients represent the relationship between the two pixels that are coupled. Further, here, it is assumed that the periodic boundary condition is applied.
  • FIG. 4 is a diagram showing a part of a quantum circuit diagram used for the adiabatic quantum calculation according to the present embodiment.
  • H shown in FIG. 4 is a Hadamard gate.
  • the unitary gate U3 is compatible with Hamiltonian Xi.
  • the unitary gate U1 is compatible with Hamiltonian Zi.
  • the quantum circuit 350 surrounded by the broken line corresponds to the Hamiltonian ZiZj.
  • the quantum computer 20 transmits the image data of 3 ⁇ 3 pixels as the output data 310 to the classical computer 10.
  • the classical computer 10 updates the coupling coefficient Wij ( ⁇ ) based on the input data 300 and the output data 310. Specifically, the classical computer 10 updates the coupling coefficient Wij ( ⁇ ) using the following equations (6) and (7).
  • Wij ( ⁇ ) Wij ( ⁇ ) + ⁇ Eij ... (6)
  • Eij (ZiZj) original-ZiZj ... (7)
  • Eij is the difference between the product sisj of two spins corresponding to the input data 300 and the product sisj of two spins included in the output data 310.
  • is the learning rate. Wij ( ⁇ ) is learned (optimized) by repeatedly performing adiabatic quantum computation by the quantum computer 20 and updating Wij ( ⁇ ) by the classical computer 10.
  • FIG. 5 is a diagram for explaining a process in which the computer system 1 uses the learned Wij ( ⁇ ) to remove noise added to the input data 360.
  • the input data 360 is data in which noise is added to the input data 300 shown in FIG.
  • the classical computer 10 transmits the longitudinal coupling coefficient hz ( ⁇ ) based on the input data 360 and the learned Wij ( ⁇ ) described with reference to FIG. 2 to the quantum computer 20.
  • the quantum computer 20 performs adiabatic quantum computation using hz ( ⁇ ) and Wij ( ⁇ ), and outputs 3 ⁇ 3 pixel image data as output data 370. As a result, the noise contained in the input data 360 is removed.
  • the coupling coefficient Wij ( ⁇ ) may be set based on a predetermined condition.
  • the feature data of the input data 300 is the coupling coefficient Wij ( ⁇ )
  • FIG. 6 is a flowchart showing an example of a flow in which the computer system 1 performs adiabatic quantum computation using parameters based on input data and updates the coupling coefficient Wij ( ⁇ ) according to the result.
  • FIG. 7 is a flowchart showing a flow of processing in which the computer system 1 uses the learned coupling coefficient Wij ( ⁇ ) to remove noise from the input data.
  • the acquisition unit 121 included in the classical computer 10 acquires image data to be input data from the storage unit 110 (step S101). Specifically, the acquisition unit 121 acquires image data of 3 ⁇ 3 pixels as input data.
  • the generation unit 124 generates the longitudinal magnetic field coefficient hz ( ⁇ ) based on the input data acquired in step S101 (step S103). At this time, the generation unit 124 further generates the coupling coefficient Wij ( ⁇ ) as a random value.
  • the communication unit 130 transmits the longitudinal magnetic field coefficient hz ( ⁇ ) and the coupling coefficient Wij ( ⁇ ) generated in step S103 to the quantum computer 20 (step S105).
  • the communication unit 240 included in the quantum computer 20 receives the longitudinal magnetic field coefficient hz ( ⁇ ) and the coupling coefficient Wij ( ⁇ ) transmitted to the quantum computer 20 and transmits them to the control unit 220.
  • the control unit 220 causes the quantum unit 330 to execute the adiabatic quantum calculation algorithm based on the longitudinal magnetic field coefficient hz ( ⁇ ) and the coupling coefficient Wij ( ⁇ ) transmitted in step S105 (step S107).
  • the quantum unit 230 observes each value of the qubit and transmits the observation result as output data to the communication unit 240.
  • Each of the observed values corresponds to the pixels included in the 3 ⁇ 3 pixel image data.
  • the communication unit 240 transmits the output data to the communication unit 130 of the classical computer 10 (step S109).
  • the communication unit 130 of the classical computer 10 receives the output data and transmits it to the update unit 126.
  • the update unit 126 updates the coupling coefficient Wij ( ⁇ ) (step S111). Specifically, the update unit 126 compares the input data with the output data transmitted in step S109, and updates the coupling coefficient Wij ( ⁇ ) based on the comparison result. Specifically, the updating unit 126 updates the coupling coefficient Wij ( ⁇ ) using the above equations (6) and (7).
  • the communication unit 130 transmits the new coupling coefficient Wij ( ⁇ ) updated in step S111 to the communication unit 240 included in the quantum computer 20 (step S113).
  • the communication unit 240 receives the new coupling coefficient Wij ( ⁇ ) and transmits it to the control unit 220.
  • the control unit 220 causes the quantum unit 230 to execute the adiabatic quantum calculation algorithm based on the longitudinal magnetic field coefficient hz ( ⁇ ) and the new coupling coefficient Wij ( ⁇ ) (step S115).
  • the execution result of the adiabatic quantum calculation algorithm (that is, the output data which is the observation result of the qubit) is transmitted to the communication unit 240.
  • the communication unit 240 uses the execution result of the adiabatic quantum calculation algorithm acquired in step S115 as output data, and transmits the output data to the communication unit 130 of the classical computer 10 (step S117).
  • the communication unit 130 receives the output data and transmits it to the update unit 126.
  • the update unit 126 updates the coupling coefficient Wij ( ⁇ ) in the same manner as in the process of step S111 (step S119).
  • the learned coupling coefficient Wij ( ⁇ ) is generated by repeatedly performing the processes of steps S113 to S119.
  • the learned coupling coefficient Wij ( ⁇ ) may be stored in the storage unit 110.
  • the acquisition unit 121 included in the classical computer 10 acquires input data from the storage unit 110 (step S201).
  • the input data includes noise described with reference to FIG.
  • the generation unit 124 generates the vertical coupling coefficient hz ( ⁇ ) according to the input data acquired in step S201 (step S202). Therefore, the vertical coupling coefficient hz ( ⁇ ) generated here is affected by noise.
  • the communication unit 130 transmits the longitudinal magnetic field coefficient hz ( ⁇ ) generated in step S202 and the learned coupling coefficient Wij ( ⁇ ) to the quantum computer 20 (step S203).
  • the communication unit 240 of the quantum computer 20 receives the longitudinal magnetic field coefficient hz ( ⁇ ) and the learned coupling coefficient Wij ( ⁇ ) and transmits them to the control unit 220.
  • control unit 220 causes the quantum unit 230 to execute the adiabatic calculation algorithm based on the longitudinal magnetic field coefficient hz ( ⁇ ) transmitted in step S203 and the learned coupling coefficient Wij ( ⁇ ) (step S205).
  • the execution result of the adiabatic calculation algorithm is transmitted to the communication unit 240 as output data.
  • the output data is 3 ⁇ 3 pixel image data.
  • the communication unit 240 transmits the output data to the classical computer 10 (step S207).
  • the communication unit 130 of the classical computer 10 receives the output data (step S209).
  • the classical computer 10 can acquire the output data in which noise is removed from the input data.
  • FIG. 8 shows the results of performing the processes shown in FIGS. 6 and 7 100 times using a quantum simulator using a classical computer. As shown in FIG. 8, out of 100 processes, the same output data as the input data could be obtained 86 times. In the 14 times of processing, output data in which only one pixel was incorrect was obtained.
  • the computer system 1 according to the present embodiment has been described above. According to the computer system 1 according to the present embodiment, it is possible to carry out the same processing as the self-encoder in machine learning. Specifically, the computer system 1 can restore the image data or remove noise contained in the image data. Therefore, the computer system 1 according to the present embodiment functions as a so-called quantum self-encoder. According to the present embodiment, the computer system 1 allows the quantum computer 20 to play a part of the function of the quantum self-encoder, and can extend the processing that can be executed by the quantum computer 20.
  • the input data is image data having a size of 3 ⁇ 3 pixels.
  • image data having a size larger than the input data according to the first embodiment is treated as input data.
  • the input data 400 includes a pixel representing the character "0", a noise pixel 402, and the remaining white pixels.
  • the classical computer 10 extracts a pixel group (first pixel group) corresponding to each of the 10000 pixels constituting the input data 400 from the input data 400.
  • the central pixel included in the pixel group is a corresponding pixel included in the input data 400.
  • the remaining eight pixels included in the pixel group are eight pixels around the corresponding pixel included in the input data 400.
  • the pixel group 406 shown at the top corresponds to the top pixel 404 at the left end of the input data 400.
  • the pixel 407 at the center of the pixel group 406 corresponds to the pixel 404.
  • the pixel group may be extracted by the extraction unit 122 included in the classical computer 10.
  • the quantum computer 20 performs adiabatic quantum computation based on each of the extracted 10000 pixel groups.
  • the quantum computer 20 may perform adiabatic quantum computation using the learned coupling coefficient Wij ( ⁇ ) generated with reference to FIG. 6, or the coupling set based on noise-free image data.
  • Adiabatic quantum computation may be performed using the coefficient Wij ( ⁇ ). Therefore, the output data is the restored data obtained by removing noise from the corresponding pixel group 406.
  • the output data 408 shown at the top is the execution result of the adiabatic quantum calculation based on the pixel group 406.
  • the adiabatic quantum computation is executed assuming that the pixels included in the pixel group are combined with the pixels adjacent to each other in the vertical and horizontal directions. Of the nine pixels included in the pixel group, only the central pixel is combined with the same pixel as the pixel included in the input data. Therefore, among the pixels included in the output data, it is considered that the image data in which the central pixel does not contain noise is best restored.
  • the central pixel has more adjacent pixels than the other eight pixels.
  • the classical computer 10 generates image data from which noise has been removed by synthesizing 10,000 output data output by the quantum computer 20. Specifically, the classical computer 10 generates a composite image 410 by two-dimensionally mapping the central pixel included in each of 10,000 output data. Therefore, each of the pixels included in the composite image 410 is the central pixel included in the corresponding output data. For example, the upper left pixel 412 included in the composite image 410 corresponds to the central pixel 409 of the output data 408.
  • the process of generating the composite image 410 by synthesizing the output data is performed by the synthesizing unit 128 included in the classical computer 10.
  • the extraction unit 122 acquires a plurality of pixel groups from the input data acquired in step S301 (step S303). Specifically, the extraction unit 122 extracts a number of pixel groups from the input data according to the number of pixels included in the input data. More specifically, the extraction unit 122 extracts 16 pixel groups corresponding to each of the 16 pixels. The size of the extracted pixel group is the size of 3 ⁇ 3 pixels.
  • the generation unit 124 generates a longitudinal magnetic field coefficient hz ( ⁇ ) for each of the 16 pixel groups extracted in step S303 (step S305).
  • the communication unit 130 transmits the longitudinal magnetic field coefficient hz ( ⁇ ) and the learned coupling coefficient Wij ( ⁇ ) corresponding to each of the 16 pixel groups extracted in step S303 to the quantum computer 20 (step). S307).
  • the s of the quantum computer 20 receives the longitudinal magnetic field coefficient hz ( ⁇ ) and the learned coupling coefficient Wij ( ⁇ ) and transmits them to the control unit 220.
  • the learned coupling coefficient Wij ( ⁇ ) is stored in advance in the storage unit 110 in order to restore the pixel group extracted from the input data containing no noise.
  • control unit 220 causes the quantum unit 230 to execute the adiabatic quantum calculation algorithm based on the longitudinal magnetic field coefficient hz ( ⁇ ) and the learned coupling coefficient Wij ( ⁇ ) for each of the 16 pixel groups (step S309). ).
  • the quantum unit 230 outputs the execution result of the adiabatic quantum calculation as output data for each of the 16 pixel groups.
  • the output data is a pixel group having a size of 3 ⁇ 3 pixels.
  • the communication unit 240 transmits the output data corresponding to each of the 16 pixel groups to the classical computer 10 (step S311).
  • the communication unit 130 of the classical computer 10 receives the output data corresponding to each of the 16 pixel groups and transmits the output data to the synthesis unit 128.
  • the compositing unit 128 generates a composite image by compositing the output data corresponding to each of the 16 pixel groups (step S313). Specifically, the synthesis unit 128 generates a composite image by mapping the central pixels included in the output data in a two-dimensional grid pattern. As a result, a composite image in which noise is removed from the input data can be obtained.
  • FIG. 10 The process shown in FIG. 10 was simulated by a quantum simulator using image data of 4 ⁇ 4 pixels. The simulation results will be described with reference to FIG. In FIG. 11, in order from the left, noise-free image data 450, noise-added input data 460, and restored composite image 470 are shown.
  • the image data 450 has a size of 4 ⁇ 4 pixels. Of the pixels included in the image data 450, the pixels 454 (pixels with diagonal lines) in the second column from the left are all black (pixel value 1), and the remaining pixels are white (pixel value 0).
  • the input data 460 is data obtained by adding 30% noise to the image data 450. Specifically, the input data 460 is provided with four noise pixels 461,462,463,464 (dotted pixels). These pixels 461,462,463,464 are black. When noise is removed from the input data 460 by the process described with reference to FIG. 10, a composite image 470 is obtained.
  • FIG. 12 is a diagram showing the results of performing a simulation of removing noise 50 times by the processing described with reference to FIGS. 9 to 11 for the input data 460 using a quantum simulator.
  • FIG. 13 in order from the left, the image data 500 containing no noise, the input data 510 containing noise, and the composite image 520 based on the input data 510 are shown. As shown in FIG. 13, it can be seen that the composite image 520 is exactly the same image as the image data 500 that does not include noise. As described above, even if 784 qubits are required when all the pixels included in the image data 500 correspond to the qubits, according to the computer system according to the present embodiment, 9 qubits are required. Allows the image data to be restored.
  • the computer system according to the second embodiment has been described above. According to the computer system according to the present embodiment, it is possible to process data having a size larger than the number of available qubits (for example, 16 pixels or 784 pixels described above).
  • the computer system according to the present embodiment has the same function as the convolution self-encoder in machine learning. Specifically, the above-mentioned 3 ⁇ 3 pixel group is regarded as a filter, quantum calculation is performed on all pixels of the input data using this filter, and a composite image is obtained by synthesizing the calculation results. Is. Therefore, the computer system according to the present embodiment functions as a so-called convolutional quantum self-encoder. As a result, the computer system 1 can make the quantum computer 20 play a part of the function of the convolutional quantum self-encoder, and can extend the processing that can be executed by the quantum computer 20.
  • the input data can be compressed into lower dimensional data.
  • the coupling coefficient Wij ( ⁇ ) with the pixels adjacent to the top, bottom, left, and right is learned.
  • the input data is obtained by extracting the coupling coefficients Wi, j + 1 ( ⁇ ) with the right pixel and Wi + 1, j ( ⁇ ) with the lower pixel. It can be compressed into two-dimensional data.
  • the combination of coupling coefficients to be taken out is not limited to this. For example, the coupling coefficient with the upper pixel and the coupling coefficient with the lower pixel may be extracted, or a combination of other coupling coefficients may be extracted.
  • FIG. 14 shows the image data 550 of “0” and the image data 560 of “1” before being compressed.
  • FIG. 15 is a diagram showing the result of plotting the two-dimensional data obtained by compressing the input data for each image.
  • the horizontal axis shows the coupling coefficient Wi, j + 1 ( ⁇ ) with the right pixel, and the vertical axis shows Wi + 1, j ( ⁇ ) with the lower pixel.
  • the filled circles are plots corresponding to the "0" MNIST image, and the white circles are plots corresponding to the "1" MNIST image.
  • FIG. 15 it can be seen that the two types of image data are well classified by the two-dimensional data obtained by compressing the image data.
  • FIG. 16 is a diagram showing an example of the hardware configuration of the classical computer 10 according to the present embodiment.
  • the classical computer 10 communicates with a CPU (Central Processing Unit) 10a corresponding to a calculation unit, a RAM (Random Access Memory) 10b corresponding to a storage unit 110, and a ROM (Read only Memory) 10c corresponding to the storage unit 110. It has a unit 10d, an input unit 10e, and a display unit 10f. Each of these configurations is connected to each other via a bus so that data can be transmitted and received.
  • the classical computer 10 is composed of one computer will be described, but the classical computer 10 may be realized by combining a plurality of computers.
  • the configuration shown in FIG. 16 is an example, and the classical computer 10 may have configurations other than these, or may not have a part of these configurations.
  • the calculation unit includes the processing unit 120.
  • the CPU 10a is a control unit that controls execution of a program stored in the RAM 10b or ROM 10c, calculates data, and processes data.
  • the CPU 10a receives various data from the input unit 10e and the communication unit 10d, displays the calculation result of the data on the display unit 10f, and stores the data in the RAM 10b.
  • the RAM 10b is a storage unit in which data can be rewritten, and may be composed of, for example, a semiconductor storage element.
  • the RAM 10b may store data such as a program executed by the CPU 10a and image data. It should be noted that these are examples, and data other than these may be stored in the RAM 10b, or a part of these may not be stored.
  • the ROM 10c is a storage unit capable of reading data, and may be composed of, for example, a semiconductor storage element.
  • the ROM 10c may store, for example, data that is not rewritten.
  • the communication unit 10d is an interface for connecting the classic computer 10 to another device.
  • the communication unit 10d may be connected to a communication network such as the Internet.
  • the input unit 10e receives data input from the user, and may include, for example, a keyboard and a touch panel.
  • the display unit 10f visually displays the calculation result by the CPU 10a, and may be configured by, for example, an LCD (Liquid Crystal Display).
  • the display unit 10f may display the transition of the inventory number of a plurality of articles and the transition of the capacity of the warehouse.
  • the program may be stored in a storage medium readable by a computer such as RAM 10b or ROM 10c and provided, or may be provided via a communication network connected by the communication unit 10d.
  • a computer such as RAM 10b or ROM 10c
  • various operations described with reference to FIG. 1 are realized by executing the program by the CPU 10a.
  • the classical computer 10 may include an LSI (Large-Scale Integration) in which a CPU 10a and a RAM 10b or a ROM 10c are integrated.
  • LSI Large-Scale Integration
  • the quantum computer 20 may include a CPU 10a, a RAM 10b, a ROM 10c corresponding to a storage unit 110, a communication unit 10d, an input unit 10e, and a display unit 10f, which are described with reference to FIG.
  • each step described with reference to the flowchart may be performed in chronological order in the order described herein, or the processing of each step may be performed in a different order than described above, as long as there is no contradiction. It may be executed by. Further, the processing of each step may be performed in series as described in the present specification, or the processing of a plurality of steps may be performed in parallel.
  • the computer system 1 has been described as performing various processes such as updating parameters or removing noise by quantum calculation based on image data.
  • the target of processing by the computer system 1 is not limited to image data.
  • the extracted pixel group has a size of 3 ⁇ 3 pixels.
  • the size of the extracted pixel group is not limited to this, and may be, for example, a size of 4 ⁇ 4 pixels or a size of 5 ⁇ 5 pixels.
  • the pixel group is extracted by the number of pixels of the input data and the adiabatic quantum calculation is executed.
  • the computer system may extract a plurality of pixel groups smaller or larger than the number of pixels of the input data, perform adiabatic quantum computation for each, and generate a composite image.
  • the classical computer 10 and the quantum computer 20 cooperate to realize the classical computer function.
  • the classical computer function may be realized by the classical computer 10 alone.
  • the classical computer (information processing apparatus) may include a control unit 220 that controls the quantum unit 230 included in the quantum computer 20 in addition to the storage unit 110, the processing unit 120, and the communication unit 130 described above.
  • control unit included in the classical computer 10 may acquire information (for example, quantum calculation parameters, etc.) for controlling the quantum unit 230 from the storage unit 110 and the processing unit 120. Further, the control unit may control the quantum unit 230 by generating a control signal for controlling the quantum unit 230 based on the quantum calculation parameters and transmitting the control signal to the quantum unit 230.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)
  • Image Processing (AREA)

Abstract

古典コンピュータと量子コンピュータのハイブリッドシステムにおいて、量子コンピュータにより実行可能な処理を拡張するコンピュータシステムを提供する。古典プログラムを実行可能な古典コンピュータと、量子プログラムを実行可能な量子コンピュータとを備えるコンピュータシステムであって、古典コンピュータは、抽出部、生成部及び合成部を備え、量子コンピュータは、制御部及び量子部を備え、抽出部は、要素値がそれぞれ対応付けられた複数の第1要素をマッピングした入力データから、第1要素の集合である第1要素群を複数抽出し、生成部は、複数の第1要素群のそれぞれについて、対応する第1要素群に含まれる第1要素に基づくパラメータを生成し、制御部は、量子部を制御することにより、複数の第1要素群のそれぞれについて、パラメータ及び対応する特徴データに基づく量子計算アルゴリズムを量子部に実行させ、合成部は、複数の第1要素群のそれぞれについての量子部による量子計算アルゴリズムの実行結果を合成する、コンピュータシステム。

Description

コンピュータシステム、情報処理方法、プログラム及び情報処理装置 関連出願の相互参照
 本出願は、2019年4月2日に出願された米国仮出願番号62/828,212に基づくもので、ここにその記載内容を援用する。
 本発明は、コンピュータシステム、情報処理方法、プログラム及び情報処理装置に関する。
 近年、物質の量子力学的性質を利用した計算を行う量子コンピュータの研究が行われている。量子ゲート方式の量子コンピュータは、解く問題に応じて量子ゲートを組み合わせて量子回路を構築でき、汎用性の高い量子コンピュータである。このため、量子ゲート方式の量子コンピュータの数十年後における実用化が期待されている。
 しかし、量子ゲート方式の量子コンピュータが用いる量子ビットは、外部からの干渉に非常に弱く、量子ビットの量子状態を長時間維持することが難しい。このため、量子ビットの数が多くなるほどノイズが含まれやすく、誤り訂正機能も実装できていない。よって、現在は誤り訂正機能がなく、量子ビット数が限られている量子ゲート方式の量子コンピュータであるNISQ(Noisy Intermediate-Scale Quantum computer)が開発されている(非特許文献1を参照)。
J. Preskill, "Quantum computing in the NISQ era and beyond," arXiv: 1801.00862, 2018.
 NISQを用いる場合には、量子コンピュータと古典コンピュータとを組み合わせたハイブリッドのシステムが利用されている。しかしながら、ハイブリッドのシステムにおける処理の多くは、古典コンピュータにより実施されており、量子コンピュータにより実行の処理は限定的である。このため、量子コンピュータにより実行可能な処理の範囲を広げる技術が希求されている。
 そこで、本発明は、古典コンピュータと量子コンピュータのハイブリッドシステムにおいて、量子コンピュータにより実行可能な処理を拡張するコンピュータシステム、情報処理方法、プログラム及び情報処理装置を提供することを目的とする。
 本発明の一態様に係るコンピュータシステムは、古典プログラムを実行可能な古典コンピュータと、量子プログラムを実行可能な量子コンピュータとを備えるコンピュータシステムであって、古典コンピュータは、生成部及び更新部を備え、量子コンピュータは、制御部及び量子部を備え、生成部は、要素値がそれぞれ対応付けられた複数の要素をマッピングした入力データに基づくパラメータを生成し、制御部は、量子部を制御することにより、パラメータ及び入力データの特徴データに基づく量子計算アルゴリズムを量子部に実行させ、更新部は、入力データと量子部による量子計算アルゴリズムの実行結果とを比較し、比較結果に基づき特徴データを更新する。
 本発明の他の態様に係るコンピュータシステムは、古典プログラムを実行可能な古典コンピュータと、量子プログラムを実行可能な量子コンピュータとを備えるコンピュータシステムであって、古典コンピュータは、抽出部、生成部及び合成部を備え、量子コンピュータは、制御部及び量子部を備え、抽出部は、要素値がそれぞれ対応付けられた複数の第1要素をマッピングした入力データから、第1要素の集合である第1要素群を複数抽出し、生成部は、複数の第1要素群のそれぞれについて、対応する第1要素群に含まれる第1要素に基づくパラメータを生成し、制御部は、量子部を制御することにより、複数の第1要素群のそれぞれについて、パラメータ及び対応する特徴データに基づく量子計算アルゴリズムを量子部に実行させ、合成部は、複数の第1要素群のそれぞれについての量子部による量子計算アルゴリズムの実行結果を合成する。
 本発明の他の態様に係る情報処理装置は、要素値がそれぞれ対応付けられた複数の要素をマッピングした入力データに基づくパラメータを生成する生成部と、量子コンピュータを制御することにより、パラメータ及び入力データの特徴データに基づく量子計算アルゴリズムを量子コンピュータに実行させる制御部と、入力データと量子コンピュータによる量子計算アルゴリズムの実行結果とに基づき特徴データを更新する更新部と、を備える。
 本発明の他の態様に係る情報処理装置は、要素値がそれぞれ対応付けられた複数の第1要素をマッピングした入力データから、第1要素の集合である第1要素群を複数抽出する抽出部と、複数の第1要素群のそれぞれについて、対応する第1要素群に含まれる第1要素に基づくパラメータを生成する生成部と、量子コンピュータを制御することにより、複数の第1要素群のそれぞれについて、パラメータ及び対応する特徴データに基づく量子計算アルゴリズムを量子コンピュータに実行させる制御部と、複数の第1要素群のそれぞれについての量子コンピュータによる量子計算アルゴリズムの実行結果を合成する合成部と、を備える。
 本発明によれば、古典コンピュータと量子コンピュータのハイブリッドシステムにおいて、量子コンピュータにより実行可能な処理を拡張するコンピュータシステム、情報処理方法、プログラム及び情報処理装置を提供することができる。
本発明の一実施形態に係るコンピュータシステムの構成例を示す図である。 本実施形態に係るコンピュータシステムによる処理の概略を示す図である。 画素のそれぞれに対応するスピンの結合を説明するための図である。 本実施形態に係る断熱量子計算に用いられる量子回路図の一部を示す図である。 コンピュータシステムが、学習済みのWij(θ)を用いて、入力データ360に付与されたノイズを除去する処理を説明するための図である。 コンピュータシステムが、入力データに基づくパラメータを用いて断熱量子計算を行い、その結果に応じて結合係数Wij(θ)を更新する流れの一例を示すフローチャートである。 コンピュータシステム1が、学習済みの結合係数Wij(θ)を用いて、入力データからノイズを除去する処理の流れを示すフローチャートである。 古典コンピュータによる量子シミュレータを用いて、図6及び図7に示した処理を100回実施した結果を示す図である。 第2実施形態に係るコンピュータシステムによる処理を説明するための図である。 コンピュータシステムがノイズを含む入力データに基づき、ノイズを含まない合成画像を生成するまでの処理の流れを示すフローチャートである。 4×4画素の画像データを用いて図10に示した処理を量子シミュレータによりシミュレーションした結果を説明するための図である。 、図9~図11を参照して説明した処理によりノイズを50回除去するシミュレーションを、量子シミュレータにより行った結果を示す図である。 量子シミュレータを用いて、28×28画素のサイズを有する1MNISTの数字「0」の画像データを復元して、合成画像を生成するシミュレーションを行った結果を示す図である。 「0」のMNIST画像及び「1」のMNIST画像を示す図である。 「0」のMNIST画像及び「1」のMNIST画像のそれぞれの画像を圧縮することで得られる2次元のデータをプロットした結果を示す図である。 本実施形態に係る古典コンピュータのハードウェア構成の一例を示す図である。
 添付図面を参照して、本発明の好適な実施形態について説明する。
 [第1実施形態]
 図1は、本発明の一実施形態に係るコンピュータシステム1の構成例を示す図である。本実施形態に係るコンピュータシステム1は、古典コンピュータ10及び量子コンピュータ20を備える。したがって、コンピュータシステム1は、古典コンピュータ機能及び量子コンピュータ機能を有するハイブリッドシステムとして構成されている。古典コンピュータ10及び量子コンピュータ20は、通信ネットワークNを介して通信可能に接続されている。通信ネットワークNは、有線又は無線の通信ネットワークであり、例えばインターネットであってよいが、LAN(Local Area Network)等であってもよい。
 古典コンピュータ10は、古典プログラムを実行して各種の情報処理を行う。古典プログラムは、古典コンピュータにより実行可能なアルゴリズムを表現したコードである。古典プログラムは、例えばC言語のようなプログラミング言語により記述されたプログラムである。古典コンピュータ10は、記憶部110、処理部120及び通信部130を備える。
 記憶部110は、各種の情報を記憶している。具体的には、記憶部110は、処理部120が各種の処理を実行するための古典プログラム、処理部120による処理の対象となる情報、処理部120による処理の結果及び量子コンピュータ20により生成されたデータなどの情報を記憶している。例えば、記憶部110は、処理部120が処理を行う画像データ、及び処理部120が生成したパラメータなどの情報を記憶している。記憶部110が記憶している各種の情報は、必要に応じて処理部120により参照される。
 処理部120は、各種の情報処理を行う機能を有する。また、処理部120は、処理の結果を記憶部110に記憶させることができる。処理部120は、取得部121、抽出部122、生成部124、更新部126及び合成部128を備える。
 取得部121は、各種の情報を取得する機能を有する。例えば、取得部121は、記憶部110から画像データを取得することができる。
 抽出部122は、各種のデータから情報を抽出する機能を有する。例えば、抽出部122は、画像データから、当該画像データの少なくとも一部を構成する画素(要素)の集合である画素群(要素群)を抽出することができる。
 生成部124は、各種のパラメータを生成することができる。本実施形態では、生成部124は、画像データあるいは画像データから抽出された情報に基づくパラメータを生成することができる。例えば、生成部124は、要素値がそれぞれ対応付けられた複数の要素をマッピングした入力データに基づくパラメータを生成することができる。本実施形態では、入力データは、画素値を2次元で格子状にマッピングした画像データである。生成部124は、画像データに基づき、後述する量子計算アルゴリズムに用いられる縦磁場係数及び結合係数などのパラメータを生成することができる。
 更新部126は、各種のパラメータを更新することができる。例えば、更新部126は、量子コンピュータ20による量子計算アルゴリズムの実行結果に基づき、結合係数などのパラメータを更新することができる。具体的には、更新部126は、入力データと量子計算アルゴリズムの実行結果とを比較し、比較結果に基づき入力データに対応する特徴データを更新することができる。
 合成部128は、各種の情報を合成することができる。具体的には、合成部128は、量子コンピュータ20による量子計算アルゴリズムの実行結果を合成することができる。より具体的には、合成部128は、量子計算アルゴリズムの実行結果である複数の画素群を合成することにより合成画像を生成することができる。
 通信部130は、各種の情報を送受信することができる。通信部130は、例えば、生成部124により生成されたパラメータ及び更新部126により更新されたパラメータなどを量子コンピュータ20に送信することができる。また、通信部130は、量子コンピュータ20による量子計算アルゴリズムの実行結果を受信することができる。また、通信部130は、受信した情報を記憶部110に記憶させることができる。
 量子コンピュータ20は、物質の量子力学的性質を利用して計算を行うコンピュータであり、量子ゲート方式の量子コンピュータであってよい。量子コンピュータ20は、任意のハードウェアで構成されてよい。
 量子コンピュータ20は、量子プログラムに基づく量子計算アルゴリズムを実行することができる。量子プログラムは、各種の量子アルゴリズムを表現したコードである。量子プログラムは、例えば、量子回路として表現されてよい。なお、量子プログラムは、古典プログラムと同様に、プログラミング言語で記述されたプログラムを含んでよい。
 量子コンピュータ20は、記憶部210、制御部220、量子部230及び通信部240を備える。ここで、記憶部210、制御部220及び通信部240は、古典コンピュータ機能を含んでよい。
 記憶部210は、各種の情報を記憶している。例えば、記憶部210は、量子部230が量子計算アルゴリズムを実行するために用いられる量子プログラムを記憶している。記憶部210が記憶している各種の情報は、必要に応じて制御部220により参照される。
 制御部220は、量子プログラムに基づき、量子部230を制御することができる。具体的には、制御部220は、生成部124により生成されたパラメータ及び入力データに対応する特徴データに基づく量子計算アルゴリズムを量子部230に実行させることができる。
 量子部230は、量子コンピュータ20の中核部分であり、制御部220による制御に基づき、量子計算アルゴリズムを実行することができる。本実施形態では、量子部230は、断熱量子計算アルゴリズムを実行する。断熱量子計算アルゴリズムは、最適化アルゴリズムの1つとして知られている。以下では、断熱量子計算アルゴリズムを単に「断熱量子計算」ともいう。
 断熱量子計算は、イジングモデルを用いて計算されるアニーリング計算手法の1つとして知られている(参考文献1を参照)。イジングモデルとは、強磁性体及び反強磁性体などの磁性体におけるスピンの動作をモデル化した模型である。スピンは、アップスピン(+1)又はダウンスピン(-1)の2種類の状態をとる。
(参考文献1)E. Farhi, J. Goldstone, S. Gutmann, and M. Sipser, ”Quantum Computation by Adiabatic Evolution,” quant-ph/0001106, 2000.
 イジングモデルの系全体のハミルトニアンは、2つのスピンsi、sj間の結合係数Jijと、スピンsiの内部にかかる局所的な縦磁場hziを用いて、次の式(1)により表される。
Figure JPOXMLDOC01-appb-M000001
 断熱量子計算では、ハミルトニアンの初期状態の設定のために、横磁場係数hxが追加される。また、スピンsiは、パウリ演算子σiに相当するため、行列で表される量子ゲートである位相反転演算ゲートZiにより表現され得る。さらに、時間tをtfにより規格化したパラメータs(=t/tf)を導入し、0≦s≦1とする。これにより、断熱量子計算におけるハミルトニアンは、次の式(2)により表される。
Figure JPOXMLDOC01-appb-M000002
 Jij、hzi及びhxは、量子回路におけるユニタリ回転ゲートの位相のパラメータである。このため、これらのパラメータは、Wij(θ)、hzi(θ)及びhx(θ)と表される。量子コンピュータではユニタリ変換を順に行うことで、シュレディンガー方程式の時間発展を表すことができる。量子ビットの状態ベクトルを|ψ>とすると、シュレディンガー方程式は、次の式(3)により表される。
Figure JPOXMLDOC01-appb-M000003
 状態ベクトルが時間に依存し、ハミルトニアンが時間に依存しないときのシュレディンガー方程式を解くと、次の式(4)及び(5)ように変形でき、ユニタリ変換U(t)が導出される。
Figure JPOXMLDOC01-appb-M000004
Figure JPOXMLDOC01-appb-M000005
 式(5)のHに式(2)を代入し、ユニタリ変換U(t)を繰り返し行うことにより、ハミルトニアンの最小値が求まり、最適なスピン状態を得ることができる。以上、量子部230が行う断熱量子計算の概略を説明した。
 通信部240は、各種の情報を送受信する機能を有する。通信部240は、例えば、量子部230による断熱量子計算アルゴリズムの実行結果を古典コンピュータ10に送信する。
 以上、本実施形態に係るコンピュータシステム1の機能の概略を説明した。図2~図5を参照して、コンピュータシステム1が行う処理をより具体的に説明する。
 図2は、本実施形態に係るコンピュータシステム1による処理の概略を示す図である。ここでは、コンピュータシステム1は、3×3画素(=9画素)のサイズの画像データを入力データ300とし、入力データ300を復元するためのパラメータを学習するものとして説明する。入力データ300は、9つの画素のそれぞれには0又は1の画素値が対応付けられている。ここで、0の画素値は白に対応し、1の画素値は黒に対応しているものとする。
 古典コンピュータ10は、入力データ300に基づく縦磁場係数hz(θ)を生成することができる。具体的には、古典コンピュータ10は、入力データ300に含まれる9つの画素のそれぞれに対応する画素値に応じた縦磁場係数hz(θ)を生成することができる。また、古典コンピュータ10は、結合係数Wij(θ)を生成することもできる。ここでは、古典コンピュータ10は、ランダムの値を結合係数Wij(θ)として生成するものとする。なお、縦磁場係数hz(θ)及び結合係数Wij(θ)は、古典コンピュータ10が備える生成部124により実施され得る。
 量子コンピュータ20は、古典コンピュータ10により生成された縦磁場係数hz(θ)及び結合係数Wij(θ)を用いて断熱量子計算アルゴリズムを実行する。すなわち、量子コンピュータ20は、式(1)から(5)を参照して説明した断熱量子計算を実行する。このとき、横磁場係数hx(θ)は、予め指定された所定の値であってよい。
 入力データ30が含む画素のそれぞれは、量子ビットに対応しているものとする。また、量子ビットのそれぞれは、イジングモデルのスピンに対応しているものする。
 図3は、画素のそれぞれに対応するスピンの結合を説明するための図である。本実施形態では、各画素について、上下左右に隣接する4つのスピン(画素)との結合のみを考慮する。例えば、図3の中心に示されている画素320は、隣り合う4つの画素322、324,326,328のみと結合しているものとする。このとき、中心の画素320とその上側の画素322との結合係数をWi-1,j(θ)、中心の画素320とその右側の画素324との結合係数をWi,j+1(θ)、中心の画素320とその下側の画素326との結合係数をWi+1,j(θ)、中心の画素320とその左側の画素328との結合係数をWi,j-1(θ)とする。これらの結合係数は、結合している2つの画素の関係を表している。また、ここでは、周期境界条件が適用されているものとする。
 図4は、本実施形態に係る断熱量子計算に用いられる量子回路図の一部を示す図である。図4に示すHは、アダマールゲートである。また、ユニタリーゲートU3は、ハミルトニアンのXiに対応している。また、ユニタリーゲートU1は、ハミルトニアンのZiに対応している。さらに、破線で囲まれた量子回路350は、ハミルトニアンのZiZjに対応している。
 図2に戻って、量子コンピュータ20は、断熱量子計算を行うと、3×3画素の画像データを出力データ310として古典コンピュータ10に送信する。古典コンピュータ10は、入力データ300と出力データ310とに基づいて結合係数Wij(θ)を更新する。具体的には、古典コンピュータ10は、次の式(6)及び(7)を用いて結合係数Wij(θ)を更新する。
 Wij(θ)=Wij(θ)+εEij・・・(6)
 Eij=(ZiZj)original-ZiZj・・・(7)
 ここで、Eijは、入力データ300に対応する2つのスピンの積sisjと、出力データ310に含まれる2つのスピンの積sisjとの差分である。また、εは学習率である。量子コンピュータ20による断熱量子計算と、古典コンピュータ10によるWij(θ)の更新が繰り返し行われることにより、Wij(θ)が学習(最適化)される。
 図5は、コンピュータシステム1が、学習済みのWij(θ)を用いて、入力データ360に付与されたノイズを除去する処理を説明するための図である。ここでは、入力データ360は、図2に示した入力データ300にノイズが付与されているデータである。
 古典コンピュータ10は、入力データ360に基づく縦結合係数hz(θ)と、図2を参照して説明した学習済みのWij(θ)と、を量子コンピュータ20に送信する。量子コンピュータ20は、hz(θ)及びWij(θ)を用いた断熱量子計算を行い、3×3画素の画像データを出力データ370として出力する。これにより、入力データ360に含まれているノイズが除去される。
 なお、ここでは、学習済みの結合係数Wij(θ)が用いられるものとして説明したが、これに限定されるものではない。結合係数Wij(θ)は、所定の条件に基づき設定されてもよい。例えば、入力データ300の特徴データは結合係数Wij(θ)とし、2つのスピンsi、sjが同じ向きの場合、つまり2つのマスが同じ色(白と白または黒と黒)の場合、結合係数をWij(θ)=-1とし、2つのスピンが違う向きの場合はWij(θ)=1として設定してもよい。
 次いで、図6及び図7を参照して、コンピュータシステム1による処理の流れを説明する。図6は、コンピュータシステム1が、入力データに基づくパラメータを用いて断熱量子計算を行い、その結果に応じて結合係数Wij(θ)を更新する流れの一例を示すフローチャートである。また、図7は、コンピュータシステム1が、学習済みの結合係数Wij(θ)を用いて、入力データからノイズを除去する処理の流れを示すフローチャートである。
 図6を参照して、コンピュータシステム1の処理を説明する。
 まず、古典コンピュータ10が備える取得部121は、記憶部110から入力データとなる画像データを取得する(ステップS101)。具体的には、取得部121は、3×3画素の画像データを入力データとして取得する。
 次いで、生成部124は、ステップS101において取得された入力データに基づき、縦磁場係数hz(θ)を生成する(ステップS103)。このとき、生成部124は、さらに、結合係数Wij(θ)をランダムな値として生成する。
 次いで、通信部130は、ステップS103において生成された縦磁場係数hz(θ)及び結合係数Wij(θ)を量子コンピュータ20に送信する(ステップS105)。量子コンピュータ20が備える通信部240は、量子コンピュータ20に送信された縦磁場係数hz(θ)及び結合係数Wij(θ)を受信し、制御部220に伝達する。
 制御部220は、ステップS105において送信された縦磁場係数hz(θ)及び結合係数Wij(θ)に基づき、断熱量子計算アルゴリズムを量子部330に実行させる(ステップS107)。このとき、量子部230は、量子ビットのそれぞれの値を観測し、観測結果を出力データとして通信部240に伝達する。観測された値のそれぞれは、3×3画素の画像データに含まれる画素に対応している。
 次いで、通信部240は、出力データを古典コンピュータ10の通信部130に送信する(ステップS109)。古典コンピュータ10の通信部130は、出力データを受信して、更新部126に伝達する。
 次いで、更新部126は、結合係数Wij(θ)を更新する(ステップS111)。具体的には、更新部126は、入力データと、ステップS109において送信された出力データとを比較し、比較結果に基づいて結合係数Wij(θ)を更新する。具体的には、更新部126は、上述の式(6)及び(7)を用いて結合係数Wij(θ)を更新する。
 通信部130は、ステップS111において更新された新たな結合係数Wij(θ)を、量子コンピュータ20が備える通信部240に送信する(ステップS113)。通信部240は、新たな結合係数Wij(θ)を受信し、制御部220に伝達する。
 制御部220は、縦磁場係数hz(θ)及び新たな結合係数Wij(θ)に基づき、量子部230に断熱量子計算アルゴリズムを実行させる(ステップS115)。断熱量子計算アルゴリズムの実行結果(すなわち、量子ビットの観測結果である出力データ)は、通信部240に伝達される。
 通信部240は、ステップS115において取得した断熱量子計算アルゴリズムの実行結果を出力データとして、出力データを古典コンピュータ10の通信部130に送信する(ステップS117)。通信部130は、出力データを受信し、更新部126に伝達する。
 次いで、更新部126は、ステップS111の処理と同様にして、結合係数Wij(θ)を更新する(ステップS119)。以下、ステップS113~ステップS119の処理が繰り返し実施されることにより、学習済みの結合係数Wij(θ)が生成される。学習済みの結合係数Wij(θ)は、記憶部110に記憶されてもよい。
 図7を参照して、コンピュータシステム1が、図6に示した処理により生成された学習済みの結合係数Wij(θ)を用いて、入力データからノイズを除去する処理を説明する。
 まず、古典コンピュータ10が備える取得部121は、記憶部110から入力データを取得する(ステップS201)。ここでは、入力データには、図5を参照して説明したノイズが含まれているものとする。
 次いで、生成部124は、ステップS201において取得された入力データに応じた縦結合係数hz(θ)を生成する(ステップS202)。したがって、ここで生成される縦結合係数hz(θ)は、ノイズの影響を受けている。
 次いで、通信部130は、ステップS202において生成された縦磁場係数hz(θ)と、学習済みの結合係数Wij(θ)とを量子コンピュータ20に送信する(ステップS203)。量子コンピュータ20の通信部240は、縦磁場係数hz(θ)及び学習済みの結合係数Wij(θ)を受信し、制御部220に伝達する。
 次いで、制御部220は、ステップS203において送信された縦磁場係数hz(θ)及び学習済みの結合係数Wij(θ)に基づき、量子部230に断熱計算アルゴリズムを実行させる(ステップS205)。断熱計算アルゴリズムの実行結果は、出力データとして通信部240に伝達される。ここで、出力データは、3×3画素の画像データである。
 次いで、通信部240は、出力データを古典コンピュータ10に送信する(ステップS207)。次いで、古典コンピュータ10の通信部130は、出力データを受信する(ステップS209)。これにより、古典コンピュータ10は、入力データからノイズが除去された出力データを取得できる。
 古典コンピュータによる量子シミュレータを用いて、図6及び図7に示した処理を100回実施した結果を図8に示す。図8に示すように、100回の処理のうち、入力データと同一の出力データを86回得ることができた。なお、14回の処理では、1画素のみ誤っている出力データが得られた。
 以上、本実施形態に係るコンピュータシステム1について説明した。本実施形態に係るコンピュータシステム1によれば、機械学習における自己符号化器と同様の処理を実施することができる。具体的には、コンピュータシステム1は、画像データの復元あるいは画像データに含まれるノイズを除去することができる。このため、本実施形態に係るコンピュータシステム1は、いわば量子自己符号化器として機能している。本実施形態によれば、コンピュータシステム1は、量子コンピュータ20を量子自己符号化器の機能の一部を担わせ、量子コンピュータ20が実行可能な処理を拡張することができる。
 [第2実施形態]
 第2実施形態では第1実施形態と共通の事柄についての記述を省略し、異なる点についてのみ説明する。
 第1実施形態では、入力データが3×3画素のサイズの画像データであるものとして説明した。第2実施形態では、第1実施形態に係る入力データより大きなサイズを有する画像データを入力データとして扱う。
 図9は、第2実施形態に係るコンピュータシステムによる処理を説明するための図である。古典コンピュータ10は、100×100(=10000)の画素(第1画素)をマッピングした画像データを入力データ400として記憶しているものとする。入力データ400は、「0」の文字を表す画素と、ノイズの画素402と、残りの白い画素とを含む。
 古典コンピュータ10は、入力データ400から、入力データ400を構成する10000画素のそれぞれに対応する画素群(第1画素群)を抽出する。ここで、画素群は、3×3画素(=9画素)のサイズの画像データである。また、画素群に含まれる中心の画素は、入力データ400に含まれる対応する画素となっている。また、画素群に含まれる残りの8つの画素は、入力データ400に含まれる対応する画素の周りの8つの画素である。例えば、一番上に示されている画素群406は、入力データ400の左端の一番上の画素404に対応している。画素群406の中心の画素407は、画素404に対応している。なお、画素群の抽出は、古典コンピュータ10が備える抽出部122により実施されてもよい。
 量子コンピュータ20は、抽出された10000個の画素群のそれぞれに基づく断熱量子計算を行う。ここで、量子コンピュータ20は、図6を参照して生成された学習済みの結合係数Wij(θ)を用いて断熱量子計算を行ってもよいし、ノイズのない画像データに基づき設定された結合係数Wij(θ)を用いて断熱量子計算を行ってもよい。このため、出力データは、対応する画素群406からノイズを除去したデータを復元したデータとなる。
 また、量子コンピュータ20は、断熱量子計算の実行結果として、3×3(=9)の画素(第2画素)の画像データ(第2画素群)を出力データとして10000個出力する。例えば、一番上に示されている出力データ408は、画素群406に基づく断熱量子計算の実行結果である。
 上述のように、断熱量子計算は、画素群に含まれる画素が上下左右に隣接している画素と結合しているものとして実行される。画素群に含まれる9個の画素のうち、中心の画素のみが入力データに含まれる画素と同じ画素と結合する。このため、出力データに含まれる画素のうち、中心の画素がノイズを含まない画像データを最もよく復元すると考えられる。なお、中心の画素は、他の8つの画素よりも隣接する画素を多く有している。
 古典コンピュータ10は、量子コンピュータ20により出力された10000個の出力データを合成することにより、ノイズが除去された画像データを生成する。具体的には、古典コンピュータ10は、10000個の出力データのそれぞれに含まれる中心の画素を二次元でマッピングすることにより、合成画像410を生成する。したがって、合成画像410に含まれる画素のそれぞれは、対応する出力データに含まれる中心の画素となっている。例えば、合成画像410に含まれる左上の一番上の画素412は、出力データ408の中心の画素409に対応している。ここで、出力データを合成することにより合成画像410を生成する処理は、古典コンピュータ10が備える合成部128により実施される。
 図10に示すフローチャートを参照しながら、コンピュータシステム1がノイズを含む入力データに基づき、ノイズを含まない合成画像を生成するまでの処理の流れをより詳細に説明する。
 まず、古典コンピュータ10の取得部121は、入力データを取得する(ステップS301)。入力データは、3×3画素のサイズよりも大きいサイズを有するものとする。具体的には、入力データのサイズは、4×4画素(=16画素)のサイズである。また、入力データには、ノイズが含まれているものとする。
 次いで、抽出部122は、ステップS301において取得された入力データから複数の画素群を取得する(ステップS303)。具体的には、抽出部122は、入力データから、入力データに含まれる画素数に応じた数の画素群を抽出する。より具体的には、抽出部122は、16画素のそれぞれに対応する16個の画素群を抽出する。また、抽出される画素群のサイズは、3×3画素のサイズである。
 次いで、生成部124は、ステップS303において抽出された16個の画素群のそれぞれについて、縦磁場係数hz(θ)を生成する(ステップS305)。
 次いで、通信部130は、ステップS303において抽出された16個の画素群のそれぞれに対応する、縦磁場係数hz(θ)及び学習済みの結合係数Wij(θ)を量子コンピュータ20に送信する(ステップS307)。量子コンピュータ20のsは、縦磁場係数hz(θ)及び学習済みの結合係数Wij(θ)を受信し、制御部220に伝達する。ここで、学習済みの結合係数Wij(θ)は、ノイズを含まない入力データから抽出される画素群を復元するために予め記憶部110に記憶されているものとする。
 次いで、制御部220は、16個の画素群のそれぞれについて、縦磁場係数hz(θ)及び学習済みの結合係数Wij(θ)に基づき、量子部230に断熱量子計算アルゴリズムを実行させる(ステップS309)。これにより、量子部230より、16個の画素群のそれぞれについて、断熱量子計算の実行結果が出力データとして出力される。ここで、出力データは、3×3画素のサイズの画素群である。
 次いで、通信部240は、16個の画素群のそれぞれに対応する出力データを古典コンピュータ10に送信する(ステップS311)。古典コンピュータ10の通信部130は、16個の画素群のそれぞれに対応する出力データを受信し、合成部128に伝達する。
 合成部128は、16個の画素群のそれぞれに対応する出力データを合成することにより合成画像を生成する(ステップS313)。具体的には、合成部128は、出力データに含まれる中心の画素を2次元で格子状にマッピングすることにより、合成画像を生成する。これにより、入力データからノイズが除去された合成画像が得られる。
 4×4画素の画像データを用いて図10に示した処理を量子シミュレータによりシミュレーションした。図11を参照して、シミュレーション結果について説明する。図11には、左から順番に、ノイズを含まない画像データ450と、ノイズが付与された入力データ460と、復元された合成画像470とが示されている。
 画像データ450は、4×4画素のサイズを有する。画像データ450に含まれる画素のうち、左から2列目の画素454(斜線の付された画素)はすべて黒(画素値1)であり、残りの画素は白(画素値0)である。入力データ460は、画像データ450に30%のノイズを付与して得られたデータである。具体的には、入力データ460には、4つのノイズの画素461,462,463,464(点の付された画素)が付与されている。これらの画素461,462,463,464は黒である。図10を参照して説明した処理により入力データ460からノイズを除去すると、合成画像470が得られる。
 図12は、入力データ460について、図9~図11を参照して説明した処理によりノイズを50回除去するシミュレーションを、量子シミュレータにより行った結果を示す図である。
 図12に示すように、50回の処理のうち、27回の処理では入力データから完全にノイズを除去することができた。ノイズ率が30%の場合、54%の割合で入力データからノイズを完全に除去することができた。また、22回の処理では、4画素のノイズのうちの3画素のノイズを除去することができた。本実施形態によれば、1画素のノイズを許容すれば、98%の割合でノイズを除去できたといえる。
 続いて、量子シミュレータを用いて、28×28画素(=784画素)のサイズを有する1MNISTの数字「0」の画像データを復元して、合成画像を生成するシミュレーションを行った。なお、ここで合成画像を生成する処理は、図9~図11を参照して説明した処理と実質的に同一である。
 図13には、左から順番に、ノイズを含まない画像データ500と、ノイズを含む入力データ510と、入力データ510に基づく合成画像520とが示されている。図13に示すように、合成画像520は、ノイズを含まない画像データ500と全く同じ画像になっていることがわかる。このように、画像データ500に含まれる画素のすべてを量子ビットに対応させると784個の量子ビットが必要な場合であっても、本実施形態に係るコンピュータシステムによれば、9個の量子ビットにより画像データを復元することが可能になる。
 また、上述の4×4画素の入力データ及び28×28画素の入力データからノイズを除去するシミュレーションには、それぞれ、約8.4秒及び約395秒の時間がかかった。一方、仮に、4×4画素のサイズの量子ビット及び28×28画素のサイズの量子ビットが用意できた場合に、上述の量子自己符号化器の処理を実行すると、それぞれの処理には約54秒及び約10の23乗年の時間がかかると推測される。このため、本実施形態に係る処理を実行することにより、処理時間を大幅に短縮することができると推測される。
 以上、第2実施形態に係るコンピュータシステムについて説明した。本実施形態に係るコンピュータシステムによれば、利用できる量子ビットの数よりも大きなサイズ(例えば、上述の16画素あるいは784画素)のデータを処理することができる。本実施形態に係るコンピュータシステムは、機械学習における畳み込み自己符号化器と同様の機能を有する。具体的には、上述した3×3画素の画素群をフィルタとみたて、このフィルタを用いて入力データの全ての画素について量子計算を行い、その計算結果を合成することにより合成画像を得るものである。このため、本実施形態に係るコンピュータシステムは、いわば畳み込み量子自己符号化器として機能する。この結果、コンピュータシステム1は、量子コンピュータ20を畳み込み量子自己符号化器の機能の一部を担わせ、量子コンピュータ20が実行可能な処理を拡張することができる。
 また、本実施形態に係るコンピュータシステムによれば、入力データを、より低次元のデータに圧縮することができる。上述のように、入力データに含まれる画素のそれぞれについて、上下左右に隣接する画素との結合係数Wij(θ)が学習されている。この学習済みの結合係数Wij(θ)のうち、右側の画素との結合係数Wi,j+1(θ)と、下側の画素とのWi+1,j(θ)と、を取り出すことにより、入力データを2次元のデータに圧縮することができる。なお、取り出される結合係数の組み合わせは、これに限定されるものではない。例えば、上側の画素との結合係数と下側の画素との結合係数が取り出されてもよいし、他の結合係数の組み合わせが取り出されてもよい。
 本実施形態では、「0」の画像データと「1」の画像データの2種類の画像データについて、それぞれ30回ずつ2次元のデータに圧縮した。なお、いずれの画像データもMNIST画像である。図14には、圧縮される前の「0」の画像データ550及び「1」の画像データ560を示している。
 図15は、それぞれの画像について入力データを圧縮することで得られる2次元のデータをプロットした結果を示す図である。横軸には、右側の画素との結合係数Wi,j+1(θ)、縦軸には、下側の画素とのWi+1,j(θ)を示している。塗りつぶしの丸は、「0」のMNIST画像に対応するプロットであり、白抜きの丸は、「1」のMNIST画像に対応するプロットである。図15に示すように、画像データを圧縮して得られた2次元のデータにより、2種類の画像データがよく分類されていることがわかる。
 [ハードウェア構成]
 図16は、本実施形態に係る古典コンピュータ10のハードウェア構成の一例を示す図である。古典コンピュータ10は、演算部に相当するCPU(Central Processing Unit)10aと、記憶部110に相当するRAM(Random Access Memory)10bと、記憶部110に相当するROM(Read only Memory)10cと、通信部10dと、入力部10eと、表示部10fと、を有する。これらの各構成は、バスを介して相互にデータ送受信可能に接続される。なお、本例では古典コンピュータ10が一台のコンピュータで構成される場合について説明するが、古典コンピュータ10は、複数のコンピュータが組み合わされて実現されてもよい。また、図16で示す構成は一例であり、古典コンピュータ10はこれら以外の構成を有してもよいし、これらの構成のうち一部を有さなくてもよい。ここで、演算部は、処理部120を含む。
 CPU10aは、RAM10b又はROM10cに記憶されたプログラムの実行に関する制御やデータの演算、加工を行う制御部である。CPU10aは、入力部10eや通信部10dから種々のデータを受け取り、データの演算結果を表示部10fに表示したり、RAM10bに格納したりする。
 RAM10bは、記憶部のうちデータの書き換えが可能なものであり、例えば半導体記憶素子で構成されてよい。RAM10bは、CPU10aが実行するプログラム及び画像データといったデータを記憶してよい。なお、これらは例示であって、RAM10bには、これら以外のデータが記憶されていてもよいし、これらの一部が記憶されていなくてもよい。
 ROM10cは、記憶部のうちデータの読み出しが可能なものであり、例えば半導体記憶素子で構成されてよい。ROM10cは、例えば書き換えが行われないデータを記憶してよい。
 通信部10dは、古典コンピュータ10を他の機器に接続するインターフェースである。通信部10dは、インターネット等の通信ネットワークに接続されてよい。
 入力部10eは、ユーザからデータの入力を受け付けるものであり、例えば、キーボード及びタッチパネルを含んでよい。
 表示部10fは、CPU10aによる演算結果を視覚的に表示するものであり、例えば、LCD(Liquid Crystal Display)により構成されてよい。表示部10fは、複数の物品の在庫数の推移や倉庫の容量の推移を表示してよい。
 プログラムは、RAM10bやROM10c等のコンピュータによって読み取り可能な記憶媒体に記憶されて提供されてもよいし、通信部10dにより接続される通信ネットワークを介して提供されてもよい。古典コンピュータ10では、CPU10aがプログラムを実行することにより、図1を用いて説明した様々な動作が実現される。なお、これらの物理的な構成は例示であって、必ずしも独立した構成でなくてもよい。例えば、古典コンピュータ10は、CPU10aとRAM10bやROM10cが一体化したLSI(Large-Scale Integration)を備えていてもよい。
 また、量子コンピュータ20は、図16を参照して説明したCPU10aと、RAM10bと、記憶部110に相当するROM10cと、通信部10dと、入力部10eと、表示部10fと、を含んでよい。
 [補足]
 以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素及びその配置、材料、条件、形状、サイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
 フローチャートを参照して説明した各ステップの処理は、本明細書で説明する順序に沿って時系列に実行されてもよいし、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。また、各ステップの処理は本明細書で説明したように直列で実施されてもよいし、複数のステップの処理が並列に実行されてもよい。
 上記実施形態では、コンピュータシステム1は、画像データに基づいて、パラメータの更新あるいは量子計算によるノイズの除去などの各種の処理を行うものとして説明した。コンピュータシステム1による処理の対象は、画像データに限定されるものではない。
 また、上記実施形態における図9等を参照して説明した処理では、抽出される画素群が3×3画素のサイズを有するものとして説明した。抽出される画素群のサイズは、これに限定されず、例えば4×4画素のサイズあるいは5×5画素のサイズなどであってよい。
 また、上記第2実施形態では、入力データの画素数だけ画素群を抽出して、断熱量子計算を実行するものとして説明した。これに限らず、コンピュータシステムは、入力データの画素数よりも小さい又は大きい数の画素群を複数抽出して、それぞれについて断熱量子計算を行い、合成画像を生成してもよい。
 また、上記実施形態では、古典コンピュータ10及び量子コンピュータ20が協働して古典コンピュータ機能を実現するものとして説明した。これに限らず、古典コンピュータ機能は、古典コンピュータ10単体により実現されてよい。具体的には、古典コンピュータ(情報処理装置)は、上述した記憶部110、処理部120及び通信部130に加えて、量子コンピュータ20が備える量子部230を制御する制御部220を備えてよい。
 この場合には、古典コンピュータ10が備える制御部は、記憶部110及び処理部120から量子部230を制御するための情報(例えば、量子計算パラメータ等)を取得してもよい。また、制御部は、量子計算パラメータに基づき量子部230を制御するための制御信号を生成し、当該制御信号が量子部230に送信することにより量子部230を制御してもよい。
 1…コンピュータシステム、10…古典コンピュータ、20…量子コンピュータ、30…入力データ、120…処理部、122…抽出部、124…生成部、126…更新部、128…合成部、220…制御部、230…量子部、240…通信部、300…入力データ、310…出力データ、320,322,324,326,328…画素、330…量子部、350…量子回路、360…入力データ、370…出力データ、400…入力データ、402,404,407,409,412…画素、406…画素群、408…出力データ、410…合成画像

Claims (11)

  1.  古典プログラムを実行可能な古典コンピュータと、量子プログラムを実行可能な量子コンピュータとを備えるコンピュータシステムであって、
     前記古典コンピュータは、生成部及び更新部を備え、
     前記量子コンピュータは、制御部及び量子部を備え、
     前記生成部は、要素値がそれぞれ対応付けられた複数の要素をマッピングした入力データに基づくパラメータを生成し、
     前記制御部は、前記量子部を制御することにより、前記パラメータ及び前記入力データの特徴データに基づく量子計算アルゴリズムを前記量子部に実行させ、
     前記更新部は、前記入力データと前記量子部による前記量子計算アルゴリズムの実行結果とに基づき前記特徴データを更新する、
    コンピュータシステム。
  2.  前記入力データは、前記複数の要素を2次元で格子状にマッピングしたデータであり、
     前記特徴データは、前記入力データにおける互いに隣接する要素に対応する要素値の関係を表す、
    請求項1に記載のコンピュータシステム。
  3.  古典プログラムを実行可能な古典コンピュータと、量子プログラムを実行可能な量子コンピュータとを備えるコンピュータシステムのプロセッサによる情報処理方法であって、
     前記プロセッサが、
     要素値がそれぞれ対応付けられた複数の要素をマッピングした入力データに基づくパラメータを生成することと、
     前記量子コンピュータが備える量子部を制御することにより、前記パラメータ及び前記入力データの特徴データに基づく量子計算アルゴリズムを前記量子部に実行させることと、
     前記入力データと前記量子部による前記量子計算アルゴリズムの実行結果とを比較し、比較結果に基づき前記特徴データを更新することと、
    を含む情報処理方法。
  4.  古典プログラムを実行可能な古典コンピュータと、量子プログラムを実行可能な量子コンピュータとを備えるコンピュータシステムにより実行されるプログラムであって、
     前記コンピュータシステムに、
     要素値がそれぞれ対応付けられた複数の要素をマッピングした入力データに基づくパラメータを生成する機能と、
     前記量子コンピュータが備える量子部を制御することにより、前記パラメータ及び前記入力データの特徴データに基づく量子計算アルゴリズムを前記量子部に実行させる機能と、
     前記入力データと前記量子部による前記量子計算アルゴリズムの実行結果とを比較し、比較結果に基づき前記特徴データを更新する機能と、
    を実現させるためのプログラム。
  5.  古典プログラムを実行可能な古典コンピュータと、量子プログラムを実行可能な量子コンピュータとを備えるコンピュータシステムであって、
     前記古典コンピュータは、抽出部、生成部及び合成部を備え、
     前記量子コンピュータは、制御部及び量子部を備え、
     前記抽出部は、要素値がそれぞれ対応付けられた複数の第1要素をマッピングした入力データから、前記第1要素の集合である第1要素群を複数抽出し、
     前記生成部は、前記複数の第1要素群のそれぞれについて、対応する第1要素群に含まれる第1要素に基づくパラメータを生成し、
     前記制御部は、前記量子部を制御することにより、前記複数の第1要素群のそれぞれについて、前記パラメータ及び対応する特徴データに基づく量子計算アルゴリズムを前記量子部に実行させ、
     前記合成部は、前記複数の第1要素群のそれぞれについての前記量子部による前記量子計算アルゴリズムの実行結果を合成する、
    コンピュータシステム。
  6.  前記抽出部は、前記入力データに含まれる複数の第1要素のそれぞれに基づき、対応する第1要素を含む第1要素群を抽出し、
     前記量子計算アルゴリズムの実行結果は、前記対応する第1要素に応じた第2要素を含む第2要素群であり、
     前記合成部は、前記第2要素群のそれぞれに含まれる第2要素をマッピングする、
    請求項5に記載のコンピュータシステム。
  7.  前記第2要素は、前記第2要素群に含まれる他の要素よりも、隣接する要素を多く有する、
    請求項6に記載のコンピュータシステム。
  8.  古典プログラムを実行可能な古典コンピュータと、量子プログラムを実行可能な量子コンピュータとを備えるコンピュータシステムのプロセッサによる情報処理方法であって、
     前記プロセッサが、
     要素値がそれぞれ対応付けられた複数の第1要素をマッピングした入力データから、前記第1要素の集合である第1要素群を複数抽出することと、
     前記複数の第1要素群のそれぞれについて、対応する第1要素群に含まれる第1要素に基づくパラメータを生成することと、
     前記量子コンピュータが備える量子部を制御することにより、前記複数の第1要素群のそれぞれについて、前記パラメータ及び対応する特徴データに基づく量子計算アルゴリズムを前記量子部に実行させることと、
     前記複数の第1要素群のそれぞれについての前記量子部による前記量子計算アルゴリズムの実行結果を合成することと、
    を含む情報処理方法。
  9.  古典プログラムを実行可能な古典コンピュータと、量子プログラムを実行可能な量子コンピュータとを備えるコンピュータシステムにより実行されるプログラムであって、
     前記コンピュータシステムに、
     要素値がそれぞれ対応付けられた複数の第1要素をマッピングした入力データから、前記第1要素の集合である第1要素群を複数抽出する機能と、
     前記複数の第1要素群のそれぞれについて、対応する第1要素群に含まれる第1要素に基づくパラメータを生成する機能と、
     前記量子コンピュータが備える量子部を制御することにより、前記複数の第1要素群のそれぞれについて、前記パラメータ及び対応する特徴データに基づく量子計算アルゴリズムを前記量子部に実行させる機能と、
     前記複数の第1要素群のそれぞれについての前記量子部による前記量子計算アルゴリズムの実行結果を合成する機能と、
    を実現させるためのプログラム。
  10.  要素値がそれぞれ対応付けられた複数の要素をマッピングした入力データに基づくパラメータを生成する生成部と、
     量子コンピュータを制御することにより、前記パラメータ及び前記入力データの特徴データに基づく量子計算アルゴリズムを前記量子コンピュータに実行させる制御部と、
     前記入力データと前記量子コンピュータによる前記量子計算アルゴリズムの実行結果とに基づき前記特徴データを更新する更新部と、
    を備える、情報処理装置。
  11.  要素値がそれぞれ対応付けられた複数の第1要素をマッピングした入力データから、前記第1要素の集合である第1要素群を複数抽出する抽出部と、
     前記複数の第1要素群のそれぞれについて、対応する第1要素群に含まれる第1要素に基づくパラメータを生成する生成部と、
     量子コンピュータを制御することにより、前記複数の第1要素群のそれぞれについて、前記パラメータ及び対応する特徴データに基づく量子計算アルゴリズムを前記量子コンピュータに実行させる制御部と、
     前記複数の第1要素群のそれぞれについての前記量子コンピュータによる前記量子計算アルゴリズムの実行結果を合成する合成部と、
     を備える、情報処理装置。
PCT/JP2020/015076 2019-04-02 2020-04-01 コンピュータシステム、情報処理方法、プログラム及び情報処理装置 WO2020204093A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/600,883 US20220180239A1 (en) 2019-04-02 2020-04-01 Computer system, information processing method, program, and information processing device
JP2021512186A JP7441444B2 (ja) 2019-04-02 2020-04-01 コンピュータシステム、情報処理方法、プログラム及び情報処理装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962828212P 2019-04-02 2019-04-02
US62/828,212 2019-04-02

Publications (1)

Publication Number Publication Date
WO2020204093A1 true WO2020204093A1 (ja) 2020-10-08

Family

ID=72667572

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/015076 WO2020204093A1 (ja) 2019-04-02 2020-04-01 コンピュータシステム、情報処理方法、プログラム及び情報処理装置

Country Status (3)

Country Link
US (1) US20220180239A1 (ja)
JP (1) JP7441444B2 (ja)
WO (1) WO2020204093A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11995485B2 (en) * 2022-05-12 2024-05-28 Red Hat, Inc. Automatically switching between quantum services and classical services based on detected events

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KIKAWADA, YUTA ET AL.,: "Development of quantum autoencoder", PROCEEDINGS OF THE 32ND ANNUAL CONFERENCE OF THE JAPANESE SOCIETY FOR ARTIFICIAL INTELLIGENCE DVD [DVD-ROM], THE 32NDANNUAL CONFERENCE OF THE JAPANESE SOCIETY FOR ARTIFICIAL INTELLIGENCE, 2018, 5 June 2018 (2018-06-05), pages 1 - 3 *

Also Published As

Publication number Publication date
JP7441444B2 (ja) 2024-03-01
JPWO2020204093A1 (ja) 2020-10-08
US20220180239A1 (en) 2022-06-09

Similar Documents

Publication Publication Date Title
Amaro et al. Filtering variational quantum algorithms for combinatorial optimization
US11593586B2 (en) Object recognition with reduced neural network weight precision
Ulyanov et al. Texture networks: Feed-forward synthesis of textures and stylized images
Abd-El-Wahed et al. Integrating particle swarm optimization with genetic algorithms for solving nonlinear optimization problems
Chen et al. Variational quantum reinforcement learning via evolutionary optimization
AU2017437537A1 (en) Training tree-based machine-learning modeling algorithms for predicting outputs and generating explanatory data
Li et al. Exploring compositional high order pattern potentials for structured output learning
Shen et al. High-order differentiable autoencoder for nonlinear model reduction
Giddings Modulated Hawking radiation and a nonviolent channel for information release
WO2016051640A1 (ja) 情報処理装置、情報処理方法及びプログラム
US10339442B2 (en) Corrected mean-covariance RBMs and general high-order semi-RBMs for large-scale collaborative filtering and prediction
US20210089953A1 (en) Quantum bit prediction
CN114764549B (zh) 基于矩阵乘积态的量子线路模拟计算方法、装置
WO2020204093A1 (ja) コンピュータシステム、情報処理方法、プログラム及び情報処理装置
CN114611720A (zh) 联邦学习模型训练方法、电子设备及存储介质
CN105913063A (zh) 一种图像数据集的稀疏表示的加速方法及装置
Fiori Nonlinear damped oscillators on Riemannian manifolds: Numerical simulation
Hwang et al. Option compatible reward inverse reinforcement learning
Yang et al. Efficient verification of control systems with neural network controllers
Hacker et al. GPU simulator of multilayer neural network based on multi-valued neurons
Delbem et al. Design of associative memories using cellular neural networks
Balcerzak et al. Spinor wave function of the Universe in non-minimally coupled varying constants cosmologies
Amaya et al. Neurorobotic reinforcement learning for domains with parametrical uncertainty
Yetiş et al. Variational quantum circuits for convolution and window-based image processing applications
Tagawa et al. Adaptive and embedded deformation model: An approach to haptic interaction with complex inhomogeneous elastic objects

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20782226

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021512186

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20782226

Country of ref document: EP

Kind code of ref document: A1