Я создал модель, используя Игристую воду H2O. И теперь я хотел бы применить его к огромному Spark DF (заполненному разреженными векторами). Я использую python и pyspark, pysparkling. В основном мне нужно выполнить работу с картой с помощью функции model.predict() внутри. Но копирование данных в контекст H2O - огромные накладные расходы, а не вариант. Я думаю, что я собираюсь сделать, извлечь модель POJO (Java class) из модели h2o и использовать ее для создания карты в dataframe. Мои вопросы:Обертка для Pyspark для H2O POJO
- Есть ли лучший способ?
- Как написать pyspark-оболочку для класса java, из которой я намерен использовать только один метод .score (double [] data, double [] result)
- Как максимально повторно использовать обертки из библиотеки Spark ML?
Спасибо!
Еще один способ: вы можете скачать модель как код, скомпилировать его, развернуть его а затем вызывается непосредственно из Python через Py4J. – Michal
Спасибо Michal, решение 2 выглядит достаточно просто (я скомпилировал модель в банке). Но я не могу исправить контекст в работе карты. Как с этим бороться? – USER
@USER вы правы - я забыл, что 'sc' недоступен в операциях rdd (это хороший пост с возможными альтернативами: http://stackoverflow.com/questions/31684842/how-to-use-java-scala- function-from-an-action-or-a-transform) На данный момент у меня нет хорошего ответа. Нам нужно как-то выяснить эти ограничения. – Michal