  We present a knowledge-guided machine learning (KGML) framework for modeling
multi-scale processes, and study its performance in the context of streamflow
forecasting in hydrology. Specifically, we propose a novel hierarchical
recurrent neural architecture that factorizes the system dynamics at multiple
temporal scales and captures their interactions. This framework consists of an
inverse and a forward model. The inverse model is used to empirically resolve
the system's temporal modes from data (physical model simulations, observed
data, or a combination of them from the past), and these states are then used
in the forward model to predict streamflow. In a hydrological system, these
modes can represent different processes, evolving at different temporal scales
(e.g., slow: groundwater recharge and baseflow vs. fast: surface runoff due to
extreme rainfall). A key advantage of our framework is that once trained, it
can incorporate new observations into the model's context (internal state)
without expensive optimization approaches (e.g., EnKF) that are traditionally
used in physical sciences for data assimilation. Experiments with several river
catchments from the NWS NCRFC region show the efficacy of this ML-based data
assimilation framework compared to standard baselines, especially for basins
that have a long history of observations. Even for basins that have a shorter
observation history, we present two orthogonal strategies of training our FHNN
framework: (a) using simulation data from imperfect simulations and (b) using
observation data from multiple basins to build a global model. We show that
both of these strategies (that can be used individually or together) are highly
effective in mitigating the lack of training data. The improvement in forecast
accuracy is particularly noteworthy for basins where local models perform
poorly because of data sparsity.
