الخطوة 1: جمع البيانات
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
جمع البيانات هو أهم خطوة في حل أي مشكلة تعلّم آلة خاضعة للإشراف. يمكن أن يكون مصنف النص بنفس جودة مجموعة البيانات التي تم إنشاؤها منها.
إذا لم تكن لديك مشكلة محددة تريد حلها وكنت مهتمًا فقط
باستكشاف تصنيف النص بشكل عام، فهناك الكثير من مجموعات البيانات المتاحة
مفتوحة المصدر. يمكنك العثور على روابط لبعض منها في مستودع
GitHub.
من ناحية أخرى، إذا كنت تواجه مشكلة معينة،
فستحتاج إلى جمع البيانات اللازمة. توفّر العديد من المؤسسات واجهات برمجة تطبيقات عامة للوصول إلى بياناتها، مثل X API أو NY Times API. قد تتمكن من الاستفادة من واجهات برمجة التطبيقات
هذه لحل المشكلة التي تحاول حلها.
فيما يلي بعض الأشياء المهمة التي يجب تذكرها عند جمع البيانات:
- إذا كنت تستخدم واجهة برمجة تطبيقات عامة، عليك فهم قيود واجهة برمجة التطبيقات قبل استخدامها. على سبيل المثال، تضع بعض واجهات برمجة التطبيقات حدًا لمعدّل إجراء طلبات البحث.
- كلما زاد عدد أمثلة التدريب (المشار إليها باسم نماذج في بقية هذا الدليل)، كان ذلك أفضل. سيساعد ذلك في تعميم النموذج بشكل أفضل.
- احرص على ألّا يكون عدد العيّنات لكل صف أو موضوع
غير متوازن بشكل مفرط. أي، ينبغي أن يكون لديك عدد مماثل من العينات في كل فئة.
- تأكَّد من أنّ نماذجك تغطي بشكل كافٍ مساحة الإدخالات المحتملة، وليس الحالات الشائعة فقط.
في هذا الدليل، سنستخدم مجموعة بيانات مراجعات الأفلام على الإنترنت (IMDb) لتوضيح سير العمل. تحتوي مجموعة البيانات هذه على مراجعات للأفلام نشرها أشخاص على موقع IMDb الإلكتروني، بالإضافة إلى التسميات المقابلة ("إيجابية" أو "سلبية")
تشير إلى ما إذا أبدى المُراجع إعجابه بالفيلم أم لا. هذا مثال كلاسيكي
على مشكلة تحليل الآراء.
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\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."]]