Etapa 1: coletar dados
Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.
A coleta de dados é a etapa mais importante na solução de qualquer problema de machine learning supervisionado. Seu classificador de texto só pode ser tão bom quanto o conjunto de dados de que ele foi criado.
Se você não tem um problema específico que queira resolver e está interessado apenas em explorar a classificação de texto em geral, há muitos conjuntos de dados de código aberto disponíveis. Você encontra links para alguns deles no nosso repositório do GitHub. Por outro lado, se você estiver enfrentando um problema específico, precisará coletar os dados necessários. Muitas organizações fornecem APIs públicas para acessar dados, por exemplo, a API X ou a API NY Times. Você pode aproveitar essas APIs para o problema que está tentando resolver.
Veja alguns pontos importantes para a coleta de dados:
- Se você estiver usando uma API pública, entenda as limitações da API antes de usá-la. Por exemplo, algumas APIs definem um limite para a taxa em que é possível fazer consultas.
- Quanto mais exemplos de treinamento (chamados de amostras no restante deste guia) você tiver, melhor. Isso ajudará a generalizar melhor o modelo.
- Confira se o número de amostras de cada classe ou tópico não está desequilibrado demais. Ou seja, você precisa ter um número comparável de amostras em cada classe.
- Verifique se as amostras cobrem adequadamente o espaço de entradas possíveis, não apenas os casos comuns.
Neste guia, usaremos o conjunto de dados de resenhas de filmes do Internet Movie Database (IMDb) para ilustrar o fluxo de trabalho. Esse conjunto de dados contém avaliações de filmes postadas por pessoas no site do IMDb, bem como os rótulos correspondentes ("positivo" ou "negativo") que indicam se o avaliador gostou do filme ou não. Este é um exemplo clássico de um problema de análise de sentimento.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-07-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 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,["Gathering 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."]]