Identification of significant input factors plays a crucial role in optimizing the predictive model performance of floods. A good predictive model is a model that can predict the outcome with the best accuracy but using the least input parameters. In this study, the Bayesian Model Averaging (BMA) method was applied instead of the traditional stepwise regression method for determining flood-conditioning factors. In general, the BMA method had higher accuracy than the stepwise regression method. Fourteen flood conditioning factors were used to compare feature selection capacity using the LR and BMA methods, including altitude, slope, aspect, curvature, normalized difference vegetation index (NDVI), normalized difference snow index (NDSI), rainfall, stream power index (SPI), topographic wetness index (TWI), modified normalized difference water index (MNDWI), distance from rivers (DFR), soil types, land cover, and geology. By applying the BMA method, the input parameters were reduced from 14 to 4 (altitude, slope, rainfall, and NDVI) but the accuracy of predicted models was maintained. This research applied three machine learning algorithms namely Logistic Regression (LR), Naive Bayes (NB), and Support Vector Machine (SVM) using the above significant flood-conditioning factors to produce flood susceptibility maps for the coastal city of Alesund, Norway. A total of 182 flood events were used to develop and evaluate the machine learning models, and the accuracy and performance of predicted models were tested by employing the area under the curve (AUC) and some statistical indices. Among the input factors, altitude and rainfall in Alesund were the most important factors that significantly influenced flood events. The studied results indicated that SVM (AUC = 1.0) was the best algorithm for building flood susceptibility in Alesund, followed by the NB (AUC = 0.996) and LR (AUC = 0.984) algorithms, respectively.