Skip to content

Commit 7dd79cc

Browse files
committed
修复信息熵计算中的除零错误 fix hankcs#1366
1 parent 477bae1 commit 7dd79cc

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/main/java/com/hankcs/hanlp/corpus/occurrence/Occurrence.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -364,11 +364,18 @@ public void compute()
364364
for (Map.Entry<String, PairFrequency> entry : entrySetPair)
365365
{
366366
PairFrequency value = entry.getValue();
367-
value.score = value.mi / total_mi + value.le / total_le+ value.re / total_re; // 归一化
367+
value.score = safeDivide(value.mi, total_mi) + safeDivide(value.le, total_le) + safeDivide(value.re, total_re); // 归一化
368368
value.score *= entrySetPair.size();
369369
}
370370
}
371371

372+
private static double safeDivide(double x, double y)
373+
{
374+
if (y == 0)
375+
return 0;
376+
return x / y;
377+
}
378+
372379
/**
373380
* 获取一阶共现,其实就是词频统计
374381
* @return

0 commit comments

Comments
 (0)