implement classification, there are still some problems should be solved