There are three types of error in any machine learning approach. They are a biased error, variance error, and irreducible error. Generally, the focus is to look at striking a balance between bias and variance and reducing those errors in the model so that accuracy can be improved. Low Bias - indicates fewer assumptions about the form of the target variable or function. In this case, when we test on new data, it does not give expected results and accuracy can be compromised. High variance - indicates large changes to the estimate of target variable or target function with changes to the training data. It is always tricky to handle scenario to balance between these two as increasing the bias will decrease the variance and increasing the variance will decrease the bias. Hence approach that can be followed are as follows: Look at the dataset in hand and contextual information to suggest which way to look at for a better prediction performance Typically kNN and SVM algorithms can be looked at depending on what problem we are solving and how tweaks can be performed in order to manage this effect