EpistasisLab / EpistasisLab/Aliro

AI (AutoML) feature not working on recent builds - hash mismatch

Open
#306 9 comments 0 reactions 1 assignee Assigned to @HyunjunA View on GitHub
Dominant language
JavaScript
Stars
238
Forks
60
PR merge metrics
No merged PRs in 30d

Description

Recent changes seem to have 'broken' the AI feature. Regular ML algorithms can be run, but the "AI" button in the upper right corner of each database on the "Databases" dashboard seems to be permanently inactive.

I have tested this on both a MacOS laptop and on a Raspberry Pi 400. Interestingly, although the AI feature doesn't work on either of them, an informative error message is only given on the Raspberry Pi.

Excerpt from the Raspberry PI logs:

```
...
lab_1 | 1|ai | surprise_recommenders: INFO: setting training data...
lab_1 | 1|ai | base: INFO: updating hash_2_param...
lab_1 | 1|ai | base: INFO: storing parameter hash...
lab_1 | 1|ai | surprise_recommenders: INFO: append and drop dupes
lab_1 | 1|ai | surprise_recommenders: INFO: load_from_df
lab_1 | 1|ai | surprise_recommenders: ERROR: the results_df hash from the pickle is different
lab_1 | 1|ai | Traceback (most recent call last):
lab_1 | 1|ai | File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
lab_1 | 1|ai | "__main__", mod_spec)
lab_1 | 1|ai | File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
lab_1 | 1|ai | exec(code, run_globals)
lab_1 | 1|ai | File "/appsrc/ai/ai.py", line 662, in
lab_1 | 1|ai | main()
lab_1 | 1|ai | File "/appsrc/ai/ai.py", line 631, in main
lab_1 | 1|ai | term_condition=args.TERM_COND, max_time=args.MAX_TIME)
lab_1 | 1|ai | File "/appsrc/ai/ai.py", line 186, in __init__
lab_1 | 1|ai | self.initialize_recommenders(rec_class) # set self.rec_engines
lab_1 | 1|ai | File "/appsrc/ai/ai.py", line 247, in initialize_recommenders
lab_1 | 1|ai | self.rec_engines[pred_type] = rec_class(**recArgs)
lab_1 | 1|ai | File "/appsrc/ai/recommender/surprise_recommenders.py", line 126, in __init__
lab_1 | 1|ai | random_state=random_state)
lab_1 | 1|ai | File "/appsrc/ai/recommender/base.py", line 165, in __init__
lab_1 | 1|ai | serialized_rec_filename)
lab_1 | 1|ai | File "/appsrc/ai/recommender/base.py", line 195, in _train_empty_rec
lab_1 | 1|ai | self.load(self.serialized_rec_path, knowledgebase_results)
lab_1 | 1|ai | File "/appsrc/ai/recommender/surprise_recommenders.py", line 175, in load
lab_1 | 1|ai | source='knowledgebase')
lab_1 | 1|ai | File "/appsrc/ai/recommender/surprise_recommenders.py", line 162, in _reconstruct_training_data
lab_1 | 1|ai | raise ValueError(error_msg)
lab_1 | 1|ai | ValueError: the results_df hash from the pickle is different
lab_1 | PM2 | App [ai:1] exited with code [1] via signal [SIGINT]
lab_1 | PM2 | App [ai:1] starting in -fork mode-
lab_1 | PM2 | App [ai:1] online
lab_1 | 1|ai | ======= Penn AI =======
lab_1 | 0|lab | POST /api/projects 200 - - 4.529 ms
lab_1 | 0|lab | serverSocket.emitEvent('recommenderStatusUpdated', '[object Object]')
lab_1 | 0|lab | {}
lab_1 | 0|lab | =socketServer:recommenderStatusUpdated(initializing)
lab_1 | 0|lab | POST /api/recommender/status 200 54 - 4.591 ms
lab_1 | 1|ai | ai: INFO: loading pmlb knowledgebase
lab_1 | 1|ai | knowledgebase_utils: INFO: load_default_knowledgebases('True', 'data/knowledgebases/user/results', 'data/knowledgebases/user/metafeatures'
lab_1 | 1|ai | knowledgebase_utils: INFO: load_knowledgebase('['data/knowledgebases/sklearn-benchmark-data-knowledgebase-r6.tsv.gz', 'data/knowledgebases/pmlb_regression_results.pkl.gz']', ['data/knowledgebases/pmlb_classification_metafeatures.csv.gz', 'data/knowledgebases/pmlb_regression_metafeatures.csv.gz']', '')
lab_1 | 1|ai | knowledgebase_utils: INFO: _load_results_from_file(data/knowledgebases/sklearn-benchmark-data-knowledgebase-r6.tsv.gz)
lab_1 | 1|ai | knowledgebase_utils: INFO: returning 52249 results from data/knowledgebases/sklearn-benchmark-data-knowledgebase-r6.tsv.gz
lab_1 | 1|ai | knowledgebase_utils: INFO: _load_results_from_file(data/knowledgebases/pmlb_regression_results.pkl.gz)
lab_1 | 1|ai | knowledgebase_utils: INFO: concatenating results....
lab_1 | 1|ai | knowledgebase_utils: INFO: load metafeatures...
lab_1 | 1|ai | knowledgebase_utils: INFO: Loading metadata from file 'data/knowledgebases/pmlb_classification_metafeatures.csv.gz
lab_1 | 1|ai | knowledgebase_utils: INFO: Loading metadata from file 'data/knowledgebases/pmlb_regression_metafeatures.csv.gz
lab_1 | 1|ai | ai: INFO: updating AI with classification knowledgebase (52249 results)
lab_1 | 1|ai | ai: INFO: pmlb classification knowledgebase loaded
...
```

And similarly, from MacOS:

```
...
lab_1 | 1|ai | base: WARNING: algo changing from

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.