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

节点分类、链路预测和社区检测的评价指标

文章目录

  • 前言
  • 一、节点分类的评价指标
    • 1. **混淆矩阵 (Confusion Matrix)**
    • 2. **准确率 (Accuracy)**
    • 3. **精确率 (Precision)**
    • 4. **召回率 (Recall)**
    • 5. **F1分数 (F1 Score)**
    • 6. **ROC曲线和AUC值 (Receiver Operating Characteristic and Area Under Curve)**
  • 二、链路预测的评价指标
    • 1. **AUC (Area Under Curve)**
    • 2. **Precision@L**
    • 3. **Ranking Score**
  • 三、社区检测的评价指标
    • 1. **模块度 (Modularity)**
    • 2. **标准化互信息 (Normalized Mutual Information, NMI)**
  • 总结


前言

开始跑代码,先搞清楚评价指标,才能修改优化代码。


提示:以下是本篇文章正文内容,下面案例可供参考

一、节点分类的评价指标

1. 混淆矩阵 (Confusion Matrix)

  • 含义:混淆矩阵是一个用于评估分类模型性能的表格,它显示了实际类别和算法预测类别之间的关系。

  • 表格
    | 真实/预测 \ 实际 | 预测正类 (Predicted Positive) | 预测负类 (Predicted Negative) |

    |:------------------|:----------------------------|:----------------------------|

    | 实际正类 (Actual Positive) | True Positive (TP) | False Negative (FN) |

    | 实际负类 (Actual Negative) | False Positive (FP) | True Negative (TN) |

2. 准确率 (Accuracy)

  • 计算:[ \text{Accuracy} = \frac{TP + TN}{TP + TN + FP + FN} ]
  • 含义:表示整个分类结果中正确分类的比例。

3. 精确率 (Precision)

  • 计算:[ \text{Precision} = \frac{TP}{TP + FP} ]
  • 含义:表示对于预测为正类别的样本中,实际为正类别的比例。

4. 召回率 (Recall)

  • 计算:[ \text{Recall} = \frac{TP}{TP + FN} ]
  • 含义:表示对于实际为正类别的样本中,被正确预测为正类别的比例。

5. F1分数 (F1 Score)

  • 计算:[ \text{F1 Score} = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}} ]
  • 含义:是精确率和召回率的调和平均值,用于衡量算法的综合性能。

6. ROC曲线和AUC值 (Receiver Operating Characteristic and Area Under Curve)

  • 含义
    • ROC曲线是一个用来展示分类模型在所有可能的分类阈值下的性能图。
    • 它通过绘制真正率(召回率)和假正率来展示模型的性能。
  • 计算
    • 真正率(True Positive Rate, TPR):也称为召回率或灵敏度,是模型正确预测为正类(第一类)的样本占所有实际正类样本的比例。计算公式为 [ \text{TPR} = \frac{TP}{TP + FN} ]
    • 假正率(False Positive Rate, FPR):是模型错误预测为正类的样本占所有实际负类(第二类)样本的比例。计算公式为 [ \text{FPR} = \frac{FP}{FP + TN} ]
  • 绘制方法
    • 横轴是假正率(FPR),纵轴是真正率(TPR)。
    • 不同的点代表不同的分类阈值,模型的分类阈值改变时,会在ROC曲线上移动。
    • 曲线下面积(AUC)越大,模型的性能越好。
  • AUC值
    • AUC值是ROC曲线下的面积,用来量化整个ROC曲线的总体性能。
    • AUC值的范围从0到1,AUC值越接近1,说明模型的分类性能越好;AUC值越接近0.5,说明模型的分类性能接近随机猜测。
  • 计算
    • AUC值可以通过计算ROC曲线下的梯形面积获得。
    • 在实际应用中,通常使用数值积分方法或梯形法则来近似计算AUC值。

二、链路预测的评价指标

