Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Kenmerktransformatie en -Extractie | Technieken voor Datatransformatie
Data Preprocessing en Feature Engineering

bookKenmerktransformatie en -Extractie

Veel echte datasets bevatten kenmerken met scheve verdelingen, wat de effectiviteit van machine learning-modellen kan verminderen. Wiskundige transformaties kunnen worden toegepast om de scheefheid te verminderen en de datakwaliteit te verbeteren. Twee veelgebruikte methoden zijn:

  • Logaritmische transformatie: vermindert sterke positieve scheefheid door log(x) toe te passen;
  • Worteltransformatie: matigt kleinere graden van scheefheid met behulp van sqrt(x).

Deze methoden helpen om kenmerkverdelingen meer normaal te maken en verbeteren de modelprestaties.

123456789101112131415161718192021222324252627282930
import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns # Load the Titanic dataset df = sns.load_dataset('titanic') fare = df['fare'] # Apply log transformation (add 1 to handle zeros) fare_log = np.log(fare + 1) # Create side-by-side histogram comparison fig, axes = plt.subplots(1, 2, figsize=(14, 5)) # Original fare axes[0].hist(fare, bins=50, color='skyblue', edgecolor='black', alpha=0.7) axes[0].set_xlabel('Fare ($)', fontsize=12) axes[0].set_ylabel('Frequency', fontsize=12) axes[0].set_title('Original Fare Distribution', fontsize=14, fontweight='bold') axes[0].grid(True, alpha=0.3) # Log-transformed fare axes[1].hist(fare_log, bins=50, color='lightcoral', edgecolor='black', alpha=0.7) axes[1].set_xlabel('Log(Fare + 1)', fontsize=12) axes[1].set_ylabel('Frequency', fontsize=12) axes[1].set_title('Log-Transformed Fare Distribution', fontsize=14, fontweight='bold') axes[1].grid(True, alpha=0.3) plt.tight_layout()
copy
Note
Definitie

Kenmerkextractie is het proces waarbij nieuwe kenmerken uit ruwe data worden gecreëerd om de prestaties van machine learning-modellen te verbeteren.

Het helpt door belangrijke informatie explicieter te maken, ruis te verminderen en soms de dimensionaliteit van de gegevens te verlagen. Effectieve feature-extractie kan leiden tot betere voorspellingen en beter interpreteerbare modellen.

1234567891011
import seaborn as sns import pandas as pd # Load the Titanic dataset df = sns.load_dataset('titanic') # Create a new feature: family_size = sibsp + parch + 1 df['family_size'] = df['sibsp'] + df['parch'] + 1 # Show the first few rows with the new feature print(df[['sibsp', 'parch', 'family_size']].head())
copy
question mark

Welke transformatie is het meest geschikt voor een variabele met een sterke positieve scheefheid en alleen positieve waarden?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 3

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Awesome!

Completion rate improved to 8.33

bookKenmerktransformatie en -Extractie

Veeg om het menu te tonen

Veel echte datasets bevatten kenmerken met scheve verdelingen, wat de effectiviteit van machine learning-modellen kan verminderen. Wiskundige transformaties kunnen worden toegepast om de scheefheid te verminderen en de datakwaliteit te verbeteren. Twee veelgebruikte methoden zijn:

  • Logaritmische transformatie: vermindert sterke positieve scheefheid door log(x) toe te passen;
  • Worteltransformatie: matigt kleinere graden van scheefheid met behulp van sqrt(x).

Deze methoden helpen om kenmerkverdelingen meer normaal te maken en verbeteren de modelprestaties.

123456789101112131415161718192021222324252627282930
import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns # Load the Titanic dataset df = sns.load_dataset('titanic') fare = df['fare'] # Apply log transformation (add 1 to handle zeros) fare_log = np.log(fare + 1) # Create side-by-side histogram comparison fig, axes = plt.subplots(1, 2, figsize=(14, 5)) # Original fare axes[0].hist(fare, bins=50, color='skyblue', edgecolor='black', alpha=0.7) axes[0].set_xlabel('Fare ($)', fontsize=12) axes[0].set_ylabel('Frequency', fontsize=12) axes[0].set_title('Original Fare Distribution', fontsize=14, fontweight='bold') axes[0].grid(True, alpha=0.3) # Log-transformed fare axes[1].hist(fare_log, bins=50, color='lightcoral', edgecolor='black', alpha=0.7) axes[1].set_xlabel('Log(Fare + 1)', fontsize=12) axes[1].set_ylabel('Frequency', fontsize=12) axes[1].set_title('Log-Transformed Fare Distribution', fontsize=14, fontweight='bold') axes[1].grid(True, alpha=0.3) plt.tight_layout()
copy
Note
Definitie

Kenmerkextractie is het proces waarbij nieuwe kenmerken uit ruwe data worden gecreëerd om de prestaties van machine learning-modellen te verbeteren.

Het helpt door belangrijke informatie explicieter te maken, ruis te verminderen en soms de dimensionaliteit van de gegevens te verlagen. Effectieve feature-extractie kan leiden tot betere voorspellingen en beter interpreteerbare modellen.

1234567891011
import seaborn as sns import pandas as pd # Load the Titanic dataset df = sns.load_dataset('titanic') # Create a new feature: family_size = sibsp + parch + 1 df['family_size'] = df['sibsp'] + df['parch'] + 1 # Show the first few rows with the new feature print(df[['sibsp', 'parch', 'family_size']].head())
copy
question mark

Welke transformatie is het meest geschikt voor een variabele met een sterke positieve scheefheid en alleen positieve waarden?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 3
some-alt