Is there room to improve the model? if the train data accuracy is 99.8% but test data accuracy is 90%?
Your model is overfit: it learns patterns on the training data which are specific to the training data, hence the big difference in performance on the test data. This is bad, because it means that your model wrongly assumes that some patterns are good indication for the class even though it's just noise. 

It's possible that by solving the overfitting problem the performance would improve. However nobody can give you any advice without knowing anything about your actual problem and data. Btw you don't explain why you use accuracy as evaluation measure, it might or might not be optimal for your problem.