Development of flood prediction models using machine learning techniques