開發與維運

Dataworks小技巧:巧用模板提升效率

我在使用DataWork開發機器學習算法的時候,喜歡使用ODPS SQL+PAI命令(我叫它PAI SQL)的開發模式。PAI SQL的優點是簡單易用,便於跟蹤維護。缺點代碼複用性較差(因為不支持函數),尤其是進行不斷探索的時候,經常需要在上一版的代碼上修改幾個變量,或者幾個參數,這個時候如果直接修改的時候效率很低而且容易出錯。我發現這部分問題通過用編寫代碼生成函數(Python)和代碼模板來解決。

代碼如下:
def template(filename,outfilename,template):

with open(filename, "r+") as myfile:
    strcontent=myfile.read()
for key in template.keys():
    strcontent=strcontent.replace(key,template[key])
    print(key)
with open(outfilename, "w") as myfile:
    myfile.write(strcontent)
    

通過優化模板可以大幅減少BUG、生成的代碼可以無人值守的執行,一次性對多個實驗方案進行驗證,效率很高。

Leave a Reply

Your email address will not be published. Required fields are marked *