【发布时间】:2014-12-08 11:24:55
【问题描述】:
我正在实现一个 ID3,我发现熵有一些变化。以下两行是否等效?由于我需要以 2 为底的日志,所以第二个是否默认将其以 10 为底?
entropy += -probability * (Math.log(probability) / Math.log(2));
和
entropy += -probability * (Math.log(probability));
【问题讨论】:
-
第二个默认log10。第一个是正确的,如果你想得到log2。如果需要,您可以创建一个方法:
double log2(double n) { return Math.log(n) / Math.log(2); }