Paso 1: Recopila datos
Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.
La recopilación de datos es el paso más importante para resolver cualquier problema de aprendizaje automático supervisado. Tu clasificador de texto solo puede ser tan bueno como el conjunto de datos a partir del cual se creó.
Si no tienes un problema específico que quieras resolver y solo te interesa explorar la clasificación de texto en general, hay muchos conjuntos de datos de código abierto disponibles. Puedes encontrar los vínculos a algunos de ellos en nuestro repositorio de GitHub. Por otro lado, si abordas un problema específico, deberás recopilar los datos necesarios. Muchas organizaciones proporcionan APIs públicas para acceder a sus datos, por ejemplo, la API de X o la API de NY Times. Es posible que puedas aprovechar estas APIs para el problema que intentas resolver.
Estos son algunos aspectos importantes que debes recordar al recopilar datos:
- Si usas una API pública, debes comprender las limitaciones de la API antes de utilizarlas. Por ejemplo, algunas APIs establecen un límite en la velocidad con la que puedes realizar consultas.
- Cuantos más ejemplos de entrenamiento (denominados muestras en el resto de esta guía), tengas, mejor. Esto ayudará a que el modelo se generalice mejor.
- Asegúrate de que la cantidad de muestras para cada clase o tema no esté demasiado desequilibrada. Es decir, debes tener una cantidad comparable de muestras en cada clase.
- Asegúrate de que tus muestras cubran de forma adecuada el espacio de entradas posibles, no solo los casos comunes.
En esta guía, se usará el conjunto de datos de opiniones sobre películas de Internet Movie Database (IMDb) para ilustrar el flujo de trabajo. Este conjunto de datos contiene opiniones sobre películas publicadas por personas en el sitio web de IMDb, así como las etiquetas correspondientes (“positivas” o “negativas”) que indican si al usuario le gustó la película o no. Este es un ejemplo clásico de un problema de análisis de opiniones.
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-07-27 (UTC)
[null,null,["Última actualización: 2025-07-27 (UTC)"],[[["\u003cp\u003eHigh-quality data is crucial for building effective supervised machine learning text classifiers, with more training samples generally leading to better performance.\u003c/p\u003e\n"],["\u003cp\u003ePublic APIs and open-source datasets can be leveraged for data collection, but it's important to understand API limitations and ensure data balance across classes.\u003c/p\u003e\n"],["\u003cp\u003eAdequate data representation across all possible input variations is necessary, and the IMDb movie reviews dataset will be used to demonstrate text classification workflow for sentiment analysis.\u003c/p\u003e\n"],["\u003cp\u003eWhen collecting data, aim for a balanced dataset with a sufficient number of samples for each class to avoid imbalanced datasets and promote better model generalization.\u003c/p\u003e\n"]]],[],null,["# Step 1: Gather Data\n\nGathering data is the most important step in solving any supervised machine\nlearning problem. Your text classifier can only be as good as the dataset it is\nbuilt from.\n\nIf you don't have a specific problem you want to solve and are just interested\nin exploring text classification in general, there are plenty of open source\ndatasets available. You can find links to some of them in our [GitHub\nrepo](https://github.com/google/eng-edu/blob/master/ml/guides/text_classification/load_data.py).\nOn the other hand, if you are tackling a specific problem,\nyou will need to collect the necessary data. Many organizations provide public\nAPIs for accessing their data---for example, the\n[X API](https://developer.x.com/docs) or the\n[NY Times API](http://developer.nytimes.com/). You may be able to leverage\nthese APIs for the problem you are trying to solve.\n\nHere are some important things to remember when collecting data:\n\n- If you are using a public API, understand the *limitations* of the API before using them. For example, some APIs set a limit on the rate at which you can make queries.\n- The more training examples (referred to as *samples* in the rest of this guide) you have, the better. This will help your model [generalize](/machine-learning/glossary#generalization) better.\n- Make sure the number of samples for every *class* or topic is not overly [imbalanced](/machine-learning/glossary#class_imbalanced_data_set). That is, you should have comparable number of samples in each class.\n- Make sure that your samples adequately cover the *space of possible inputs*, not only the common cases.\n\nThroughout this guide, we will use the [Internet Movie Database (IMDb) movie\nreviews dataset](http://ai.stanford.edu/%7Eamaas/data/sentiment/) to illustrate\nthe workflow. This dataset contains movie reviews posted by people on the IMDb\nwebsite, as well as the corresponding labels (\"positive\" or \"negative\")\nindicating whether the reviewer liked the movie or not. This is a classic\nexample of a sentiment analysis problem."]]