1. A method for adapting a Bayesian network, comprising: generating a set of parameters for the Bayesian network in response to a set of past observation data such that the Bayesian network models an environment having at least hardware elements; obtaining a set of present observation data from the environment; determining an estimate of the parameters in response to the present observation data; adapting a learning rate for the parameters such that the learning rate responds to changes in the environment indicated in the present observation data by increasing the learning rate when an error between the estimate and a mean of the parameters is relatively large and decreasing the learning rate when convergence is reached between the estimate and the mean of the parameters; updating the parameters in response to the present observation data using the learning rate; and using the Bayesian network to model the environment and diagnose problems or predict events in the environment.