Exploring Sentiment Analysis Techniques in Natural Language Processing: A Comprehensive Review