Binary Output Variable: Logistic regression is intended for binary (two-class) classification problems. It will predict the probability of an instance belonging to the default class, which can be snapped into a 0 or 1 classification.
Remove Noise: Logistic regression assumes no error in the output variable (y), consider removing outliers and possibly misclassified instances from your data.
Gaussian Distribution: Logistic regression is a linear algorithm (with a nonlinear transform on output). It does assume a linear relationship between the input variables with the output.You may get some benefit using transforms (e.g. log or BoxCox) on you variables to make their distribution more Gaussian looking.We also need to consider about accuracy when we do transformations.
Remove Correlated Inputs: Like linear regression, the model can overfit if you have highly correlated input/independent variables. Consider calculating pairwise correlations(Variance inflation factor) for your input data and removing the most correlated (lets say if we have two output variables like which has the information about the distance in miles and meters, In this case these two variables carry’s the same information this we called Collinearity problems ).
Fail to Converge: It is possible for the expected likelihood estimation process that learns the coefficients to fail to converge. This can happen if there are many highly correlated inputs in your data or the data is very sparse (e.g. lots of zeros in your input data).