Skip to content

Commit 6027310

Browse files
committed
MOD:last tree not multiply learningrate
1 parent aa26f8a commit 6027310

4 files changed

Lines changed: 24 additions & 4 deletions

File tree

src/main/java/com/fenbi/ytklearn/predictor/GBHMLROnlinePredictor.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,12 @@ public double score(Map<String, Float> features, Object other) {
143143
int vidx = ((j + 1) << 1) - 1;
144144
mu[idx + j] = mu[idx + vidx] + mu[idx + vidx + 1];
145145
}
146-
fx += learningRate * mu[idx];
146+
if (tree < treeNum - 1) {
147+
fx += learningRate * mu[idx];
148+
} else {
149+
fx += mu[idx];
150+
}
151+
147152
idx += stride;
148153
idxg += K;
149154
}

src/main/java/com/fenbi/ytklearn/predictor/GBHSDTOnlinePredictor.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,12 @@ public double score(Map<String, Float> features, Object other) {
148148
int vidx = ((j + 1) << 1) - 1;
149149
mu[idxm + j] = mu[idxm + vidx] + mu[idxm + vidx + 1];
150150
}
151-
fx += learningRate * mu[idxm];
151+
152+
if (tree < treeNum - 1) {
153+
fx += learningRate * mu[idxm];
154+
} else {
155+
fx += mu[idxm];
156+
}
152157

153158
idx += K - 1;
154159
idxg += K;

src/main/java/com/fenbi/ytklearn/predictor/GBMLROnlinePredictor.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,12 @@ public double score(Map<String, Float> features, Object other) {
267267
lfx += gk_1 * wx[idx + stride - 1];
268268
gating[tree * K + K - 1] = gk_1;
269269

270-
fx += learningRate * lfx;
270+
if (tree < treeNum - 1) {
271+
fx += learningRate * lfx;
272+
} else {
273+
fx += lfx;
274+
}
275+
271276

272277
idx += stride;
273278
}

src/main/java/com/fenbi/ytklearn/predictor/GBSDTOnlinePredictor.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,12 @@ public double score(Map<String, Float> features, Object other) {
244244
lfx += gk_1 * leaf[tree][vstart - 1];
245245
gating[tree * K + K - 1] = gk_1;
246246

247-
fx += learningRate * lfx;
247+
if (tree < treeNum - 1) {
248+
fx += learningRate * lfx;
249+
} else {
250+
fx += lfx;
251+
}
252+
248253
idx += stride;
249254

250255
}

0 commit comments

Comments
 (0)