第一,推断过程,我需要读取训练集数据构建历史流量信息,请问我该如何读取训练数据呢? 第二,训练过程结束后,我们需要配置一个json,这个json配置过程没有lgb模型,或我们需要多个模型如 lgb rnn 配置如何写? 第三,多个模型的配置文件怎么在推断过程读写。 第四,自己上传了外部数据,怎么读取和推断过程使用。
抱歉,您需设置社区昵称后才能参与社区互动!
第一,推断过程,我需要读取训练集数据构建历史流量信息,请问我该如何读取训练数据呢? 第二,训练过程结束后,我们需要配置一个json,这个json配置过程没有lgb模型,或我们需要多个模型如 lgb rnn 配置如何写? 第三,多个模型的配置文件怎么在推断过程读写。 第四,自己上传了外部数据,怎么读取和推断过程使用。
|
发表于2020年04月18日 15:20:47
直达本楼层的链接
板凳
只看该作者
你好,有以下说明供开发使用参考: 问题一: 可以将加载模型相关的其他数据及文件与模型文件上传至OBS同目录下,再在customize-service.py脚本的preprocess和inference方法中实现相关读取和使用逻辑。在脚本中可以通过self.model_path获取模型文件在镜像中的路径(/home/work/predict/model/your_model_name.xxx),对这一路径做裁剪和再拼装,就可以拿到你上次至OBS的其他文件。具体可以参考附件中的实现样例
问题二 目前机器学习推理原生不支持lgb还有GPU的使用。如果要使用需要自行通过dependency在导入模型时指定,在后续生成容器阶段会根据这一配置来pip安装lightgbm和rnn相关库,具体可以参考以下链接:https://support.huaweicloud.com/api-modelarts/modelarts_03_0076.html,需要在导入模型时指定模型涉及包的dependency(包名,版本号,限制)
问题三: config.json是对于推理服务使用的基础镜像的配置。如果要在镜像中使用多个模型的加载使用,可以在customize-service.py的inference中自定义实现多个模型的读取和使用(如果用到的模型比如lgb不原生支持,就需要通过dependency完成依赖安装)。这里更建议使用自定义镜像来处理这种场景,具体可以参考如下链接:https://support.huaweicloud.com/engineers-modelarts/modelarts_23_0219.html。对于不原生支持的框架和多个模型的场景,自定义镜像更灵活,方便调试。 问题四:处理方式同问题一
评论
对于第一个问题,我将其他文件,比如 weather.csv 上传到模型的文件下,之后,我在 def _preprocess(self, data): weather = pd.read_csv('./weather,csv') # 这样就可以读取吗 logger.info("customize service Begin to handle data from user data...") list_data = [] json_data = json.loads(data, object_pairs_hook=collections.OrderedDict) for element in json_data["data"]["req_data"]: array = [] for each in element: array.append(element[each]) list_data.append(array) return pd.DataFrame(list_data) ... 查看全部评论 麻婆豆腐:因为是和模型放在同一个文件夹并被下载到镜像里,需要通过model_path去获取,而不能使用相对customize_service.py的路径。比如你说的weather.csv,假如它相对你的模型文件的路径是: obs_model_path │ │model_name.xxxx │ │data │ weather.csv 即weather.csv在与模型文件处于同级目录的data文件夹下面 它的路径可以这样获取: relative_path_to_weather = "data/weather.csv" #相对模型文件所在目录的路径 (path_to_model, model_file_name) = os.path.split(self.model_path) path_to_weather = os.path.join(path_to_model, relative_path_to_weather) 即/home/work/predict/model/data/weather.csv ... 查看全部 |
|
同问,
如果要用BaseSERvice类以外的框架,是否只能通过构建自定义镜像在线上训练实现,或上传自己训练好的docker镜像
你好,有以下说明供开发使用参考:
问题一:
可以将加载模型相关的其他数据及文件与模型文件上传至OBS同目录下,再在customize-service.py脚本的preprocess和inference方法中实现相关读取和使用逻辑。在脚本中可以通过self.model_path获取模型文件在镜像中的路径(/home/work/predict/model/your_model_name.xxx),对这一路径做裁剪和再拼装,就可以拿到你上次至OBS的其他文件。具体可以参考附件中的实现样例
问题二
目前机器学习推理原生不支持lgb还有GPU的使用。如果要使用需要自行通过dependency在导入模型时指定,在后续生成容器阶段会根据这一配置来pip安装lightgbm和rnn相关库,具体可以参考以下链接:https://support.huaweicloud.com/api-modelarts/modelarts_03_0076.html,需要在导入模型时指定模型涉及包的dependency(包名,版本号,限制)
问题三:
config.json是对于推理服务使用的基础镜像的配置。如果要在镜像中使用多个模型的加载使用,可以在customize-service.py的inference中自定义实现多个模型的读取和使用(如果用到的模型比如lgb不原生支持,就需要通过dependency完成依赖安装)。这里更建议使用自定义镜像来处理这种场景,具体可以参考如下链接:https://support.huaweicloud.com/engineers-modelarts/modelarts_23_0219.html。对于不原生支持的框架和多个模型的场景,自定义镜像更灵活,方便调试。
问题四:处理方式同问题一
2020-4-18 14:51 上传
点击文件名下载附件
麻婆豆腐
2020-4-18 17:16
w00523140
2020-4-19 10:58