0Pricing
Python Academy · Lekcja

Inżynieria i wybór cech

Poznaj techniki zwiększania mocy predykcyjnej modeli

Inżynieria i wybór cech to bezpłatna lekcja Python Academy na CoddyKit. To lekcja 4 z 6. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Python Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Python Academy zawiera 6 lekcji w sumie.

Inżynieria cech i wybór cech

Inżynieria cech i wybór cech

Inżynieria cech i ich wybór to kluczowe etapy tworzenia skutecznych modeli uczenia maszynowego. Procesy te obejmują tworzenie nowych cech i wybieranie tych najbardziej istotnych w celu poprawy wydajności modelu.

W tej lekcji poznają Państwo techniki inżynierii cech i ich wyboru, które pozwalają zwiększyć trafność predykcji.

Inżynieria i wybór cech — ilustracja 1

Czym jest inżynieria cech?

Czym jest inżynieria cech?

Inżynieria cech polega na tworzeniu nowych cech na podstawie surowych danych, aby zwiększyć skuteczność modeli uczenia maszynowego. Przykłady:

  • Wyodrębnianie cech zależnych od czasu, takich jak dzień, miesiąc lub godzina, ze znaczników czasu.
  • Łączenie wielu cech w jedną nową cechę.
  • Skalowanie cech numerycznych w celu ujednolicenia ich zakresu.

Tworzenie nowych cech

Tworzenie nowych cech

Utworzymy nowe cechy na podstawie istniejących danych:

# Example: Creating new features
import pandas as pd

data = {'Timestamp': ['2025-01-01 12:00:00', '2025-01-02 15:30:00']}
df = pd.DataFrame(data)
df['Hour'] = pd.to_datetime(df['Timestamp']).dt.hour
df['Day'] = pd.to_datetime(df['Timestamp']).dt.day
print(df)

Skalowanie cech

Skalowanie cech

Skalowanie zapewnia, że wszystkie cechy numeryczne mają tę samą skalę, co poprawia wydajność modelu:

# Example: Scaling features
from sklearn.preprocessing import MinMaxScaler

scaler = MinMaxScaler()
values = [[10], [20], [30]]
scaled_values = scaler.fit_transform(values)
print(scaled_values)

Wybór cech

Wybór cech

Wybór cech polega na wybraniu cech najbardziej istotnych dla modelu. Typowe techniki obejmują:

  • Metody filtrujące: Wybór cech na podstawie miar statystycznych, takich jak korelacja.
  • Metody wrapperowe: Wykorzystanie algorytmów takich jak Recursive Feature Elimination (RFE).
  • Metody wbudowane: Wybór cech podczas trenowania modelu, np. za pomocą regresji Lasso.

Wybór cech na podstawie korelacji

Wybór cech na podstawie korelacji

Wysoce skorelowane cechy mogą być redundantne. Do obliczania korelacji należy użyć Pandas:

# Example: Correlation-based feature selection
import pandas as pd

data = {'Feature1': [1, 2, 3], 'Feature2': [2, 4, 6], 'Feature3': [1, 1, 1]}
df = pd.DataFrame(data)
print(df.corr())

Rekurencyjna eliminacja cech (RFE)

Rekurencyjna eliminacja cech (RFE)

RFE to metoda wrapperowa, która iteracyjnie usuwa najmniej istotne cechy:

# Example: RFE
from sklearn.feature_selection import RFE
from sklearn.linear_model import LogisticRegression

X = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
y = [0, 1, 0]
model = LogisticRegression()
rfe = RFE(model, n_features_to_select=2)
rfe.fit(X, y)
print("Selected Features:", rfe.support_)

Ważność cech w modelach opartych na drzewach

Ważność cech w modelach opartych na drzewach

Modele oparte na drzewach, takie jak Random Forests, udostępniają wyniki ważności cech:

# Example: Feature importance
from sklearn.ensemble import RandomForestClassifier

X = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
y = [0, 1, 0]
model = RandomForestClassifier()
model.fit(X, y)
print("Feature Importances:", model.feature_importances_)

Typowe błędy w inżynierii cech

Typowe błędy w inżynierii cech

Oto kilka błędów, których należy unikać:

  • Tworzenie zbyt wielu cech, co może prowadzić do przeuczenia.
  • Ignorowanie potrzeby skalowania w algorytmach opartych na odległości.
  • Używanie wysoce skorelowanych cech, co powoduje redundancję.

Czego się nauczyliśmy?

Czego się nauczyliśmy?

W tej lekcji nauczyli się Państwo:

  • Jak ważną rolę odgrywają inżynieria cech i ich wybór w uczeniu maszynowym.
  • Technik tworzenia nowych cech i skalowania cech numerycznych.
  • Jak wybierać istotne cechy za pomocą metod takich jak RFE i modeli opartych na drzewach.
  • Typowych błędów, których należy unikać podczas inżynierii cech.

Świetnie! Przejdźmy do następnego tematu.

Inżynieria i wybór cech — ilustracja 11

Często zadawane pytania

Czy lekcja „Inżynieria i wybór cech” jest bezpłatna?

Tak — pełny tekst „Inżynieria i wybór cech” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Python Academy, przejdź na CoddyKit PRO. Kurs Python Academy zawiera 6 lekcji w sumie.

Co nauczysz się w „Inżynieria i wybór cech”?

Poznaj techniki zwiększania mocy predykcyjnej modeli Ćwiczysz Python Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Python Academy?

Nie wymagamy żadnego doświadczenia. Python Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 6.

Ile czasu zajmuje lekcja „Inżynieria i wybór cech”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Python Academy?

Tak. Każda lekcja Python Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Wprowadzenie do uczenia maszynowego
  2. Uczenie nadzorowane za pomocą Scikit-Learn
  3. Uczenie nienadzorowane
  4. Inżynieria i wybór cech
  5. Wprowadzenie do sieci neuronowych
  6. Wprowadzenie do TensorFlow i Keras
← Powrót do Python Academy