Տվյալների նախնական մշակումը կարևոր քայլ է մեքենայական ուսուցման խողովակաշարում, որը ներառում է չմշակված տվյալների վերափոխումը այնպիսի ձևաչափի, որը կարելի է հեշտությամբ հասկանալ ալգորիթմներով: Այն հաճախ կարող է բերել կամ կոտրել մեքենայական ուսուցման նախագծի հաջողությունը, քանի որ ելքի որակը մեծապես կախված է մուտքագրման որակից: Այս բլոգի գրառման մեջ մենք կուսումնասիրենք տվյալների նախնական մշակման որոշ հիմնական մեթոդներ՝ Python կոդով օգտագործվող գործնական օրինակներով:

  1. Տվյալների մաքրում.

Տվյալների մաքրումը ներառում է տվյալների հավաքածուի բացակայող կամ սխալ կետերի մշակում: Դա կարելի է անել՝ օգտագործելով տարբեր մեթոդներ, ինչպիսիք են՝ իմպուտացիան, հեռացումը կամ բացակայող արժեքների փոխարինումը: Ահա մի օրինակ, թե ինչպես կարելի է վերագրել բացակայող արժեքները տվյալների բազայում՝ օգտագործելով Pandas գրադարանը.

import pandas as pd
import numpy as np
# Load dataset
data = pd.read_csv("data.csv")
# Impute missing values with mean
mean = data.mean()
data.fillna(mean, inplace=True)

2. Տվյալների փոխակերպում.

Տվյալների փոխակերպումը ներառում է չմշակված տվյալների փոխակերպումը այնպիսի ձևաչափի, որը հարմար է մեքենայական ուսուցման ալգորիթմների համար: Ընդհանուր տեխնիկան ներառում է կարգաբերական փոփոխականների նորմալացում, մասշտաբավորում կամ կոդավորում: Ահա մի օրինակ, թե ինչպես կարելի է նորմալացնել տվյալները Scikit-learn գրադարանի միջոցով.

from sklearn.preprocessing import MinMaxScaler
# Load dataset
data = pd.read_csv("data.csv")
# Normalize data
scaler = MinMaxScaler()
normalized_data = scaler.fit_transform(data)

3. Առանձնահատկությունների ընտրություն.

Առանձնահատկությունների ընտրությունը ներառում է տվյալների շտեմարանի առավել համապատասխան հատկանիշների բացահայտում, որոնք, ամենայն հավանականությամբ, ուժեղ ազդեցություն կունենան արդյունքի վրա: Դա կարելի է անել՝ օգտագործելով տարբեր մեթոդներ, ինչպիսիք են հարաբերակցության վերլուծությունը կամ հատկանիշի կարևորությունը: Ահա մի օրինակ, թե ինչպես կարելի է կատարել առանձնահատկությունների ընտրություն՝ օգտագործելով Scikit-learn գրադարանը.

from sklearn.feature_selection import SelectKBest
from sklearn.feature_selection import chi2
# Load dataset
data = pd.read_csv("data.csv")
# Select top k features
X = data.iloc[:, :-1]
y = data.iloc[:, -1]
best_features = SelectKBest(score_func=chi2, k=3).fit(X, y)
X_new = best_features.transform(X)

(chi2-ը վիճակագրական թեստ է, որն օգտագործվում է երկու դասակարգային փոփոխականների միջև անկախությունը որոշելու համար: Հատկանիշի ընտրության ժամանակ chi2-ն օգտագործվում է յուրաքանչյուր հատկանիշի վիճակագրական նշանակությունը թիրախային փոփոխականի նկատմամբ հաշվարկելու համար: Բարձր chi2 միավորը ցույց է տալիս ուժեղ հարաբերակցությունը հատկանիշը և թիրախային փոփոխականը, ինչը մեծացնում է այն որպես համապատասխան հատկանիշ ընտրվելու հավանականությունը:

k-ը վերաբերում է լավագույն հատկանիշների քանակին, որոնք պետք է ընտրվեն՝ ելնելով նրանց chi2 միավորից: Բլոգի գրառման մեջ ներկայացված օրինակում k=3 նշանակում է, որ մենք ցանկանում ենք ընտրել ամենաբարձր chi2 միավորով լավագույն 3 հատկանիշները:)

Եզրափակելով, տվյալների նախնական մշակումը էական քայլ է մեքենայական ուսուցման խողովակաշարում, որը կարող է էապես ազդել արտադրանքի որակի վրա: Մենք ուսումնասիրել ենք տվյալների նախնական մշակման մեջ ներգրավված որոշ էական տեխնիկա, ինչպես նաև Python կոդը օգտագործող գործնական օրինակներ: Այս տեխնիկան տիրապետելով՝ դուք կարող եք համոզվել, որ ձեր մեքենայական ուսուցման մոդելները ամուր և ճշգրիտ են: