# kaggle使用指南 **Repository Path**: zy_12341234/kaggle-users-guide ## Basic Information - **Project Name**: kaggle使用指南 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-07-06 - **Last Updated**: 2024-07-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 打比赛 ## 1、进入要打的比赛 ![image-20240608030545221](images/image-20240608030545221.png) ## 2、创建一个Notebook 这里有两种办法 ### 1、新建一个空的Notebook 第一种是自己新建一个空的Notebook,点击New Notebook即可 ![image-20240608030644675](images/image-20240608030644675.png) 创建后是这样的 ![image-20240608030758902](images/image-20240608030758902.png) ### 2、在别人代码的基础上编辑 第二种办法是挑一个前人的代码来接着编辑(一般可以选择Most Votes最多投票,Most Comments最多评论,Public Score公榜排名) ![image-20240608031119395](images/image-20240608031119395.png) 进入代码页面后可以看到这份提交的一系列信息: #### Notebook **Notebook**:别人的代码 ![image-20240608032125715](images/image-20240608032125715.png) #### Input Input:输入,肯定有Input Data也就是数据集文件 ![image-20240608031642040](images/image-20240608031642040.png) 如果有使用自己上传的预训练权重,数据集的话还会有Models,Dataset ![image-20240608031710020](images/image-20240608031710020.png) #### Output Output:输出,一般会有预测结果,还有训练后的模型权重 ![image-20240608031820564](images/image-20240608031820564.png) #### Logs Logs:提交时候的日志,里面会有提交时的输出,对应每个时间 ![image-20240608032022273](images/image-20240608032022273.png) #### Comments Comments:评论 ![image-20240608032052483](images/image-20240608032052483.png) 回到正题,只需要点击右上角的Edit My Copy就可以把别人的代码拿来自己用 image-20240608032240960 如图就可以了 ![image-20240608032523530](images/image-20240608032523530.png) ## 3、基础操作 一些jupyter notebook的操作就不多说了,主要说说别的操作 ### 1、使用gpu 右侧栏找到Session options,设置如图(每周30个小时P100,嘎嘎良心) 注意:控制使用GPU的是ACCELERATOR选项。INTERNET选项一定要勾选,否则用不了网络(不能pip install等) ![image-20240608034213612](images/image-20240608034213612.png) 测试gpu是否启动成功可以用以下两种方法 ![image-20240608034406327](images/image-20240608034406327.png) ### 2、上传 右侧栏找到Input ![image-20240608034527024](images/image-20240608034527024.png) #### Add Input Add Input适用于添加一些kaggle公开的模型,数据集,别人的notebook。 或者说添加一些自己之前添加过,有备份的东西(备份容量将近300G,真他妈良心) ![image-20240608034900354](images/image-20240608034900354.png) #### Upload Upload为上传模型或数据集。 ##### 上传数据集 上传数据集很简单,直接上传zip压缩文件就行,记得起一个名字。等上传完毕点create就行了 ![image-20240608035507192](images/image-20240608035507192.png) 上传后无需解压,直接就能用 ![image-20240608041649699](images/image-20240608041649699.png) ###### 高级操作 【使用kaggle平台GPU运行自己本地项目】https://www.bilibili.com/video/BV1UQ4y1u7dU?vd_source=a77be1576ac9581dd233524106393c43中提到了:如果数据集目录太深会出现什么问题(虽然我还没遇到) 解决办法是通过`cp -r 文件原本路径 文件目标路径`将文件拷贝到层级更浅的目录,比如: ![image-20240608042434851](images/image-20240608042434851.png) ##### 上传模型 上传模型稍微复杂一点点 ![image-20240608035846532](images/image-20240608035846532.png) ###### New Model 如果选择左边New Model就会上传一个新的模型,然后要选择深度学习框架,选择后下面还会提示模型的后缀,最后再拖动上传就可以了。上传完后直接Back to notebook就行。 ![image-20240608040248338](images/image-20240608040248338.png) ###### New Variation 如果选择右边New Variation,需要选择一个之前上传过的模型,然后更新他 ![image-20240608040600973](images/image-20240608040600973.png) ### 3、提交 当你调试好代码可以提交了的时候,从右侧栏找到Submit to competition,点击Submit ![image-20240608042921998](images/image-20240608042921998.png) 然后取一个提交名称(似乎没啥意义),点击Submit ![image-20240608043004838](images/image-20240608043004838.png) 这时左侧就会出现正在提交 image-20240608043031530 点击三个点,Open Logs in Viewer ![image-20240608043207838](images/image-20240608043207838.png) 就可以实时看到提交状况,能看到每一个时刻的输出 ![image-20240608043310534](images/image-20240608043310534.png) 如果不出意外的话,输出完下面几行NbConvertApp就会提交成功 ![image-20240608043509624](images/image-20240608043509624.png) 如图提交成功 ![image-20240608043417192](images/image-20240608043417192.png) ### 4、other操作 **notebook改名,左上角** ![image-20240608033257261](images/image-20240608033257261.png) **右侧栏Output这里其实是notebook的工作目录,如果代码中要用到相对路径可以参考这个** ![image-20240608043638260](images/image-20240608043638260.png) **如果代码输出太多,看的费劲,可以右键Clear Outputs或Clear All Outputs** ![image-20240608043851678](images/image-20240608043851678.png) # 白嫖GPU ### 1、将自己的项目压缩为zip格式 注意,自己的项目最好现在自己电脑上跑通,并且提供尽量多的参数接口(因为上传到kaggle后,项目的权限就变为只读) ### 2、上传项目 在Input-Upload中的dataset中上传项目(一定要dataset,不能用model,因为model对后缀有要求,而dataset只要求上传zip就行) ### 3、配置环境 终端内`pip install -r requirements.txt`,注意requietments文件的路径 ### 4、进入项目路径 这一点非常重要,否则项目中的相对路径都会报错 ### 5、运行py文件 通过`!python 文件名 参数`就可以运行训练或预测脚本,比如: ``` 训练: !python /kaggle/input/yolov5-messi/yolo_dataset/train.py --batch-size 16 --project /kaggle/working/runs/train 预测: !python /kaggle/input/yolov5-messi/yolo_dataset/detect.py --weight /kaggle/working/exp/weights/best.pt --project /kaggle/working/runs/detect/ ``` ### 6、注意 训练或者预测的时候需要把项目的各种输出(比如权重,数据,tensorboard,预测视频等)的保存路径设为Output中的路径。因为Input中的文件是只读的,没有权限进行保存或更改