最近做图神经网络相关内容的时候,发现相关的损失函数和评价指标方面的内容还有所欠缺,借着周日的总结的机会,大致的总结一下。
① 交叉熵损失函数
这个函数出现在节点分类中,主要是多分类和二分类。
二分类问题:
其中,
多分类问题
需要注意的是输入数据是softmax或者是sigmoid的输出。 在GCN的鼻祖论文中损失函数就是采用的上面的损失函数,只不过稍加改变为半监督分类中的损失函数:
其中,
到目前为止,见到的也就是上面的这种损失函数判断分类损失,为了避免以后遇到更多,所以把机器学习常见的加以总结。
② L2损失函数
公式如下:
其中
③ L1损失
和式子②的区别在于采用绝对值度量。
④ Hinge 损失函数
标准形式如下:
其中,0表示分类正确的损失,
在阅读过多的论文之中,评价指标一般采用四种,准确率、F1、Micro-F1及Macro-F1。
首先先记录一下基本的概念,TP、FP、FN及TN,精确率和召回率
精确率:
召回率:
F1-score
Micro-F1
通过先计算总体的TP,FN和FP的数量,再计算F1
例子(来源):
一共包含四类,1,2,3,4即(ABCD)
实际的标签:1 1 1 1 1 2 2 2 2 3 3 3 4 4
预测的标签:1 1 1 0 0 2 2 3 3 3 4 3 4 3
得到的结果如下表:
新的
Macro-F1
计算各类的
分布计算每个类别的F1,然后做平均(各类别F1的权重相同)