Traditional sentiment analysis used feature-engineered classifiers (bag-of-words + logistic regression, lexicon-based approaches). These worked for simple cases but failed on sarcasm ("Oh great, another delay"), implicit sentiment ("The battery lasted two hours"), and domain-specific language. Modern approaches use fine-tuned BERT or LLM-based classification, which handle these nuances much better by understanding context.
Real reviews often contain mixed sentiment: "The camera is excellent but the battery is disappointing." Aspect-based sentiment analysis identifies the aspects (camera, battery) and assigns sentiment to each independently. This is more useful for product teams than overall sentiment because it pinpoints what specifically needs improvement. Modern LLMs handle this naturally through structured output — "extract aspects and their sentiments from this review."
For sentiment analysis, you have three options: (1) a fine-tuned small model (fast, cheap, good for high-volume), (2) a zero-shot LLM prompt (flexible, handles edge cases, more expensive), or (3) an API service (Google NLP, AWS Comprehend). For most new projects, starting with an LLM prompt and switching to a fine-tuned model when volume justifies it is the practical approach.