当前位置: 首页 > news >正文

评估聚类效果

本关任务

本关实现准确度评估函数,来评估聚类算法的效果。

相关知识

在前三个关卡中,我们学习了 K-measn 聚类算法中,三个比较关键的组成部分,包括欧几里得距离计算公式、找出每个样本的最近邻簇中心和重新计算每个簇的聚类中心。本关卡中,我们将学习评估聚类算法优劣的方法。

通常对于一个具有 K 个簇的数据集 {(x,y)},x 是单个样本,y (1<=y<=K)是其所在的簇标识。我们的聚类算法会针对每个样本 x 输出一个他所在的簇,记为y'(1<=y'<=K)。为了评估聚类算法的效果,我们需要比较算法得出的 y'和实际数据集中的簇 y 的差异。

一种比较常见的评估聚类算法好坏的指标就是精度,定义为:

Accu\fracy(yˉ​,y)=i∑n​I(yˉ​i​=yi​)/N

其中 N 是数据集中的样本个数,公式:

I(yˉ​i​=yi​)

代表比较函数,若两者相等则输出 1,否则输出 0。

编程要求

本关卡要求你实现函数 acc,在右侧编辑器 Begin-End 区间补充代码,需要填充的代码块如下:

 
  1. # -*- coding: utf-8 -*-
  2. def acc(x1, x2):
  3. """计算精度
  4. 参数:
  5. x1 - numpy数组
  6. x2 - numpy数组
  7. 返回值:
  8. value - 浮点数,精度
  9. """
  10. value = 0
  11. # 请在此添加实现代码 #
  12. #********** Begin *********#
  13. #********** End ***********#
  14. return value
测试说明

平台将对你的函数输入两个整数向量,比对函数 acc 的输出结果与正确结果的差异,只有完全正确才能通关。

代码:

# -*- coding: utf-8 -*-
def acc(x1, x2):
    """计算精度
    参数:
        x1 - numpy数组
        x2 - numpy数组
    返回值:
        value - 浮点数,精度
    """
    value = 0
    #   请在此添加实现代码     #
    #********** Begin *********#
    import numpy as np
    value = float(np.sum(x1==x2))/len(x1)
    #********** End ***********#
    return value

相关文章:

  • MySQL提权之UDF提权
  • 假期已结束,大家都开始上班了吗
  • sqli-labs 靶场 less-11~14 第十一关、第十二关、第十三关、第十四关详解:联合注入、错误注入
  • [word] word如何清除超链接 #媒体#笔记#知识分享
  • NSSCTF-Web题目5
  • Faiss assertion ‘err == cudaSuccess‘ failed in void faiss::gpu:runL2Norm()
  • LangChain开发【NL2SQL】应用
  • Web前端管理系统项目:深度解析与实现之道
  • ROS使用手柄/cmd_vel无输出
  • 【Anaconda】 anaconda常用命令总结
  • 德克萨斯大学奥斯汀分校自然语言处理硕士课程汉化版(第六周) - 预训练模型
  • Golang 避坑指南
  • 鸿蒙轻内核M核源码分析系列七 动态内存Dynamic Memory
  • 【算法篇】滑动窗口的最大值JavaScript版
  • @并行计算和分布式计算解决方案
  • uniapp使用webview内嵌H5的注意事项
  • 渗透测试之内核安全系列课程:Rootkit技术初探(一)
  • 朗思RPA,一款无需代码的自动化效率神器
  • 大数据之Hadoop的特点是什么?有什么优缺点?有哪些发行版本?
  • WDF驱动开发-电源策略(三)
  • 成为中国骑手“孵化器”,环球马术冠军赛是最好的历练舞台
  • 朝中社:美在朝鲜半岛增兵将进一步增加其本土安全不确定性
  • 美国将于6月14日举行阅兵式,美媒报当天是特朗普生日
  • 马克思主义理论研究教学名师系列访谈|薛念文:回应时代课题,才能彰显强大生命力
  • 《大风杀》上海首映,白客说拍这戏是从影以来的最大挑战
  • 受天气等影响SC8041航班三次备降延误超12小时,山航致歉