При обучении моей модели данные, с которых я начинаю, состоят из строк данных json и ожидаемых значений, которые я хотел бы предсказать на основе этих данных json. Данные json соответствуют схеме, которую моя развернутая служба получит входные данные как. Перед обучением я запускаю ряд функций Python для преобразования данных и извлечения функций, вычисленных из необработанных данных json. Это те преобразованные данные, на которых обучается моя модель.
Я извлек код для преобразования данных json во входные данные, которые моя модель ожидает, в отдельный файл python. Теперь я хотел бы, чтобы мой скрипт скоринга использовал этот скрипт python для подготовки ввода, отправляемого в службу, перед тем, как передать его в мою обученную модель.
Есть ли способ включить сценарий преобразования данных в сценарий оценки при развертывании моей службы с помощью команды cli:
az ml service create realtime
-f <scoring-script>.py
--model-file model.pkl
-s service_schema.json
-n <some-name>
-r python
--collect-model-data true
-c aml_config\conda_dependencies.yml
(новые строки в приведенной выше команде добавлены для ясности)
Я придумал два способа:
- Создайте свой собственный базовый образ докера, содержащий сценарий преобразования, и используйте этот образ в качестве основы для моей службы. Это кажется немного обременительным, если мне нужны аналогичные (но разные) преобразования данных для более поздних моделей.
- Объедините сценарий преобразования с моим сценарием оценки в один файл. Кажется немного взломанным.
Есть ли другой способ достичь моей цели - использовать отдельный скрипт преобразования данных как для обучения, так и для оценки?