【问题标题】:Developing a web bot crawler system after clustering the bots在集群机器人之后开发一个网络机器人爬虫系统
【发布时间】:2016-07-01 22:16:35
【问题描述】:

我正在尝试识别一段时间内的热门 IP。

我对某些特征进行了聚类,得到了 12 个聚类输出,其中 8 个是机器人,4 个是人类,根据聚类的质心值。

现在我可以使用什么技术来分析集群内的数据,以便知道集群内的数据点在正确的集群中。

换句话说,是否有任何统计方法可以检查集群的质量?

我能想到的是,如果我取一个位于集群边界的数据点,如果我测量这个点与其他质心和它自己的质心的距离,那么我能知道如何关闭这两个集群对我来说很重要,可能我的数据在集群中划分得有多好??

请指导如何衡量我的集群的质量,关于数据点以及这样做的标准技术是什么。

提前致谢。!! 干杯。!

【问题讨论】:

    标签: machine-learning cluster-computing cluster-analysis k-means


    【解决方案1】:

    使用 k-means,您很可能已经有一大堆垃圾。因为它是一种非常粗糙的启发式方法,除非您在设计特征时非常小心(此时您已经知道如何检查集群分配的质量),否则结果几乎不会比随机选择几个质心好。特别是对于 k-means,它对特征的规模非常敏感。如果您具有不同类型和规模的特征(例如身高、鞋码、体重、BMI:这些变量的 k-means 是统计上的废话),则结果非常不可靠。

    不要不要将您的数据转储到聚类算法中并期望得到有用的东西。聚类遵循 GIGO 原则:garbage-in-garbage-out。相反,您需要执行以下操作:

    1. 确定在您的域中什么是好的集群。这非常依赖数据和问题。
    2. 选择目标非常相似的聚类算法。
    3. 找到聚类算法的数据转换、距离函数或修改以与您的目标保持一致
    4. 仔细检查结果中是否存在琐碎的、不需要的、有偏见的和随机的解决方案。

    例如,如果你盲目地将客户数据投入到聚类算法中,它很可能会决定最佳答案是 2 个聚类,对应于属性“gender=m”和“gender=f”,因为这是数据中最极端的因素。但是因为这是一个知道的属性,所以这个结果是完全没有用的。

    【讨论】:

    • 您好 Anony,但如果我使用碎石图在 K-means 中找到 K 的值,那么 K 的值取决于我使用的数据集。一旦我找到了正确的 K,我就可以运行 K-means 来对数据点进行聚类。然后我将根据我的要求评估每个集群并检查每个集群内数据点的同质性。你觉得这个想法对吗??!!
    • 当然,这取决于数据集,并且有一个最好的垃圾解决方案。 k-means 的问题在于它返回一个结果,即使它不能很好地工作。 检查 k-means 目标函数,它对您的数据和 属性 是否有意义(您没有提及您使用的属性...但例如 IP 地址可以是用作“数字”,但没有意义)?
    猜你喜欢
    • 1970-01-01
    • 2015-11-16
    • 2012-10-04
    • 2014-03-30
    • 1970-01-01
    • 1970-01-01
    • 2020-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多