recommend system based on sklearn and numpy. It uses vector operation, so it's very fast.