Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP automl refactoring #67

Draft
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

fabien-vavrand
Copy link

Refactoring of the auto machine learning module

- remove dependencies to ml_machine
- refactoring of automl guider
- file queue is now supposed to be process safe
- all results are now saved as json in finished/job_id
- workers don't depend on automl config anymore
- review how models are registered at startup
self.storage.save_json(status, job_id, 'running')

try:
job = self.storage.load_special_json(job_id, 'jobs')
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe we could add a special 'job' to tell so worker to 'stop' ... so that we can stop them by adding something in the queue ?


if self.job_config.do_blocks_search:
self._block_search_iterator = self.generator.iterate_block_search(random_order=True)
self._block_search_iterator_empty = False
self.status['block_search_iterator_empty'] = False

def run(self):
while self.queue.size() < self.queue_size:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

while True:

  • introduce is_running property in class to manually stop controller

@@ -50,14 +46,14 @@ def _init_worker(self):
self.scorers["scorer_%d" % i] = SCORERS[s]

def run(self):
X, y, *_ = self.data.load_pickle(self.data_key)
X, y, groups = unpack_data(self.data.load_pickle(self.data_key))
self.cv = create_cv(self.job_config.cv, y, classifier=self.job_config.is_classification(),
shuffle=True, random_state=123)

while True:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

while True:

  • introduce is_running property in class to manually stop controller

@@ -2,6 +2,18 @@
import logging


def unpack_data(*data):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove *, because data is unpacked at next line: def unpack_data(data):

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants