การลบฟีเจอร์ที่มีความสัมพันธ์สูง

การลดมิติข้อมูลใน Python

Jeroen Boeye

Head of Machine Learning, Faktion

ข้อมูลที่มีความสัมพันธ์สูง

pairplot ของข้อมูลที่มีความสัมพันธ์สูง

การลดมิติข้อมูลใน Python

ฟีเจอร์ที่มีความสัมพันธ์สูง

เมทริกซ์ความสัมพันธ์สูง

การลดมิติข้อมูลใน Python

การลบฟีเจอร์ที่มีความสัมพันธ์สูง

# Create positive correlation matrix
corr_df = chest_df.corr().abs()

# Create and apply mask mask = np.triu(np.ones_like(corr_df, dtype=bool))
tri_df = corr_df.mask(mask) tri_df

การลดมิติข้อมูลใน Python

การลบฟีเจอร์ที่มีความสัมพันธ์สูง

# Find columns that meet threshold 
to_drop = [c for c in tri_df.columns if any(tri_df[c] > 0.95)]

print(to_drop)
['Suprasternale height', 'Cervicale height']
# Drop those columns
reduced_df = chest_df.drop(to_drop, axis=1)
การลดมิติข้อมูลใน Python

การคัดเลือกฟีเจอร์

แผนผังการคัดเลือกฟีเจอร์

การสกัดฟีเจอร์

แผนผังการสกัดฟีเจอร์

การลดมิติข้อมูลใน Python

ข้อควรระวังเรื่องความสัมพันธ์ - Anscombe's quartet

Anscombe's quartet

การลดมิติข้อมูลใน Python

ข้อควรระวังเรื่องความสัมพันธ์ - การเป็นสาเหตุ

sns.scatterplot(x="N firetrucks sent to fire", 
                y="N wounded by fire",data=fire_df)

รถดับเพลิง vs. ผู้บาดเจ็บ

การลดมิติข้อมูลใน Python

มาฝึกกันเถอะ!

การลดมิติข้อมูลใน Python

Preparing Video For Download...