Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Техніки Надлишкового Вибіркування | Методи вибірки для великих даних
Обробка Великих Даних з Python

Техніки Надлишкового Вибіркування

Свайпніть щоб показати меню

Оверсемплінг — це техніка, яка використовується для вирішення проблеми незбалансованих наборів даних, особливо коли один клас (міноритарний клас) має значно менше зразків, ніж інші. Збільшуючи представлення міноритарного класу, ви допомагаєте моделям машинного навчання ефективніше навчатися на всіх класах, що часто призводить до кращої передбачувальної точності та справедливіших результатів. Найпоширенішою перевагою оверсемплінгу є балансування розподілу класів, що дозволяє алгоритмам уникати упередженості до мажоритарного класу. Однак оверсемплінг також може мати певні недоліки. Якщо просто дублювати існуючі зразки, модель може переобучитися, вивчаючи занадто специфічні патерни для дубльованих даних і не здатна узагальнювати на нові дані. Крім того, оверсемплінг може збільшити розмір набору даних, що може призвести до довшого часу навчання та підвищених обчислювальних витрат.

1234567891011121314151617181920212223242526272829303132
import pandas as pd # Create a sample DataFrame with an imbalanced target data = { "feature1": [1, 2, 3, 4, 5, 6, 7], "target": ["A", "A", "A", "A", "B", "B", "B"] } df = pd.DataFrame(data) # Count original class distribution print("Original class distribution:") print(df["target"].value_counts()) # Oversample minority class "B" to match majority class "A" majority_count = df["target"].value_counts().max() minority_class = df["target"].value_counts().idxmin() # Get all minority class rows minority_rows = df[df["target"] == minority_class] # Calculate how many samples to add samples_to_add = majority_count - len(minority_rows) # Sample with replacement from minority class oversampled_minority = minority_rows.sample(n=samples_to_add, replace=True, random_state=42) # Concatenate original data with new samples df_oversampled = pd.concat([df, oversampled_minority], ignore_index=True) # Show new class distribution print("\nClass distribution after oversampling:") print(df_oversampled["target"].value_counts())
question mark

Яка основна мета оверсемплінгу?

Виберіть правильну відповідь

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 3

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Секція 2. Розділ 3
some-alt