For the Spanish version click here
This repository contains a sentiment analysis project as the final exercise of the NLP module. In this project, we were asked to implement various procedures of exploratory analysis, preprocessing, and the construction of a predictive model. The goal is to classify Amazon product reviews to analyze and predict customer sentiment based on these reviews.
This module provides tools for preprocessing, analyzing, visualizing, and modeling natural language using Python, Spacy, NLTK, and various other technologies.
- Text Cleaning: Removal of special characters, numbers, and punctuation.
- Tokenization: Splitting texts into words or sentences.
- Lemmatization and Stemming: Reducing words to their root form or lemma.
- Utilizes Norvig's spelling corrector to fix typing and spelling errors in texts.
- Automatically extracts entities such as names of people, organizations, locations using Spacy.
- Converts texts to numerical vectors using techniques such as TF-IDF and Bag of Words.
- Text classification based on emotional tone (positive, negative, neutral).
- Identifies prevalent topics in large volumes of text using algorithms like LDA (Latent Dirichlet Allocation).
- Generation of word vectors using models like Word2Vec and techniques for subwords that better capture meaning and syntax.
- Uses tools like t-SNE to visualize the relationship between word vectors in a two or three-dimensional space.
- Implements deep learning models for a more sophisticated and accurate sentiment analysis.
Para la versión en inglés haz clic aquí
Este repositorio contiene un proyecto de análisis de sentimientos como ejercicio final del módulo de NLP. En este proyecto, se nos pedía implementar diversos procedimientos de análisis exploratorio, preprocesamiento y construcción de un modelo predictivo. El objetivo es clasificar reseñas de productos de Amazon para analizar y predecir el sentimiento del cliente basado en estas reseñas.
Este módulo ofrece herramientas para el preprocesamiento, análisis, visualización, y modelado de lenguaje natural usando Python, Spacy, NLTK, y varias otras tecnologías.
- Limpieza de Textos: Eliminación de caracteres especiales, números, y puntuación.
- Tokenización: División de textos en palabras o frases.
- Lematización y Stemming: Reducción de palabras a su raíz o lema.
- Utilización del corrector ortográfico de Norvig para corregir errores de tipeo y ortografía en textos.
- Extracción automática de entidades como nombres de personas, organizaciones, ubicaciones usando Spacy.
- Conversión de textos a vectores numéricos utilizando técnicas como TF-IDF y Bag of Words.
- Clasificación de textos basada en el tono emocional (positivo, negativo, neutral).
- Identificación de temas prevalentes en grandes volúmenes de texto utilizando algoritmos como LDA (Latent Dirichlet Allocation).
- Generación de vectores de palabras utilizando modelos como Word2Vec y técnicas para subpalabras que capturan mejor el significado y la sintaxis.
- Uso de herramientas como t-SNE para visualizar la relación entre vectores de palabras en un espacio bidimensional o tridimensional.
- Implementación de modelos de aprendizaje profundo para un análisis de sentimientos más sofisticado y preciso.