亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Kedro 中哪里執行節點輸出的保存?

在 Kedro 中哪里執行節點輸出的保存?

海綿寶寶撒 2022-06-28 18:09:02
在 Kedro 中,我們可以流水線化不同的節點并部分運行一些節點。當我們部分運行一些節點時,我們需要將一些節點的輸入保存在某個地方,以便在另一個節點運行時它可以訪問前一個節點生成的數據。但是,我們在哪個文件中編寫代碼——pipeline.py、run.py 還是nodes.py?例如,我試圖將 dir 路徑直接保存到變量名“model_path”下的 DataCatalog。來自 pipeline.py 的片段:    # A mapping from a pipeline name to a ``Pipeline`` object.def create_pipelines(**kwargs) -> Dict[str, Pipeline]:io = DataCatalog(dict(    model_path=MemoryDataSet()))io.save('model_path', "data/06_models/model_test")print('****', io.exists('model_path'))pipeline = Pipeline([    node(        split_files,        ["data_csv", "parameters"],        ["train_filenames", "val_filenames", "train_labels", "val_labels"],        name="splitting filenames"    ),    # node(    #     create_and_train,    #     ["train_filenames", "val_filenames", "train_labels", "val_labels", "parameters"],    #     "model_path",    #     name="Create Dataset, Train and Save Model"    # ),    node(        validate_model,        ["val_filenames", "val_labels", "model_path"],        None,        name="Validate Model",    )]).decorate(decorators.log_time, decorators.mem_profile)return {    "__default__": pipeline}但是,當我運行 Kedro 時出現以下錯誤:ValueError: Pipeline input(s) {'model_path'} not found in the DataCatalog
查看完整描述

1 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

DataCatalog節點輸入在傳遞給節點函數之前由 Kedro 自動加載。因此,在節點成功生成一些數據后,節點輸出將保存到 DataCatalog。DataCatalog 配置默認取自conf/base/catalog.yml.


在您的示例model_path中,由Create Dataset, Train and Save Modelnode 生成,然后由Validate Model. 如果在 中找不到所需的數據集定義conf/base/catalog.yml,Kedro 將嘗試使用MemoryDataSet. 如果您運行同時包含Create Dataset...和Validate Model節點的管道(假設沒有出現其他問題),這將起作用。但是,當您嘗試Validate Model單獨運行節點時,Kedro 會嘗試model_path從內存中讀取數據集,而內存中不存在該數據集。


所以,TLDR:


為了減輕這種情況,您需要:


a)model_path通過在您的 中添加以下內容來堅持conf/base/catalog.yml:


model_path:

  type: TextLocalDataSet

  filepath: data/02_intermediate/model_path.txt

b)Create Dataset, Train and Save Model至少運行一次節點(及其依賴項)


完成 a) 和 b) 后,您應該能夠開始Validate Model單獨運行。


查看完整回答
反對 回復 2022-06-28
  • 1 回答
  • 0 關注
  • 167 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號