CodaLab用法

最近在參加一個學術(shù)評測CMRC2018喧伞,提交系統(tǒng)需要用到CodaLab法挨。去百度和Google發(fā)現(xiàn)少有關(guān)于codalab的使用說明纳账,只好去看官方文檔吱涉,簡單總結(jié)了一下用法刹泄,為大家提供一些便利。
文章最后寫了我在codalab上踩過的坑怎爵,大家注意繞坑哈特石!
我的郵箱:mark.skj@qq.com 請大家多多指導以及交流

1、注冊Codalab賬戶

填寫注冊表單鳖链,然后注冊就行,注冊鏈接:codalab注冊.

2县匠、上傳源程序

2.1、新建工作目錄

注冊完畢之后撒轮,登陸到系統(tǒng)中乞旦,系統(tǒng)會默認建立一個home工作目錄。點擊右上角的My Dashboard



新建一個Worksheet题山,名稱可以根據(jù)實際情況填寫



2. 2兰粉、設(shè)置工作目錄權(quán)限(非必要操作)

上傳的源代碼默認是公眾可見的,我們可以設(shè)置相應的權(quán)限防止源代碼泄露顶瞳,在上方點擊命令行(下圖所示)玖姑,輸入命令。


  • 設(shè)置某一用戶組對當前worksheet的使用權(quán)限r(nóng)ead慨菱。
    我是對我參加評測的官方用戶組:cmrc2018-official設(shè)置的權(quán)限為read焰络,命令格式:
    cl wperm .+用戶組+權(quán)限 具體命令如下:
    cl wperm . cmrc2018-official read
  • 設(shè)置public用戶組(全體用戶)對當前worksheet的權(quán)限為none
    cl wperm . public none
    此時右側(cè)worksheet屬性應顯示如下:
2.3符喝、 上傳(刪除)源程序到worksheet
2.3.1闪彼、上傳

點擊Upload,然后選擇文件上傳∥吠螅可以單個文件上傳缴川,也可以打包成zip文件上傳,打包必須得是zip格式描馅,上傳之后把夸,系統(tǒng)會自動解壓zip文件。


等待上傳進度條完成铭污,文件的state顯示為ready恋日,即為上傳成功

點擊文件,右下方contents為文件的內(nèi)容嘹狞。文件內(nèi)容下方的host worksheets是包含此文件的所有目錄谚鄙。左上方uuid為文件的通用唯一識別碼。

  • 在其它的worksheet共用這份文件
    在其它的worksheet使用命令:cl add bundle + 識別碼(uuid[0:8]) . 即可添加此文件刁绒,共用一份文件闷营。當然此共享文件的權(quán)限應做出相應設(shè)置照捡。代碼:
    cl add bundle 0xaecc222e5e764b5985734ba6b6fd3dd0 .
2.3.2籍琳、刪除

右擊文件,會出現(xiàn)三種狀態(tài)

  • Remove bundle permanently: 徹底從賬號刪除

  • Detach from this worksheet: 從當前工作目錄移除(文件還存在于賬號空間中)

  • Add to my home worksheet: 添加到home工作目錄
    注意:當操作的文件被其他程序或者工作目錄占用時物遇,是刪除不了的嫂丙,只能從當前目錄移除娘赴,或者解除其他程序或者目錄的占用后,再刪除跟啤。


    也可以點擊Edit source 編輯資源

3诽表、運行源程序

3.1、運行環(huán)境配置

運行自己的源程序需要相應的環(huán)境隅肥,這就要用到Docker竿奏,網(wǎng)上關(guān)于Docker的介紹以及相關(guān)的東西就比較多了,大家自行去了解腥放,后期打算再寫一個關(guān)于docker的文章泛啸。

3.2、運行程序

運行程序有兩種方式秃症,這里推薦使用介紹的第一種(命令行方式)

  • 3.2.1候址、命令行方式
    格式:cl run + 需要調(diào)用的文件、文件夾名稱 : 需要調(diào)用的文件种柑、文件夾名稱或文件的uuid[0:8] + '運行的命令'+一些請求
    請求例如:DockerImage岗仑、GPU、磁盤聚请、運行時間等等荠雕。
    我的命令使用了main.py,config.py,data文件夾舞虱,然后python3運行config.py欢际,并且使用我的DockerImage母市,并且申請一個GPU矾兜。命令如下:
    cl run main.py:main.py config.py:config.py data:data 'python3 config.py' --request-docker-image daocloud.io/markhu/nlp_sxu:master-aee1dc6 --request-gpus 1
    在運行命令中后面還可以加入以下命令:
    --request-docker-image為程序調(diào)用Docker環(huán)境鏡像
    --request-gpus 1為程序申請一個GPU
    --request-disk 6g為程序申請6g磁盤空間(一個賬號共有10g空間)
    --request-time 2d為程序申請2天的時間
    -n train 命名為train,等等以下metadata里面的都可以特別申請


