  A simple and efficient Bayesian machine learning (BML) training and
forecasting algorithm, which exploits only a 20-year short observational time
series and an approximate prior model, is developed to predict the Ni\~no 3 sea
surface temperature (SST) index. The BML forecast significantly outperforms
model-based ensemble predictions and standard machine learning forecasts. Even
with a simple feedforward neural network, the BML forecast is skillful for 9.5
months. Remarkably, the BML forecast overcomes the spring predictability
barrier to a large extent: the forecast starting from spring remains skillful
for nearly 10 months. The BML algorithm can also effectively utilize multiscale
features: the BML forecast of SST using SST, thermocline, and wind burst
improves on the BML forecast using just SST by at least 2 months. Finally, the
BML algorithm also reduces the forecast uncertainty of neural networks and is
robust to input perturbations.
