天涯·明月·刀

  • 29

    获得赞
  • 7

    发布的文章
  • 2

    答辩的项目

Flyai人工智能社区参赛指南—非官方版

数据分析

最后更新 2021-02-22 17:04 阅读 561

最后更新 2021-02-22 17:04

阅读 561

数据分析

Flyai人工智能社区参赛指南—非官方版


        牛年新春马上到来,在这里,先祝小伙伴们新春大吉,工作顺利,合家幸福!再祝小助手,天天美美哒! 

        不知不觉,在社区混迹有两年余,通过打怪升级,从一个AI新手成功的晋升为AI菜鸟!别人是天才,我是“抄添裁”,代码靠抄,适度增添,合理剪裁!ctrl+C(V)法力无边,千秋万代,一统江湖!为了给新手们提供点方便,让他们尽快上手,于是就想写个参赛指南,尽一个菜鸟应尽的责任和义务(主要还是因为新手看完官方的指南,往往找不着北)。下面,是依据flyai2.0 windows版本,结合自己的经验编写,不足之处,大家多多指正。 

         一、主页面 

        在浏览器中,输入www.flyai.com,进入官方网站主页面:

主页面.jpg 

        主页面上方有赛事、学习圈、实验室,以及自己的用户名。 

        当前主页面就是赛事页面,可以看到当前的比赛,你可以参加自己感兴趣的比赛。学习圈发布的主要是小助手不知道从哪里抄来的文章、其他小伙伴的水文和答辩经历等。实验室,是个什么东东,估计和google colab类似的东西吧,我也想进去看看。 

        参加比赛活动,需要个人注册,很简单,微信一扫基本OK了,然后官方会送1000的FlyAI分值,这些分值比赛会用到,基本是线上训练一分钟,就消耗1个FlyAI分值。曾经就有1000分在我面前,我没珍惜,直到用光,我才后悔莫急……现在主要靠每日签到赚个二三十分,痛并快乐着! 

        二、项目页面 

        注册好后,现在我们选取一个比赛来参加吧,比如上图第一个,心率不齐病症检测赛。 

项目页面.jpg

        页面上,我们可以看到赛事介绍,竞赛排行榜,讨论等内容。我们通过阅读赛事介绍,可以了解比赛的相关内容,竞赛排行榜可以看到小伙伴们的比赛成绩,你还可以在讨论页面发表高论,赚个20FlyAI分。 

        好吧,我们现在要做的就是报名参赛,点击右上方那个金光灿灿的“报名参赛“按钮,然后,报名参赛就变成了查看样例,再点击”查看样例“,进入代码页面。 

代码页面.jpg

        左侧边栏,是代码的文件,这里有五个,分别是app.json,main.py,path.py,prediction.py和requirements.txt。

        app.json:这个是该项目的配置文件,不用管它。 

        main.py:这是代码的主要文件,将代码上传到服务器后,服务器就会自动执行该文件的代码,这个也可以说是代码的入口文件,我们将在这个文件中实现程序的主要功能,比如说建立模型、处理数据、训练模型、保存模型等。 

        path.py:这里面是路径的配置,默认有DATA_PATH和MODEL_PATH,你可以添加自己的路径配置。 

        prediction.py:main.py执行完毕后,服务器将调用该文件的Prediction类,依次调用这个类的load_model和predict功能,完成模型的验证,根据模型提交的结果,给出得分。 

        requirements.txt:这里面是该项目用到的包,比如你代码里面用的pytorch版本是1.4,那么,你可以在这个文件里面加入torch==1.4.0,官方服务器一般会把常用的包安装好了,比如说numpy、pandas等,一些不常用的,而你的代码里需要用到的,就可以在这个文件里面添加。 

        理论上,我们只要按照代码框架,完成main.py和prediction.py这两个文件代码的编写就行了。 

        右侧栏,就是相应文件的内容,我们可以在电脑上进行更改,完成后,点击下方的提交训练,就可以上传代码到服务器端进行训练。 

        右侧栏上方最右边,有三个按钮,分别是下载代码、上传代码、查看代码。下载代码,即可将代码下载到本地编辑,完成后,再打包,点击上传代码,即可将线下代码上传到线上;点击查看代码,可以查看以前提交过的代码,方便修改。 

        三、下载代码 

        线上编写,有很多不方便,我们可以下载下来线下编写调试。点击下载代码,解压后,可以得到如下文件: 

