Title: A Modified Meta-controlled Boltzmann Machine
1A Modified Meta-controlled Boltzmann Machine
- Tran Duc Minh, Le Hai Khoi (), Junzo Watada
(), Teruyuki Watanabe () - () Institute Of Information Technology-Viet Nam
Academy of Science Technology - () Graduate School of Information, Production
and System, Waseda University, Japan - () Osaka Institute of Technology
03/2004
2CONTENT
- Introduction
- The portfolio selection problem
- Inner behaviors of the Meta-controlled Boltzmann
machine - A Modified Meta-controlled Boltzmann machine
- Conclusion
3Introduction
- H. Markowitz proposed a method to allocate an
amount of funds to plural stocks for investment - Model of Meta-controlled Boltzmann Machine
- The ability of Meta-controlled Boltzmann Machine
in solving the quadratic programming problem
4The portfolio selection problem
- Maximize
- Minimize
- Subject to and
-
- with mi ? 0, 1, i 1, .., n
- where ?ij denotes a covariance between stocks i
and j, ?i is an expected return rate of stock i,
xi is investing rate to stock i, n denotes the
total number of stocks and S denotes the number
of stocks selected, and finally, mi denotes a
selection variable of investing stocks.
5The portfolio selection problem
- Convert the objective function into the energy
functions of the two components that are
Meta-controlling layer (Hopfield Network) and the
Lower-layer (Boltzmann Machine) as described
below - Meta-Controlling layer
- Lower Layer
- where Ku, Kl are weights of the expected return
rate for each layer and si is the output value of
the ith unit of the Meta-Controlling layer.
6Algorithm of the Meta-controlled Boltzmann
machine
- Step 1. Set each parameter to its initial value.
- Step 2. Input the values of Ku and Kl.
- Step 3. Execute the Meta-controlling layer.
- Step 4. If the output value of a unit in the
Meta-controlling layer is 1, add some
amount of value to the corresponding unit in the
lower layer. Execute the lower layer. - Step 5. After executing the lower layer the
constant number of times, decreases the
temperature. - Step 6. If the output value is sufficiently
large, add a certain amount of value to the
corresponding unit in the Meta-controlling layer. - Step 7. Iterate from Step 3 to Step 6 until the
temperature reaches the restructuring
temperature. - Step 8. Restructure the lower layer using the
selected units of the Meta-controlling
layer. - Step 9. Execute the lower layer until reaching at
the termination.
7Inner behaviors of the Meta-controlled Boltzmann
machine
- Some times, the Hopfield layer may converge to a
local minimum but the disturb values make it to
get over - The changes of Meta layers energy function are
very small, while the lower layers energy
functions is quite large - The number of cycles to execute the Meta layer is
much smaller than the cycles for the lower layer - Similar to the simulated annealing that we will
try to go downhill most of the time instead of
always going downhill - The time to converge is much shorter than a
conventional Boltzmann machine - All the neurons that are encouraged will be
selected before the system goes to the final
computation.
8Chart of behaviors of Meta-controlled Boltzmann
Machine
Disturb back value 80
9Chart of behaviors of Meta-controlled Boltzmann
Machine
Disturb back value 1
10Comparison of computing time between a
Conventional Boltzmann machine and a
Meta-controlled Boltzmann Machine (1286 units)
11Some hints on accelerating the Meta-controlled
Boltzmann machine
- Trying to use only a layer of Boltzmann Machine,
modify the algorithm of original Boltzmann
Machine by removing the discouraged units before
goes into final computation. - Modify the original Boltzmann Machine by
replacing deterministic neurons by stochastic
neurons since the disturb from the lower layer to
the upper layer may not be worth.
12A Modified Meta-controlled Boltzmann machine
- Step 1. Set each parameter to its initial value.
- Step 2. Input the values of Ku , Kl.
- Step 3. Execute the Meta-controlling layer.
- Step 4. If the output value of a unit in the
Meta-controlling layer is 1, add some
amount of value to the corresponding unit in the
lower layer. Execute the lower layer. - Step 5. After executing the lower layer the
constant number of times, decreases the
temperature. - Step 6. Iterate Step 4, 5 until the temperature
reaches the restructuring temperature. - Step 7. Restructure the lower layer using the
selected units of the Meta- controlling
layer. - Step 8. Execute the lower layer until reaching at
the termination. - Algorithm of the Modified Meta-controlled
Boltzmann machine
13(No Transcript)
14(No Transcript)
15Comparing performance
16CONCLUSION
- The trend of accelerating algorithms is focused
mainly on heuristic modification and numeric
optimization technique, i.e. toward the faster
convergence of algorithms whereas keeping the
correctness for them. - The Meta-controlled Boltzmann Machine can be used
to solve quadratic programming problems. - Future works
- Try the model with other quadratic programming
problem. - Evaluate the modified Meta-controlled Boltzmann
Machine.
17THANK YOU!