Cancer diagnosis using artificial intelligence: a review