需要調(diào)用的Docker鏡像患久、GPU椅寺、磁盤空間等等也可以手動填寫
手動填寫申請

  • 3.2.2、New Run方式
    點擊New Run 選擇依賴文件蒋失、文件夾返帕,輸入命令,然后點擊Run執(zhí)行篙挽。
    同上需要調(diào)用的Docker鏡像荆萤、GPU、磁盤空間等等也可以手動填寫铣卡。


    運行狀態(tài)常見包括以下幾種:

  • created: 表示任務剛剛創(chuàng)建

  • preparing: 準備運行環(huán)境等依賴

  • staged: 正在排隊

  • running: 正在正常運行

  • failed: 程序錯誤退出

  • ready: 程序運行完成
    如果出錯链韭,則根據(jù)stderr的輸出對自己的程序進行調(diào)試。

3.3煮落、結(jié)束源程序

選擇程序右擊會出現(xiàn)四個選擇敞峭,前三個和文件的選擇一樣,第四個表示:

  • Kill this run bundle: 強行停止程序

4蝉仇、一些命令(持續(xù)更新)

將程序生成的文件輸出旋讹,格式:cl make + 程序名稱 + / + 文件在程序內(nèi)容(contents)中的地址 + -n + 輸出的文件命名
例如我要輸出train程序里面answer文件夾里面的report.json文件,并且命名為oupri.json
cl make train/answer/report.json -n oupri.json

我跳的坑(持續(xù)更新)

  • Docker環(huán)境配置不好轿衔,會出現(xiàn)好多未知錯誤的沉迹,在docker配置文章里再細說。
  • codalab提供的一個M60 GPU的顯存大概7.5G害驹,我用的服務器一個GPU顯存12G胚股,這樣如果數(shù)據(jù)量太大,需要改變Batch size的值裙秋,一般建議不超過128琅拌,否則可能程序剛開始不會報錯,但是跑了幾個小時摘刑,跑到一半就會因為內(nèi)存的原因failed进宝。
  • 同樣考慮硬件的差異:訓練機器學習模型,如果數(shù)據(jù)預處理用到了隨機的部分比如:random枷恕,可要小心党晋,random隨機是和硬件是相關(guān)的,我在自己服務器上訓練模型用的數(shù)據(jù)預處理文件的內(nèi)容和codalab數(shù)據(jù)預處理生成的文件內(nèi)容是不一樣的,這樣拿著線下訓練好的模型用線上的數(shù)據(jù)去生成結(jié)果未玻,會有很大差異的灾而。
  • 不要在線上訓練模型,在線下訓練好模型扳剿,拿到線上去預測結(jié)果就行了旁趟。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市庇绽,隨后出現(xiàn)的幾起案子锡搜,更是在濱河造成了極大的恐慌,老刑警劉巖瞧掺,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件耕餐,死亡現(xiàn)場離奇詭異,居然都是意外死亡辟狈,警方通過查閱死者的電腦和手機肠缔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來哼转,“玉大人明未,你說我怎么就攤上這事∈筒荆” “怎么了亚隅?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長庶溶。 經(jīng)常有香客問我煮纵,道長,這世上最難降的妖魔是什么偏螺? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任行疏,我火速辦了婚禮,結(jié)果婚禮上套像,老公的妹妹穿的比我還像新娘酿联。我一直安慰自己,他們只是感情好夺巩,可當我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布贞让。 她就那樣靜靜地躺著,像睡著了一般柳譬。 火紅的嫁衣襯著肌膚如雪喳张。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天美澳,我揣著相機與錄音销部,去河邊找鬼摸航。 笑死,一個胖子當著我的面吹牛舅桩,可吹牛的內(nèi)容都是我干的酱虎。 我是一名探鬼主播,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼擂涛,長吁一口氣:“原來是場噩夢啊……” “哼读串!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起歼指,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤爹土,失蹤者是張志新(化名)和其女友劉穎甥雕,沒想到半個月后踩身,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡社露,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年挟阻,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片峭弟。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡附鸽,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出瞒瘸,到底是詐尸還是另有隱情坷备,我是刑警寧澤,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布情臭,位于F島的核電站省撑,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏俯在。R本人自食惡果不足惜竟秫,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望跷乐。 院中可真熱鬧肥败,春花似錦、人聲如沸愕提。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽浅侨。三九已至纽谒,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間仗颈,已是汗流浹背佛舱。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工椎例, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人请祖。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓订歪,卻偏偏與公主長得像,于是被迫代替她去往敵國和親肆捕。 傳聞我的和親對象是個殘疾皇子刷晋,可洞房花燭夜當晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn)慎陵,斷路器眼虱,智...
    卡卡羅2017閱讀 134,599評論 18 139
  • 觀其大綱 第一篇 容器技術(shù)與Docker概念1認識容器技術(shù)2 Docker基本概念3 安裝和測試Docker第二...
    周少言閱讀 5,433評論 2 87
  • 《Docker從入門到實踐》閱讀筆記 原書地址: https://yeasy.gitbooks.io/docker...
    GuoYuebo閱讀 11,352評論 1 39
  • 在我還是只子彈的時候 我被發(fā)給一個新兵蛋子 他只有十顆子彈 一把步槍 他把我放在兜里收藏 我常常懷疑他還是個孩子 ...
    中華和沙彌閱讀 195評論 0 0
  • 4、老實席纽,膽小捏悬,笨拙,害羞润梯,不主動过牙,優(yōu)柔寡斷,就會缺乏男人的魅力纺铭,這樣的男人看見美女都會羞澀寇钉、臉紅、語無倫次舶赔、沉...
    一個人的獨行閱讀 261評論 0 0