Browse Source

[FIX] Fix bugs in EasyMarket

tags/v0.3.2
Gene 3 years ago
parent
commit
22264d3f76
3 changed files with 12 additions and 17 deletions
  1. +10
    -3
      examples/example_pfs/main.py
  2. +0
    -12
      examples/example_pfs/t
  3. +2
    -2
      learnware/market/easy.py

+ 10
- 3
examples/example_pfs/main.py View File

@@ -121,6 +121,10 @@ class PFSDatasetWorkflow:
pfs = Dataloader()
idx_list = pfs.get_idx_list()
os.makedirs("./user_spec", exist_ok=True)
sinle_score_list = []
random_score_list = []
job_selector_score_list = []
ensemble_score_list = []

for idx in idx_list:
train_x, train_y, test_x, test_y = pfs.get_idx_data(idx)
@@ -142,10 +146,11 @@ class PFSDatasetWorkflow:
print(
f"single model num: {len(sorted_score_list)}, max_score: {sorted_score_list[0]}, min_score: {sorted_score_list[-1]}"
)
for score, learnware in zip(sorted_score_list[:5], single_learnware_list[:5]):
loss_list = []
for score, learnware in zip(sorted_score_list, single_learnware_list):
pred_y = learnware.predict(test_x)
loss = pfs.score(test_y, pred_y)
print(f"score: {score}, learnware_id: {learnware.id}, loss: {loss}")
loss_list.append(pfs.score(test_y, pred_y))
print(f"Top1-score: {sorted_score_list[0]}, learnware_id: {learnware.id}, loss: {loss_list[-1]}")

mixture_id = " ".join([learnware.id for learnware in mixture_learnware_list])
print(f"mixture_score: {mixture_score}, mixture_learnware: {mixture_id}")
@@ -155,6 +160,8 @@ class PFSDatasetWorkflow:
reuse_score = pfs.score(test_y, reuse_predict)
print(f"mixture reuse loss: {reuse_score}\n")

sinle_score_list.append()


if __name__ == "__main__":
fire.Fire(PFSDatasetWorkflow)

+ 0
- 12
examples/example_pfs/t View File

@@ -1,12 +0,0 @@
NAME
main.py

SYNOPSIS
main.py COMMAND

COMMANDS
COMMAND is one of the following:

prepare_learnware

test

+ 2
- 2
learnware/market/easy.py View File

@@ -624,9 +624,9 @@ class EasyMarket(BaseMarket):
# learnware_list = list(set(learnware_list_tags + learnware_list_description))

if "RKMEStatSpecification" not in user_info.stat_info:
return None, learnware_list, None
return None, learnware_list, 0.0, None
elif len(learnware_list) == 0:
return [], [], []
return [], [], 0.0, []
else:
user_rkme = user_info.stat_info["RKMEStatSpecification"]
learnware_list = self._filter_by_rkme_spec_dimension(learnware_list, user_rkme)


Loading…
Cancel
Save