Skip to content

Commit be991c1

Browse files
committed
din't inherit from Huber
1 parent e4888d9 commit be991c1

File tree

2 files changed

+32
-33
lines changed

2 files changed

+32
-33
lines changed

examples/plot_smooth_quantile.py

Lines changed: 31 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -44,39 +44,38 @@ def plot_quantile_huber():
4444
plt.show()
4545

4646

47-
if __name__ == "__main__":
48-
X, y = create_data()
49-
tau = 0.8
47+
X, y = create_data()
48+
tau = 0.8
5049

51-
start = time.time()
52-
sk = QuantileRegressor(quantile=tau, alpha=0.1, fit_intercept=False)
53-
sk.fit(X, y)
54-
sk_time = time.time() - start
55-
sk_pred = sk.predict(X)
56-
sk_cov = np.mean(y <= sk_pred)
57-
sk_pinball = pinball_loss(y - sk_pred, tau)
50+
start = time.time()
51+
sk = QuantileRegressor(quantile=tau, alpha=0.1, fit_intercept=False)
52+
sk.fit(X, y)
53+
sk_time = time.time() - start
54+
sk_pred = sk.predict(X)
55+
sk_cov = np.mean(y <= sk_pred)
56+
sk_pinball = pinball_loss(y - sk_pred, tau)
5857

59-
start = time.time()
60-
qh = SmoothQuantileRegressor(
61-
quantile=tau,
62-
alpha=0.1,
63-
delta_init=0.5,
64-
delta_final=0.05,
65-
n_deltas=5,
66-
verbose=True
67-
)
68-
qh.fit(X, y)
69-
qh_time = time.time() - start
70-
qh_pred = qh.predict(X)
71-
qh_cov = np.mean(y <= qh_pred)
72-
qh_pinball = pinball_loss(y - qh_pred, tau)
58+
start = time.time()
59+
qh = SmoothQuantileRegressor(
60+
quantile=tau,
61+
alpha=0.1,
62+
delta_init=0.5,
63+
delta_final=0.05,
64+
n_deltas=5,
65+
verbose=True
66+
)
67+
qh.fit(X, y)
68+
qh_time = time.time() - start
69+
qh_pred = qh.predict(X)
70+
qh_cov = np.mean(y <= qh_pred)
71+
qh_pinball = pinball_loss(y - qh_pred, tau)
7372

74-
print(f"{'Method':<12} {'Q':<4} {'Coverage':<8} {'Time':<6} "
75-
f"{'Pinball':<8}")
76-
print("-" * 55)
77-
print(f"{'Sklearn':<12} {tau:<4} {sk_cov:<8.3f} {sk_time:<6.3f} "
78-
f"{sk_pinball:<8.4f}")
79-
print(f"{'QuantileHuber':<12} {tau:<4} {qh_cov:<8.3f} {qh_time:<6.3f} "
80-
f"{qh_pinball:<8.4f}")
73+
print(f"{'Method':<12} {'Q':<4} {'Coverage':<8} {'Time':<6} "
74+
f"{'Pinball':<8}")
75+
print("-" * 55)
76+
print(f"{'Sklearn':<12} {tau:<4} {sk_cov:<8.3f} {sk_time:<6.3f} "
77+
f"{sk_pinball:<8.4f}")
78+
print(f"{'QuantileHuber':<12} {tau:<4} {qh_cov:<8.3f} {qh_time:<6.3f} "
79+
f"{qh_pinball:<8.4f}")
8180

82-
plot_quantile_huber()
81+
plot_quantile_huber()

skglm/experimental/quantile_huber.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from skglm.estimators import GeneralizedLinearEstimator
99

1010

11-
class QuantileHuber(Huber):
11+
class QuantileHuber():
1212
r"""Quantile Huber loss for quantile regression.
1313
1414
Implements the smoothed pinball loss:

0 commit comments

Comments
 (0)