特征提取

Python 中的降维

Jeroen Boeye

Head of Machine Learning, Faktion

特征选择

特征选择示意图

Python 中的降维

特征选择

特征选择示意图

特征提取

特征提取示意图

Python 中的降维

特征生成——BMI

df_body['BMI'] = df_body['Weight kg'] /  df_body['Height m'] ** 2
Python 中的降维

特征生成——BMI

df_body['BMI'] = df_body['Weight kg'] /  df_body['Height m'] ** 2
Weight kg Height m BMI
81.5 1.776 25.84
72.6 1.702 25.06
92.9 1.735 30.86
Python 中的降维

特征生成——BMI

df_body.drop(['Weight kg', 'Height m'], axis=1)
BMI
25.84
25.06
30.86
Python 中的降维

特征生成——均值

left leg mm right leg mm
882 885
870 869
901 900

leg_df['leg mm'] = leg_df[['right leg mm', 'left leg mm']].mean(axis=1)
Python 中的降维

特征生成——均值

leg_df.drop(['right leg mm', 'left leg mm'], axis=1)
leg mm
883.5
869.5
900.5
Python 中的降维

取均值的代价

右腿 vs 左腿

Python 中的降维

取均值的代价

右腿 vs 左腿(放大)

Python 中的降维

取均值的代价

右腿 vs 左腿(放大含线)

Python 中的降维

取均值的代价

右腿 vs 左腿(放大含标注)

Python 中的降维

PCA 入门

sns.scatterplot(data=df, x='handlength', y='footlength')

手长 vs 脚长

Python 中的降维

PCA 入门

scaler = StandardScaler()
df_std = pd.DataFrame(scaler.fit_transform(df), columns = df.columns)

手长 vs 脚长

Python 中的降维

PCA 入门

scaler = StandardScaler()
df_std = pd.DataFrame(scaler.fit_transform(df), columns = df.columns)

手长 vs 脚长(含参考点)

Python 中的降维

PCA 入门

scaler = StandardScaler()
df_std = pd.DataFrame(scaler.fit_transform(df), columns = df.columns)

手长 vs 脚长(第一主向量)

Python 中的降维

PCA 入门

scaler = StandardScaler()
df_std = pd.DataFrame(scaler.fit_transform(df), columns = df.columns)

手长 vs 脚长(两个主向量)

Python 中的降维

Passons à la pratique !

Python 中的降维

Preparing Video For Download...