1. AUC (Area Under Curve)

  • 计算:AUC通过比较测试集中存在的边和不存在的边的相似值来评估算法的性能。具体来说,是绘制ROC曲线(真正率对假正率的图)并计算曲线下的面积。
  • 含义:AUC值衡量算法区分实际边和非边对的能力。AUC值越高,模型的预测能力越好。

2. Precision@L

  • 计算:Precision@L是仅考虑排名前L的预测链接的精确率。计算公式为 [ \text{Precision@L} = \frac{\text{排名前L的预测链接中正确的数量}}{L} ]
  • 含义:衡量模型在给定的前L个预测中预测正确的比例。这个指标有助于了解模型在最有可能的预测中的表现。

3. Ranking Score

  • 计算:Ranking Score基于节点对的排名来评价预测性能。具体来说,是计算测试集中的边和不存在的边的相似值的排名,并根据排名顺序给出分数。

  • 含义:衡量算法预测的边的排名质量。一个高的Ranking Score意味着好的预测性能,即正确的链接更有可能被排在前面。

三、社区检测的评价指标

1. 模块度 (Modularity)

  • 计算:模块度是通过以下公式计算的 [ \text{Modularity} = \frac{1}{2m} \sum_{i,j} \left[ A_{ij} - \frac{d_i d_j}{2m} \right] \delta(C_i, C_j) ],其中( A_{ij} )是邻接矩阵中的元素,( d_i )和( d_j )是节点的度,( \delta(C_i, C_j) )是一个指示函数,如果节点i和j在同一社区则为1,否则为0。

  • 含义:模块度衡量网络被划分的社区结构的紧密程度。值越高,表示社区内部连接越紧密,社区间的连接越稀疏,因此社区划分质量越好。

2. 标准化互信息 (Normalized Mutual Information, NMI)

  • 计算:NMI是通过以下公式计算的 [ \text{NMI}(R,F) = \frac{2 \times \sum_{i,j} N_{ij} \log \left(\frac{N_{ij}}{N_i^* N_j^}\right)}{\sum_i N_i^ \log \left(\frac{N_i^}{S}\right) + \sum_j N_j^ \log \left(\frac{N_j^}{S}\right)} ],其中( N_{ij} )是真实社区i和算法得到的社区j之间共有的节点数,( N_i^ )和( N_j^* )分别是真实社区i和算法得到的社区j中的节点总数,S是网络中的总节点数。
  • 含义:NMI衡量算法得到的社区划分与真实社区划分之间的相似度。值越高,表示算法得到的社区划分与真实社区划分越相似。

总结

待完善,吸收,学习


http://www.mrgr.cn/news/36150.html

相关文章:

  • 【C++ Primer Plus习题】17.7
  • DBAPI如何实现插入数据前先判断数据是否存在,存在就更新,不存在就插入
  • 机器学习算法与Python实战 | 三万字详解!GPT-5:你需要知道的一切(上)建议收藏!
  • OpenCV4.8 开发实战系列专栏之 01- 环境搭建与图像读写
  • 使用 from __future__ import annotations 语句来允许在类型注释中使用尚未定义的类名
  • centos7安装Redis单机版
  • AI时代下的程序员:如何应对技术变革与提升竞争力
  • 先进封装技术 Part01---“凸块”(Bump)科普
  • 小孩真的需要手机上学吗?怎样远程了解他在学校用iPhone干什么?
  • 工作安排 - 华为OD统一考试(E卷)
  • Educational Codeforces Round 20 F. Coprime Subsequences(DP+容斥)
  • 深入解析网络通信关键要素:IP 协议、DNS 及相关技术
  • 股价上涨210%后,目标价又被花旗大幅上调,AppLovin还能继续上涨吗?
  • 前端文件上传全过程
  • PG逻辑订阅功能
  • 尚硅谷MyBatis笔记
  • Spring 的作用和优势
  • 省市区乡村五级地址库
  • C/C++语言基础--C++类数据、静态与非静态、常成员、友员、成员变量与函数指针等相关知识点
  • 3. 轴指令(omron 机器自动化控制器)——>MC_MoveZeroPosition