图数据的机器学习特征工程与分析
1. 数据预处理与异常值处理
在处理图数据时,我们首先发现数据中存在一些异常值。部分三元组存在错误,比如维基百科中城市人口数据的书写错误,将 1,000,000 写成 1.000.000 等。还有一些小镇和小村庄,当前人口不足 1000 人,但在 GeoNames 构建列表时可能超过 1000 人。根据异常值处理的原则,这些数据属于值得从数据集中移除的异常值。通过 Cell 16 移除了这些异常值,涉及 44,959 个城市,但这些数据仍保留在最终的测试数据中,以便评估其在实际生产中的影响。
2. 探索性数据分析与模型选择
接下来,我们尝试为机器学习算法进行探索性数据分析(EDA),需要确定算法并决定如何对基础特征化中的字符串数据进行特征化。我们首先尝试使用支持向量回归(SVR),以径向基函数(RBFs)作为核函数(Cell 17)。SVR 有两个参数 C 和 epsilon,通过网格搜索对它们进行调优(这实际上是使它们过度拟合开发集),得到均方根误差(RMSE)为 0.6179,曲线拟合情况如图 6.4(a) 所示。需要注意的是,SVR 需要将其变量缩放至 1.0 并以零为中心,这一技术在之前有过讨论。
虽然对于单个特征而言,RMSE 表现不错(小于一个数量级),且图的底部平坦可以解释为 SVR 只有一个支持向量(来自单个特征),但该图似乎并不能很好地跟踪曲线。为了确定这是 SVR 算法的问题还是特征的问题,Cell 18 将两者进行了绘图比较。图 6.5 显示存在相关性,但较弱,由此得出 SVR 算法从该单个特征中提取的信息已经是该特征所能提供的最佳信息。确定使用 SVR 后,我们开始构建第一个特征集。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



