手动相似度测量练习

以下练习将引导您完成手动创建相似性指标的过程。

假设您有一个简单的房屋数据集,如下所示:

特征类型
价格正整数
大小正浮点值,以平方米为单位
邮政编码整数
卧室数量整数
房屋类型“single_family”、“multi-family”、“apartment”、“condo”的文本值
Garage0/1(表示否/是)
颜色多元分类:标准颜色“白色”、“黄色”、“绿色”等中的一个或多个值。

预处理

第一步是预处理数值特征:价格、大小、卧室数量和邮政编码。对于其中每项功能,您都需要执行不同的操作。例如,假设价格数据遵循双模分布。接下来您应该做些什么?

如果您的数据遵循双峰分布,您应该采取什么措施?
根据数据创建分位数,并缩放到 [0,1]。
当数据遵循双模分布时,这就是正确的步骤。
记录转换并缩放到 [0,1]。
实际上,当数据符合 Power-law 分布时,应执行此步骤。
归一化并缩放到 [0,1]。
这是数据遵循高斯分布而需要执行的步骤。

在下面的字段中,尝试说明如何处理尺寸数据。

在下面的字段中,尝试说明如何处理卧室数量的数据。

您应该如何表示邮政编码?将邮政编码转换为经度和纬度。然后,像处理其他数值一样处理这些值。

计算每个特征的相似度

现在,您需要计算每个特征的相似度了。对于数值特征,您只需要找出不同之处。对于二元特征(例如一栋房子有车库),您还可以找到它们的差值,得出 0 或 1。那么分类特征呢?请回答下面的问题,了解相关信息。

下列哪项特征是多个值(可以有多个值)?
颜色
给定住宅可以有多种颜色,例如蓝色和白色内饰。因此,颜色是多价地图项。
邮政编码
任何住宅只能有一个邮政编码。这是一项统一的功能。
类型
您的住宅只能是一种房型、住宅、公寓、共管公寓等,这意味着它是一个一元化功能。
在计算多值特征的相似度时,您应该使用哪种类型的相似度衡量?
Jaccard 相似度
假设住宅使用一组固定的颜色来指定颜色。然后,使用常用值的比率(Jaccard 相似性)来计算相似度。
欧几里得距离
对于仅具有一个值(单元特征)的“邮政编码”和“类型”特征,如果特征匹配,则相似度测量值为 0;否则,相似度测量值为 1。

计算总体相似度

您已使用数值计算了每个特征的相似度。但是,聚类算法需要与集群房屋的整体相似性。使用均方根误差 (RMSE) 合并每个特征的相似度,即可计算一对房子之间的总体相似度。也就是说,\(s_1,s_2,\ldots,s_N\) 表示特征的相似之处 \(N\) :

\[\text{RMSE} = \sqrt{\frac{s_1^2+s_2^2+\ldots+s_N^2}{N}}\]

手动相似性衡量功能的限制

如本练习所示,当数据变得复杂时,处理和组合数据变得越来越难以通过语义上有意义的方式来衡量相似性。考虑颜色数据。颜色真的应该分类吗?还是应该分配红色和深红色等颜色,使其具有比黑白颜色更高的相似度?至于组合数据,我们只是将车库特征与房价加权在一起。不过,车库价格比车库更重要。真的要平等地衡量它们吗?

如果您创建的相似度测量不能真正反映示例之间的相似度,则派生的聚类没有意义。分类数据经常出现这种情况,并将我们引进监督措施。