Служба машинного обучения Azure - вопрос об API набора данных

Я пытаюсь использовать функцию AML autoML. Я видел, что в образце записной книжки используется Dataset.Tabular.from_delimited_files (train_data), который берет данные только с пути https. Мне интересно, как я могу использовать pandas dataframe непосредственно в конфигурации automl вместо использования API набора данных. В качестве альтернативы, как я могу преобразовать фрейм данных pandas в табличный набор данных, чтобы передать его в конфигурацию automl?


person Gautam Karmakar    schedule 02.12.2019    source источник


Ответы (1)


Вы можете легко сохранить фрейм данных pandas на паркет, загрузить данные в хранилище больших двоичных объектов рабочей области по умолчанию, а затем создать Dataset оттуда:

# ws = <your AzureML workspace>
# df = <contains a pandas dataframe>
from azureml.core.dataset import Dataset
os.makedirs('mydata', exist_ok=True)
df.to_parquet('mydata/myfilename.parquet')
dataref = ws.get_default_datastore().upload('mydata')
dataset = Dataset.Tabular.from_parquet_files(path = dataref.path('myfilename.parquet'))
dataset.to_pandas_dataframe()

Или вы можете просто создать Dataset из локальных файлов на портале http://ml.azure.com   введите описание изображения здесь

После того, как вы создали его на портале, он предоставит вам код для его загрузки, который будет выглядеть примерно так:

# azureml-core of version 1.0.72 or higher is required
from azureml.core import Workspace, Dataset

subscription_id = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'
resource_group = 'ignite'
workspace_name = 'ignite'

workspace = Workspace(subscription_id, resource_group, workspace_name)

dataset = Dataset.get_by_name(workspace, name='IBM-Employee-Attrition')
dataset.to_pandas_dataframe()
person Daniel Schneider    schedule 03.12.2019