SAGRAD: A Program for Neural Network Training with Simulated Annealing and the Conjugate Gradient Method
SAGRAD (Simulated Annealing GRADient), a Fortran 77 program for computing neural networks for classification using batch learning, is discussed. Neural network training in SAGRAD is based on a combination of simulated annealing and M{\o}ller's scaled conjugate gradient algorithm, the latter a variation of the traditional conjugate gradient method, better suited for the nonquadratic nature of neural networks. Different aspects of the implementation of the training process in SAGRAD are discussed, such as the efficient computation of gradients and multiplication of vectors by Hessian matrices that are required by M{\o}ller's algorithm; the (re)initialization of weights with simulated annealing required to (re)start M{\o}ller's algorithm the first time and each time thereafter that it shows insufficient progress in reaching a possibly local minimum; and the use of simulated annealing when M{\o}ller's algorithm, after possibly making considerable progress, becomes stuck at a local minimum or flat area of weight space. Outlines of the scaled conjugate gradient algorithm, the simulated annealing procedure and the training process used in SAGRAD are presented together with results from running SAGRAD on two examples of training data.
Code (0)
등록된 구현이 없습니다.
Similar Papers 제목 키워드 기반
Simulated Annealing-based Candidate Optimization for Batch Acquisition Functions
Bayesian Optimization with multi-objective acquisition functions such as q-Expected Hypervolume Improvement (qEHVI) requires efficient candidate optimization to maximize acquisition function values. Traditional approache…
Optimization of Worker Scheduling at Logistics Depots Using Genetic Algorithms and Simulated Annealing
This paper addresses the optimization of scheduling for workers at a logistics depot using a combination of genetic algorithm and simulated annealing algorithm. The efficient scheduling of permanent and temporary workers…
SchedulingSimulated annealing based heuristic for multiple agile satellites scheduling under cloud coverage uncertainty
Agile satellites are the new generation of Earth observation satellites (EOSs) with stronger attitude maneuvering capability. Since optical remote sensing instruments equipped on satellites cannot see through the cloud, …
Earth ObservationSchedulingMemory-Efficient FPGA Implementation of Stochastic Simulated Annealing
Simulated annealing (SA) is a well-known algorithm for solving combinatorial optimization problems. However, the computation time of SA increases rapidly, as the size of the problem grows. Recently, a stochastic simulate…
Replacement Policy of Systems with Dependent Components via Integration of Dynamic Programming and Simulated Annealing
In a dependent multi-component system, increasing the deterioration of a part leads to the increased deterioration rate of other parts as well. In these systems, a deterioration limit is usually pre-determined for each p…