A method of monitoring health of a communication network, the method being performed by one or more computers, the method comprising: receiving, by the one or more computers, data indicating a measured amount of traffic for a communication network for a time period; determining, by the one or more computers, a forecasted amount of traffic for the communication network for the time period using one or more network traffic forecasting models; generating, by the one or more computers, a measure of network health for the time period based on the measured amount of traffic and the forecasted amount of traffic; processing, by the one or more computers, data indicating one or more characteristics of the communication network for the time period to generate a predicted measure of network health for a future time period, wherein the predicted measure of network health is generated using one or more network health prediction models that have been trained using machine learning based on training data indicating a measure of network health for a previous time period and one or more characteristics of the communication network for the previous time period; transmitting, by the one or more computers, an indication of the predicted measure of network health for the future time period to a client device for output; using the one or more network health prediction models to predict measures of network health for the communication network for a plurality of successive time periods; and determining whether the predicted measures of network health respectively satisfy a first threshold, characterized by: determining that at least a predetermined minimum amount of the predicted measures of network health do not satisfy the threshold, and in response to determining that at least a predetermined minimum amount of the predicted measures of network health do not satisfy the threshold, identifying and carrying out an action to alter a configuration of the communication network. receiving, by the one or more computers, data indicating a measured amount of traffic for a communication network for a time period; determining, by the one or more computers, a forecasted amount of traffic for the communication network for the time period using one or more network traffic forecasting models; generating, by the one or more computers, a measure of network health for the time period based on the measured amount of traffic and the forecasted amount of traffic; processing, by the one or more computers, data indicating one or more characteristics of the communication network for the time period to generate a predicted measure of network health for a future time period, wherein the predicted measure of network health is generated using one or more network health prediction models that have been trained using machine learning based on training data indicating a measure of network health for a previous time period and one or more characteristics of the communication network for the previous time period; transmitting, by the one or more computers, an indication of the predicted measure of network health for the future time period to a client device for output; using the one or more network health prediction models to predict measures of network health for the communication network for a plurality of successive time periods; and determining whether the predicted measures of network health respectively satisfy a first threshold, characterized by: determining that at least a predetermined minimum amount of the predicted measures of network health do not satisfy the threshold, and in response to determining that at least a predetermined minimum amount of the predicted measures of network health do not satisfy the threshold, identifying and carrying out an action to alter a configuration of the communication network. determining that at least a predetermined minimum amount of the predicted measures of network health do not satisfy the threshold, and in response to determining that at least a predetermined minimum amount of the predicted measures of network health do not satisfy the threshold, identifying and carrying out an action to alter a configuration of the communication network.