背景
基于由RDKit和mordred等描述符计算生成的特征进行化合物的机器学习时,由于特征数量大且存在过拟合的可能,因此有必要进行特征选择。尝试了scikit-learn的VarianceTheshold,一种基本的特征选择算法。
什么是方差阈值
可删除不满足给定方差的样本特征。默认情况下,将删除0方差,即所有样本具有相同值的要素。作为另一个示例,描述了一个示例,其中相对于布尔值0和1的特征,80%或更多的样本删除了0或1的特征。在这种情况下,如果样本假定值0和1遵循伯努利随机变量,则方差为0.8 *(1-0.8),因此可以将其作为参数给出。
导入库
import pandas as pd
import numpy as np
import matplotlib.pylab as plt
from rdkit import Chem
from rdkit.Chem import Descriptors
from rdkit.ML.Descriptors import MoleculeDescriptors
%matplotlib inline
载入数据
数集包含1513种化合物