Browse Source

更新 '助教手册.md'

master
陆雪松 2 years ago
parent
commit
4b4bd05079
1 changed files with 149 additions and 149 deletions
  1. +149
    -149
      助教手册.md

+ 149
- 149
助教手册.md View File

@ -1,150 +1,150 @@
#水杉天梯——助教使用手册
本手册主要展示了助教创建一个作业,上传作业需要的评测文件,上传作业需要的数
据集的具体流程,以及如何修改上传的数据集和编辑已创建作业。手册中针对多阶段
的文件结果提交给出了命名规范,规定了模板文件中的打包函数。
##一、创建作业
###作业描述部分
该部分将详细介绍表单中每个字段的含义,以及应该如何填写。
![avatar](/figure/1.png)
**作业名称——中文名**:对应作业名。
**作业名称——英文名**:提交表单后生成的**zip压缩包名称**。
**图标**:如不上传,将使用默认的logo作为作业logo。(仅支持常用图片格式)
###Web Page部分
![avatar](/figure/2.png)
![avatar](/figure/3.png)
**概述,数据描述,评估,限制条件**使用的是富文本编辑器,可以对文本框中的内容进行加粗,斜体,调整字体大小,上色等操作。
![avatar](/figure/4.png)
这些文本框的内容将会以**html**的形式展现在生成的作业界面上。对应关系为:
**概述**对应——**Overview**;**评估**对应——**Evaluation**;**限制条件**对应——**Terms and Condictions**;**数据描述**对应——**Get Data**。下图用红框圈出。
![avatar](/figure/5.png)
![avatar](/figure/6.png)
###多阶段部分
设置了多阶段机制,允许一次作业分多个阶段提交。
**(解释:多个阶段可以理解为一次作业的两个部分,例如实现svm/决策树分别完成同一个分类任务,将会对应两个leaderboard)**
![avatar](/figure/7.png)
**每日最高提交数**:该作业允许每日最高的提交数。
**最高提交数**:该作业开始到结束期间允许的提交数之和。
**阶段数量**:填写该作业分为几个阶段。填写完以后点击确认,会自动生成相应数量的阶段填写框。
![avatar](/figure/8.png)
点击确认后,会出现对应数量的阶段内容框,每个阶段需要填写:
**代码评测文件**:.py格式,助教自定义填写,如需参考可点击超链接。
**作业的参考预测文件**:助教上传用于评测的正确结果文件。
**每个阶段的开始时间**:当前阶段学生可以提交文件的开始时间。
![avatar](/figure/9.png)
生成的作业将会分为多个阶段。点击每个阶段,可以提交对应阶段需要上传的文件。
**对于评测示例文件的补充说明**:
**文件定位**:若交由本系统进行评测,该段代码无需改动。若在本地测试,则直接修改路径即可。
![avatar](/figure/10.png)
**文件读取**:需要读取学生结果(prediction.txt)和参考结果(true.txt),注意学生结果文件的命名应要求学生固定命名(可在Jupyter模板文件中写好),参考结果文件命名在作业创建中上传的文件名一致。
![avatar](/figure/11.png)
![avatar](/figure/12.png)
![avatar](/figure/13.png)
两个文件里的数据内容格式应保持一致,通过修改自定义的read_txt函数来读取不同的格式。
![avatar](/figure/14.png)
**结果评测**:编写自定义的calculate_metric函数以满足不同的指标评测。(如果需要得到多个指标的结果,可自行丰富,得到多个score),以下为计算准确率的示例。
![avatar](/figure/15.png)
![avatar](/figure/16.png)
**结果输出**:输出文件要求写入规定名为(scores.txt)的文件,不能修改。输出文件的每一行代表对应的一个指标的分数结果,指标名、和小数点位数应与作业创建leaderboard处的填写内容一致。
![avatar](/figure/17.png)
![avatar](/figure/18.png)
**请助教在写完Evaluate.py后先在本地试运行,输出文件结果无误后再进行上传!**
###排行榜部分
![avatar](/figure/19.png)
**评估指标个数**:填写作业提交的评估指标个数,有的作业可能需要不只一个评估指标。填写评估指标个数将生成下图所示的指标框。
**评估标签**:填写评估标签名,如ACC,Precision,Recall等。
**数据格式**:保留几位小数。
**排序**:指标排序是升序还是降序。只能填**asc或desc**。
###其他
![avatar](/figure/20.png)
**作业权限**:选择作业参与是否需要助教同意。如选择是,则参与作业需要助教后台审批,如选择否,则申请参与作业后自动通过请求。
开始时间,截至时间:填写作业开始和结束的时间。
![avatar](/figure/21.png)
点击生成zip文件,将生成一个zip压缩包,点击上图中蓝色超链接生成压缩包。(**表单中除了图标可以不填,其余所有均为必填选项。**)
下载得到压缩包以后,点击上传zip文件,将生成一个新的作业。(**压缩包文件名不能含中文,空格等。**)
![avatar](/figure/22.png)
上传成功后,可以点击蓝色view超链接,查看具体作业信息。
##编辑作业
如果需要编辑,在作业详情界面中点击选项——编辑。
![avatar](/figure/23.png)
备注:编辑页面表单数量较多,此处只挑选助教有可能修改的部分做详细讲述,如需更深层次的编辑,请参考
https://github.com/codalab/codalab-competitions/wiki/Organizer_Codalab-competition-YAML-definition-language
修改字段内容。
###作业描述部分
![avatar](/figure/25.png)
参考第一部分创建作业的作业描述部分。
**Title**对应——**作业的中文名**。
**Description**对应——**描述**。
##Web Page部分
![avatar](/figure/26.png)
编辑Web Pages,对应关系如一中Web Pages部分。
###多阶段部分
![avatar](/figure/27.png)
**Start Date(UTC)**:修改每个phase的开始时间。
**Maximum Submissions(per User)**:修改作业最多允许的提交数之和。
**Max Submissions(per User) per day**:修改作业每人每天最多允许的提交数。
###排行榜部分
![avatar](/figure/28.png)
![avatar](/figure/29.png)
**Key Label**必须**相同**,对应——**评估标签**。
**Numberic format**对应——**数据格式**。
**Sorting**对应——**排序**
###其他
![avatar](/figure/30.png)
**Organizers need to approve the new teams**对应——第一部分中的作业权限。
A**nonymous leaderboard**——排行榜用户名是否匿名
![avatar](/figure/32.png)
**Disallow leaderboard modifying**——提交是否可以被修改
**Force submission to leaderboard**——学生是否需要人工提交结果
![avatar](/figure/33.png)
**Registration Required**——学生是否需要经过助教同意才能参与作业
![avatar](/figure/34.png)
如果提交的结果比过去成绩好,则自动将当前结果提交到排行榜
##上传数据集
点击上传数据集按钮打开面板
![avatar](/figure/35.png)
![avatar](/figure/36.png)
点击选择文件选择数据集压缩包,然后点击提交按钮进行提交。
提交按钮下方会显示上传进度,提交完成后会有对话框提示完成。
![avatar](/figure/37.png)
数据集格式说明:
文件中需要包含input文件夹,其中放置数据集,可以有一个模板性的notebook文件
参考格式如下:
![avatar](/figure/38.png)
需要注意的是,压缩时需要选中这一级目录下所有文件及文件夹进行压缩,而不是对上一级目录进行压缩
上传后,学生视角的目录如下图所示:
![avatar](/figure/39.png)
其中read_only_sample文件为只读文件,作为备份
多阶段提交需要注意,需要额外加一个output文件夹,该目录下的结构如下图所示:
![avatar](/figure/40.png)
![avatar](/figure/41.png)
有几个阶段就添加多少个phase_x文件夹。phase_x文件夹用于保存学生对应第x阶段代码输出结果。
##四、重置数据集
点击重置Jupyter按钮,可以将该作业对应的notebook删除,学生打开notebook时会以最新上传的数据集作为模板。
![avatar](/figure/42.png)
使用情形:上传数据集有误需要更新时,已有学生打开了notebook,重新上传数据集不会更新已打开notebook的文件,需要点击该按钮解决。
![avatar](/figure/43.png)
![avatar](/figure/44.png)
##五、下载学生代码
![avatar](/figure/45.png)
点击学生代码按钮即可下载
![avatar](/figure/46.png)
可以下载所有学生的代码,学生文件以学号命名
![avatar](/figure/47.png)
学生编写的notebook文件或py文件都会在对应目录下。
##六、模板notebook文件说明
模板文件中包含三块内容:
1.具体题目的程序逻辑
![avatar](/figure/48.png)
2.输出程序,output_string存储程序输出结果, phase_id为阶段id,每个阶段的程序输出分开存放
![avatar](/figure/49.png)
3.打包程序
![avatar](/figure/50.png)
需要改变的主要是第一部分,后两部分为固定代码,使学生按照系统规定地输出结果和打包结果。
![avatar](/figure/51.png)
#水杉天梯——助教使用手册
本手册主要展示了助教创建一个作业,上传作业需要的评测文件,上传作业需要的数
据集的具体流程,以及如何修改上传的数据集和编辑已创建作业。手册中针对多阶段
的文件结果提交给出了命名规范,规定了模板文件中的打包函数。
##一、创建作业
###作业描述部分
该部分将详细介绍表单中每个字段的含义,以及应该如何填写。
![avatar](figure/1.png)
**作业名称——中文名**:对应作业名。
**作业名称——英文名**:提交表单后生成的**zip压缩包名称**。
**图标**:如不上传,将使用默认的logo作为作业logo。(仅支持常用图片格式)
###Web Page部分
![avatar](/figure/2.png)
![avatar](/figure/3.png)
**概述,数据描述,评估,限制条件**使用的是富文本编辑器,可以对文本框中的内容进行加粗,斜体,调整字体大小,上色等操作。
![avatar](/figure/4.png)
这些文本框的内容将会以**html**的形式展现在生成的作业界面上。对应关系为:
**概述**对应——**Overview**;**评估**对应——**Evaluation**;**限制条件**对应——**Terms and Condictions**;**数据描述**对应——**Get Data**。下图用红框圈出。
![avatar](/figure/5.png)
![avatar](/figure/6.png)
###多阶段部分
设置了多阶段机制,允许一次作业分多个阶段提交。
**(解释:多个阶段可以理解为一次作业的两个部分,例如实现svm/决策树分别完成同一个分类任务,将会对应两个leaderboard)**
![avatar](/figure/7.png)
**每日最高提交数**:该作业允许每日最高的提交数。
**最高提交数**:该作业开始到结束期间允许的提交数之和。
**阶段数量**:填写该作业分为几个阶段。填写完以后点击确认,会自动生成相应数量的阶段填写框。
![avatar](/figure/8.png)
点击确认后,会出现对应数量的阶段内容框,每个阶段需要填写:
**代码评测文件**:.py格式,助教自定义填写,如需参考可点击超链接。
**作业的参考预测文件**:助教上传用于评测的正确结果文件。
**每个阶段的开始时间**:当前阶段学生可以提交文件的开始时间。
![avatar](/figure/9.png)
生成的作业将会分为多个阶段。点击每个阶段,可以提交对应阶段需要上传的文件。
**对于评测示例文件的补充说明**:
**文件定位**:若交由本系统进行评测,该段代码无需改动。若在本地测试,则直接修改路径即可。
![avatar](/figure/10.png)
**文件读取**:需要读取学生结果(prediction.txt)和参考结果(true.txt),注意学生结果文件的命名应要求学生固定命名(可在Jupyter模板文件中写好),参考结果文件命名在作业创建中上传的文件名一致。
![avatar](/figure/11.png)
![avatar](/figure/12.png)
![avatar](/figure/13.png)
两个文件里的数据内容格式应保持一致,通过修改自定义的read_txt函数来读取不同的格式。
![avatar](/figure/14.png)
**结果评测**:编写自定义的calculate_metric函数以满足不同的指标评测。(如果需要得到多个指标的结果,可自行丰富,得到多个score),以下为计算准确率的示例。
![avatar](/figure/15.png)
![avatar](/figure/16.png)
**结果输出**:输出文件要求写入规定名为(scores.txt)的文件,不能修改。输出文件的每一行代表对应的一个指标的分数结果,指标名、和小数点位数应与作业创建leaderboard处的填写内容一致。
![avatar](/figure/17.png)
![avatar](/figure/18.png)
**请助教在写完Evaluate.py后先在本地试运行,输出文件结果无误后再进行上传!**
###排行榜部分
![avatar](/figure/19.png)
**评估指标个数**:填写作业提交的评估指标个数,有的作业可能需要不只一个评估指标。填写评估指标个数将生成下图所示的指标框。
**评估标签**:填写评估标签名,如ACC,Precision,Recall等。
**数据格式**:保留几位小数。
**排序**:指标排序是升序还是降序。只能填**asc或desc**。
###其他
![avatar](/figure/20.png)
**作业权限**:选择作业参与是否需要助教同意。如选择是,则参与作业需要助教后台审批,如选择否,则申请参与作业后自动通过请求。
开始时间,截至时间:填写作业开始和结束的时间。
![avatar](/figure/21.png)
点击生成zip文件,将生成一个zip压缩包,点击上图中蓝色超链接生成压缩包。(**表单中除了图标可以不填,其余所有均为必填选项。**)
下载得到压缩包以后,点击上传zip文件,将生成一个新的作业。(**压缩包文件名不能含中文,空格等。**)
![avatar](/figure/22.png)
上传成功后,可以点击蓝色view超链接,查看具体作业信息。
##编辑作业
如果需要编辑,在作业详情界面中点击选项——编辑。
![avatar](/figure/23.png)
备注:编辑页面表单数量较多,此处只挑选助教有可能修改的部分做详细讲述,如需更深层次的编辑,请参考
https://github.com/codalab/codalab-competitions/wiki/Organizer_Codalab-competition-YAML-definition-language
修改字段内容。
###作业描述部分
![avatar](/figure/25.png)
参考第一部分创建作业的作业描述部分。
**Title**对应——**作业的中文名**。
**Description**对应——**描述**。
##Web Page部分
![avatar](/figure/26.png)
编辑Web Pages,对应关系如一中Web Pages部分。
###多阶段部分
![avatar](/figure/27.png)
**Start Date(UTC)**:修改每个phase的开始时间。
**Maximum Submissions(per User)**:修改作业最多允许的提交数之和。
**Max Submissions(per User) per day**:修改作业每人每天最多允许的提交数。
###排行榜部分
![avatar](/figure/28.png)
![avatar](/figure/29.png)
**Key Label**必须**相同**,对应——**评估标签**。
**Numberic format**对应——**数据格式**。
**Sorting**对应——**排序**
###其他
![avatar](/figure/30.png)
**Organizers need to approve the new teams**对应——第一部分中的作业权限。
A**nonymous leaderboard**——排行榜用户名是否匿名
![avatar](/figure/32.png)
**Disallow leaderboard modifying**——提交是否可以被修改
**Force submission to leaderboard**——学生是否需要人工提交结果
![avatar](/figure/33.png)
**Registration Required**——学生是否需要经过助教同意才能参与作业
![avatar](/figure/34.png)
如果提交的结果比过去成绩好,则自动将当前结果提交到排行榜
##上传数据集
点击上传数据集按钮打开面板
![avatar](/figure/35.png)
![avatar](/figure/36.png)
点击选择文件选择数据集压缩包,然后点击提交按钮进行提交。
提交按钮下方会显示上传进度,提交完成后会有对话框提示完成。
![avatar](/figure/37.png)
数据集格式说明:
文件中需要包含input文件夹,其中放置数据集,可以有一个模板性的notebook文件
参考格式如下:
![avatar](/figure/38.png)
需要注意的是,压缩时需要选中这一级目录下所有文件及文件夹进行压缩,而不是对上一级目录进行压缩
上传后,学生视角的目录如下图所示:
![avatar](/figure/39.png)
其中read_only_sample文件为只读文件,作为备份
多阶段提交需要注意,需要额外加一个output文件夹,该目录下的结构如下图所示:
![avatar](/figure/40.png)
![avatar](/figure/41.png)
有几个阶段就添加多少个phase_x文件夹。phase_x文件夹用于保存学生对应第x阶段代码输出结果。
##四、重置数据集
点击重置Jupyter按钮,可以将该作业对应的notebook删除,学生打开notebook时会以最新上传的数据集作为模板。
![avatar](/figure/42.png)
使用情形:上传数据集有误需要更新时,已有学生打开了notebook,重新上传数据集不会更新已打开notebook的文件,需要点击该按钮解决。
![avatar](/figure/43.png)
![avatar](/figure/44.png)
##五、下载学生代码
![avatar](/figure/45.png)
点击学生代码按钮即可下载
![avatar](/figure/46.png)
可以下载所有学生的代码,学生文件以学号命名
![avatar](/figure/47.png)
学生编写的notebook文件或py文件都会在对应目录下。
##六、模板notebook文件说明
模板文件中包含三块内容:
1.具体题目的程序逻辑
![avatar](/figure/48.png)
2.输出程序,output_string存储程序输出结果, phase_id为阶段id,每个阶段的程序输出分开存放
![avatar](/figure/49.png)
3.打包程序
![avatar](/figure/50.png)
需要改变的主要是第一部分,后两部分为固定代码,使学生按照系统规定地输出结果和打包结果。
![avatar](/figure/51.png)
点击submit按钮可以将prediction_phase_1.zip提交到phase1的排行榜中。

Loading…
Cancel
Save