下载代码.jpg

        可以看到,会比线上多出几个文件,多出的文件不用管它,我们只看这个flyai.exe,双击运行它,如下图: 

flyai.jpg

        在这里,可以点击“下载数据“按钮,下载部分数据到线下,这时会在当前文件下建立一个data文件夹,用来保存下载数据。点击”提交GPU训练“按钮,即可以将当前目录下的相关文件上传到服务器端进行训练。 

        我们先来看看下载下来的样例数据,样例数据只是全部数据的一部分,主要是用来线下调试代码的。比如,在路径“data/input/ArrhythmiaClassification/“下,有个train.csv文件,打开看看: 

traincsv.jpg

        其中,data就是模型训练需要用到的数据,label是标签。在图像类的比赛,第一栏一般是图片的路径,不同的比赛,略有不同。 

        现在,就可以按照main.py和prediction.py里面样例框架,编写自己的代码,值得注意的是,训练好的模型文件要保存在“data/output/model”路径下面。根据需要,也可以另外新建文件夹或者文件。完成代码编写后,可先用线下数据,本地运行一下,看有没有什么BUG,确定无误后,就可以上传代码,到线上训练了。 

        四、上传代码 

        上传代码有两种方式,一种是直接点击上面flyai.exe图中的“提交GPU训练”,程序就会自动将当前文件夹下面的文件上传到线上,这里需要注意的是,有些我们自己建立的文件夹可能不会上传,所以,如果有新建的文件夹,建议不要采取这种方式上传代码。 

        另外一种上传方式是手动打包上传,这里要将app.json、main.py、prediction.py、path.py、requirements.txt这五个文件,加上我们新建的文件和文件夹,一起打包成压缩包,然后点击下图中“下载代码”旁边的上传按钮,就可以把我们的文件上传到线上了,再点击“提交训练”按钮,就可以训练了。

代码页面.jpg

        五、线上运行 

        这时候,我们可以查看程序运行状态,如下图: 

训练.jpg

        由于线上服务器数量有限,可能需要排队,只能耐心等待,如果不想等,可以点击“取消排队”,但是不能重复提交代码训练,一次只能训练一个任务,如果提交两个以上任务,就会出现上图中的“已加入队列!之前任务完成后,将自动开始训练”,不过有时候,网站后台代码有问题,也会出现这种情况,这时候,就需要我们美丽的Flyai小助手出场了,将你遇见的问题,跟她反馈,一般都能很好解决。 

        训练日志内容会显示requirement.txt里面安装包的安装状况,之后就会显示执行main.py输出显示的内容,比如print。如果程序有错误,会显示错误提示,停止训练。 

        每训练一次,都会消耗我们的FLYAI分值,如果分值为零,就不能再进行训练了。获取积分的方式有每日签到、每日讨论、写写文章,邀请朋友和充钱等等,也可以坚持签到,像我一样发发文章,Fai值自然而来! 

        好了,基本上,常用的东西就是这样了,不过,各位一定确定以及肯定还会碰到各种问题,可以问小助手,边打怪边升级,钢铁就是这样练废的!

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可,转载请附上原文出处链接和本声明。
本文链接地址:https://flyai.com/article/826
讨论
500字
表情
每日优质讨论奖励 20FAI
发送
每日优质讨论奖励 20FAI
删除确认
是否删除该条评论?
取消 删除