داده های عددی: چگونه یک مدل داده ها را با استفاده از بردارهای ویژگی دریافت می کند
با مجموعهها، منظم بمانید ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
تا به حال، ما این تصور را به شما می دادیم که یک مدل مستقیماً روی ردیف های یک مجموعه داده عمل می کند. با این حال، مدل ها در واقع داده ها را تا حدودی متفاوت دریافت می کنند.
به عنوان مثال، فرض کنید یک مجموعه داده پنج ستون را ارائه می دهد، اما تنها دو مورد از آن ستون ها ( b و d ) ویژگی های مدل هستند. هنگام پردازش مثال در ردیف 3، آیا مدل به سادگی محتویات دو خانه برجسته شده (3b و 3d) را به صورت زیر می گیرد؟
شکل 1. نه دقیقاً چگونه یک مدل نمونه های خود را دریافت می کند.
در واقع، مدل در واقع آرایه ای از مقادیر ممیز شناور به نام بردار ویژگی را جذب می کند. شما می توانید یک بردار ویژگی را به عنوان مقادیر ممیز شناور در نظر بگیرید که شامل یک مثال است.
شکل 2. به حقیقت نزدیک تر است، اما واقع بینانه نیست.
با این حال، بردارهای ویژگی به ندرت از مقادیر خام مجموعه داده استفاده می کنند. در عوض، معمولاً باید مقادیر مجموعه داده را به نمایش هایی پردازش کنید که مدل شما بهتر می تواند از آنها یاد بگیرد. بنابراین، یک بردار ویژگی واقعی تر ممکن است چیزی شبیه به این باشد:
شکل 3. یک بردار ویژگی واقعی تر.
آیا یک مدل با آموزش مقادیر واقعی در مجموعه داده، پیش بینی های بهتری نسبت به مقادیر تغییر یافته ایجاد نمی کند؟ با کمال تعجب، پاسخ منفی است.
شما باید بهترین راه را برای نمایش مقادیر داده خام به عنوان مقادیر قابل آموزش در بردار ویژگی تعیین کنید. این فرآیند مهندسی ویژگی نامیده می شود و بخشی حیاتی از یادگیری ماشین است. رایج ترین تکنیک های مهندسی ویژگی عبارتند از:
عادی سازی : تبدیل مقادیر عددی به یک محدوده استاندارد.
Binning (همچنین به عنوان سطل نامیده می شود): تبدیل مقادیر عددی به سطل های محدوده.
این واحد نرمال سازی و باینینگ را پوشش می دهد. واحد بعدی، کار با داده های طبقه بندی شده ، سایر اشکال پیش پردازش ، مانند تبدیل داده های غیر عددی، مانند رشته ها، به مقادیر ممیز شناور را پوشش می دهد.
هر مقدار در یک بردار ویژگی باید یک مقدار ممیز شناور باشد. با این حال، بسیاری از ویژگی ها به طور طبیعی رشته ها یا سایر مقادیر غیر عددی هستند. در نتیجه، بخش بزرگی از مهندسی ویژگی، مقادیر غیر عددی را به عنوان مقادیر عددی نشان میدهد. شما در ماژول های بعدی موارد زیادی را خواهید دید.
تاریخ آخرین بهروزرسانی 2025-01-03 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-01-03 بهوقت ساعت هماهنگ جهانی."],[[["\u003cp\u003eModels ingest data through floating-point arrays called feature vectors, which are derived from dataset features.\u003c/p\u003e\n"],["\u003cp\u003eFeature vectors often utilize processed or transformed values instead of raw dataset values to enhance model learning.\u003c/p\u003e\n"],["\u003cp\u003eFeature engineering is the crucial process of converting raw data into suitable representations for the model, encompassing techniques like normalization and binning.\u003c/p\u003e\n"],["\u003cp\u003eNon-numerical data like strings must be converted into numerical values for use in feature vectors, a key aspect of feature engineering.\u003c/p\u003e\n"]]],[],null,["Until now, we've given you the impression that a model acts directly on the\nrows of a dataset; however, models actually ingest data somewhat differently.\n\nFor example, suppose a dataset provides five columns, but only two of those\ncolumns (`b` and `d`) are features in the model. When processing\nthe example in row 3, does the model simply grab the contents of the\nhighlighted two cells (3b and 3d) as follows?\n**Figure 1.** Not exactly how a model gets its examples.\n\nIn fact, the model actually ingests an array of floating-point values called a\n[**feature vector**](/machine-learning/glossary#feature-vector). You can think\nof a feature vector as the floating-point values comprising one example.\n**Figure 2.** Closer to the truth, but not realistic.\n\nHowever, feature vectors seldom use the dataset's *raw values*.\nInstead, you must typically process the dataset's values into representations\nthat your model can better learn from. So, a more realistic\nfeature vector might look something like this:\n**Figure 3.** A more realistic feature vector.\n\nWouldn't a model produce better predictions by training from the\n*actual* values in the dataset than from *altered* values?\nSurprisingly, the answer is no.\n\nYou must determine the best way to represent raw dataset values as trainable\nvalues in the feature vector.\nThis process is called\n[**feature engineering**](/machine-learning/glossary#feature-engineering),\nand it is a vital part of machine learning.\nThe most common feature engineering techniques are:\n\n- [**Normalization**](/machine-learning/glossary#normalization): Converting numerical values into a standard range.\n- [**Binning**](/machine-learning/glossary#binning) (also referred to as [**bucketing**](/machine-learning/glossary#bucketing)): Converting numerical values into buckets of ranges.\n\nThis unit covers normalizing and binning. The next unit,\n[Working with categorical data](/machine-learning/crash-course/categorical-data),\ncovers other forms of\n[**preprocessing**](/machine-learning/glossary#preprocessing), such as\nconverting non-numerical data, like strings, to floating point values.\n\nEvery value in a feature vector must be a floating-point value. However, many\nfeatures are naturally strings or other non-numerical values. Consequently,\na large part of feature engineering is representing non-numerical values as\nnumerical values. You'll see a lot of this in later modules.\n| **Key terms:**\n|\n| - [Binning](/machine-learning/glossary#binning)\n| - [Bucketing](/machine-learning/glossary#bucketing)\n| - [Feature engineering](/machine-learning/glossary#feature_engineering)\n| - [Feature vector](/machine-learning/glossary#feature_vector)\n| - [Normalization](/machine-learning/glossary#normalization)\n- [Preprocessing](/machine-learning/glossary#preprocessing) \n[Help Center](https://support.google.com/machinelearningeducation)"]]