Storage class¶
Note
This class inherits from hana_ml.model_storage.Storage class. Details here: https://help.sap.com/doc/1d0ebfe5e8dd44d09606814d83308d4b/2.0.04/en-US/hana_ml.model_storage.html
-
class
hana_automl.storage.
Storage
(connection_context: hana_ml.dataframe.ConnectionContext, schema: str)¶ Storage for models and more.
-
connection_context
¶ Connection info for HANA database.
- Type
hana_ml.dataframe.ConnectionContext
-
schema
¶ Database schema.
- Type
str
Examples
>>> from hana_automl.storage import Storage >>> from hana_ml import ConnectionContext >>> cc = ConnectionContext('address', 39015, 'user', 'password') >>> storage = Storage(cc, 'your schema')
-
clean_up
()¶ Be careful! This method deletes all models from database!
-
delete_leaderboard
(name: str)¶ Deletes leaderboard from HANA.
- Parameters
name (str) – Leaderboard’s name to remove.
-
delete_model
(name: str, version: Optional[int] = None)¶ Deletes model.
- Parameters
name (str) – Model to remove
version (int, optional) – Model’s version.
-
delete_models
(name: str, start_time=None, end_time=None)¶ Deletes the model in a batch model with specified time range.
- Parameters
name (str) – The model name
start_time (str, optional) –
The start timestamp for deleting.
Defaults to None.
end_time (str, optional) –
The end timestamp for deleting.
Defaults to None.
-
list_preprocessors
(name: Optional[str] = None) → pandas.core.frame.DataFrame¶ Show preprocessors for models in database.
- Parameters
name (str, optional) – Model name.
- Returns
res – DataFrame containing all preprocessors in database.
- Return type
pd.DataFrame
Note
Do not delete or save preprocessors apart from model! They are saved/deleted/changed automatically WITH model.
Examples
>>> storage.list_preprocessors() MODEL VERSION JSON 1. test 1 {'tuned_num'...}
-
load_leaderboard
(name: str, show: bool = False) → list¶ Loads leaderboard from HANA.
- Parameters
name (str) – Leaderboard’s name in database.
show (bool, optional) – If True, prints loaded leaderboard. Defaults to False.
- Returns
leaderboard – Loaded leaderboard.
- Return type
list
-
load_model
(name: str, version: Optional[int] = None, **kwargs) → hana_automl.automl.AutoML¶ Loads new model.
- Parameters
name (str) – Model to load
version (int, optional) – Model’s version.
- Returns
- Return type
AutoML object
-
save_leaderboard
(metric: str, leaderboard: List[hana_automl.pipeline.modelres.ModelBoard], name: str, top: Optional[int] = None)¶ Saves algorithms from leaderboard.
- Parameters
metric (str) – Leaderboard metric. You can access it via automl.leaderboard_metric.
leaderboard (list[ModelBoard]) – Leaderboard from AutoML. Access it via automl.get_leaderboard()
name (str) – Leaderboard’s name in database.
top (int, optional) – Save only top X algorithms. Example: top=5 will save only 5 models from the beginning of leaderboard. If None, all leaderboard will be saved.
Note
Models from leaderboard will be saved to HANA as ‘name_leaderboard_Y’, where Y is number of model.
-
save_model
(automl: hana_automl.automl.AutoML, if_exists='upgrade')¶ Saves a model to database.
- Parameters
automl (AutoML) – The model.
if_exists (str) – Defaults to “upgrade”. Not recommended to change.
Note
If you have ensemble enabled in AutoML model, method will determine it automatically and split ensemble model in multiple usual models.
Examples
>>> from hana_automl.automl import AutoML >>> automl.fit(df='table in HANA', target='some target', steps=3) >>> automl.model.name = "new model" >>> storage.save_model(automl)
-