Skip to content

Commit 416c152

Browse files
Allen-Hao-Huangnorvig
authored andcommitted
changed cross validation wrapper (aimacode#346)
is supposed to return an answer when errT converges, not errV used to return size of when err_val converges but is supposed to return the size with minimum err_val
1 parent c25fc70 commit 416c152

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

learning.py

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -949,13 +949,20 @@ def cross_validation_wrapper(learner, dataset, k=10, trials=1):
949949
err_val = []
950950
err_train = []
951951
size = 1
952+
952953
while True:
953954
errT, errV = cross_validation(learner, size, dataset, k)
954955
# Check for convergence provided err_val is not empty
955-
if (err_val and isclose(err_val[-1], errV, rel_tol=1e-6)):
956-
best_size = size
957-
return learner(dataset, best_size)
958-
956+
if (err_train and isclose(err_train[-1], errT, rel_tol=1e-6)):
957+
best_size = 0
958+
min_val = math.inf
959+
960+
i = 0
961+
while i<size:
962+
if err_val[i] < min_val:
963+
min_val = err_val[i]
964+
best_size = i
965+
i += 1
959966
err_val.append(errV)
960967
err_train.append(errT)
961968
print(err_val)

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy