草庐IT

Kaggle 新手入门必看,手把手教学

青年有志 2023-04-10 原文

Add Data 的路径:/kaggle/input
git clone 的路径:/kaggle/working

一、Kaggle 账号注册

1.进入官网 Kaggle 点击 Register 进行账号注册

2.随便点一个方式注册,本人用的邮箱

3.点进去填写对应信息进行注册,点击 next 即可

二、Kaggle 创建项目

1.如果你看到是这个界面

2.如果你看到的是这个界面

Kaggle 新建 kernel 有两种方式,这个主要是编辑的环境:

  • Notebook:类似Jupyter notebook
  • Script:类似Pycharm这种编辑环境

编程语言目前只支持 python 和 R 两种

三、新建 Notebook

1.点击 create => New Notebook 新建 Notebook 如下:

注:命令行可以执行 Linux 命令

四、切换工作路径

当新建 Notebook 后路径均为:/kaggle/working

文件目录结果如下:

  • input:一般用于存放训练数据的文件夹
  • config:存放配置文件
  • lib
  • working :工作路径,主要是我们创建的代码文件的工作目录
    • .ipynb_checkpoints
    • notebook_source.ipynb

以下列出常用的路径以及文件查看方式:

import os
print(os.listdir("../")) # ['lib', 'input', 'working'] 
print(os.getcwd())  # 当前文件所在的路径 /kaggle/working
print(os.listdir(os.getcwd()))  # 在 /kaggle/working 文件夹下有两个隐藏文件['.ipynb_checkpoints', '__notebook_source__.ipynb']
print(os.listdir("../../")) # 
print(os.listdir("../input"))   # 查看自己导入的文件
print(os.listdir("../../kaggle"))

一、将本地项目上传到 Kaggle 并运行

举例说明:

方式 1:(我没有成功,谢邀)

1.本地有一个 KaggleTest 项目,先将项目进行压缩

2.包含了一个 main.py 和 test.py

  • 其中 test.py 文件代码如下:
def first_test() :
    print("Hello, world")
    print("Kaggle, very good!")

3.点击自定义上传
4.点击后显示如下,上传刚刚的压缩包,它会自动解压

5.如图就能看到加载好的项目啦,当然没有的话可以点击 Add Data,点击或搜索 Your Datasets 会显示你所有导入的项目

  • 1.上传的数据文件都放在了 input 文件夹下
  • 2.所有的上传的项目文件只读,无法更改

上传项目后如何正确运行项目

  • 最开始新建会出现 Kaggle 自带的代码,运行后可以读取所有文件的路径
# This Python 3 environment comes with many helpful analytics libraries installed
# It is defined by the kaggle/python Docker image: https://github.com/kaggle/docker-python
# For example, here's several helpful packages to load

import numpy as np # linear algebra
import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)

# Input data files are available in the read-only "../input/" directory
# For example, running this (by clicking run or pressing Shift+Enter) will list all files under the input directory

import os
for dirname, _, filenames in os.walk('/kaggle/input'):
    for filename in filenames:
        print(os.path.join(dirname, filename))

# You can write up to 20GB to the current directory (/kaggle/working/) that gets preserved as output when you create a version using "Save & Run All" 
# You can also write temporary files to /kaggle/temp/, but they won't be saved outside of the current session

1、当前的工作目录是在 kaggle/working 目录下,可以用如下代码查看:

import os 
print(os.getcwd())
print(os.listdir(os.getcwd()))
# 结果
"""
/kaggle/working
['__notebook_source__.ipynb', '.virtual_documents']
"""

2、改变当前的工作目录

  • 此时我们把当前的工作目录改到了 input 目录下也就是我们上传的项目对应的目录,这样就可以直接使用我们在项目中的 .py 文件啦
""" change working directory """
import os

if os.path.basename(os.getcwd()) == 'working':
    os.chdir('../input/vitcode') //
    
print('current working directory is {}'.format(os.getcwd()))

print(os.getcwd())
print(os.listdir(os.getcwd()))

方式 2 (一个一个传最为靠谱,别瞎折腾了)

  • 将该文件复制到一个 notebook 的 cell 中,然后在该 cell 的顶部添加一行代码:
%%writefile filename.py
  • 然后运行这个 cell,这个 cell 中的内容就会被写入到 output 的 filename.py 文件。后面就像往常一样了,直接import 使用即可。

  • 如果想要更改其中内容的话,打开一个空的 cell,输入 %load filename.py 然后运行即可载入该文件的内容,改完后用上面的方法重新写入即可。

%load mixmodel.py
  • 此方法需要将文件一个一个下载过去比较繁琐

记得最后进行项目保存

方式 3

方式 1 与 2 的结合

  • 首先经过方式 1 上传本地项目,对应的目录在 /kaggle/input 处。由于工作目录为 / kaggle/working,需要将项目移动到工作目录下。

  • 导入自定义函数.py文件:点击New Notebook后会创建导入my_functions.py的notebook,于是我们可以使用自定义的函数库,这里主要路径不要写错,我们能够导入进来的.py文件一定是放在working里的文件,所以需要将input里面的文件复制到output的working路径里面。这样就能调用我们的自定义函数了。

  • 这个代码只能转移.py文件

# import module we'll need to import our custom module
from shutil import copyfile
 
# copy our file into the working directory (make sure it has .py suffix)
copyfile(src = "../input/create-function/my_functions.py", dst = "../working/my_functions.py")
  • 这个代码可以转移整个项目
import shutil
shutil.copytree(r'../input/vitcode/vision_transformer', r'./visio_transformer')


notebook这种形式不允许 parser = argparse.ArgumentParser() 这种自动参数的形式

有关Kaggle 新手入门必看,手把手教学的更多相关文章

  1. ruby-on-rails - Rails 应用程序中的 Rails : How are you using application_controller. rb 是新手吗? - 2

    刚入门rails,开始慢慢理解。有人可以解释或给我一些关于在application_controller中编码的好处或时间和原因的想法吗?有哪些用例。您如何为Rails应用程序使用应用程序Controller?我不想在那里放太多代码,因为据我了解,每个请求都会调用此Controller。这是真的? 最佳答案 ApplicationController实际上是您应用程序中的每个其他Controller都将从中继承的类(尽管这不是强制性的)。我同意不要用太多代码弄乱它并保持干净整洁的态度,尽管在某些情况下ApplicationContr

  2. 电脑0x0000001A蓝屏错误怎么U盘重装系统教学 - 2

      电脑0x0000001A蓝屏错误怎么U盘重装系统教学分享。有用户电脑开机之后遇到了系统蓝屏的情况。系统蓝屏问题很多时候都是系统bug,只有通过重装系统来进行解决。那么蓝屏问题如何通过U盘重装新系统来解决呢?来看看以下的详细操作方法教学吧。  准备工作:  1、U盘一个(尽量使用8G以上的U盘)。  2、一台正常联网可使用的电脑。  3、ghost或ISO系统镜像文件(Win10系统下载_Win10专业版_windows10正式版下载-系统之家)。  4、在本页面下载U盘启动盘制作工具:系统之家U盘启动工具。  U盘启动盘制作步骤:  注意:制作期间,U盘会被格式化,因此U盘中的重要文件请注

  3. Unity 3D 制作开关门动画,旋转门制作,推拉门制作,门把手动画制作 - 2

    Unity自动旋转动画1.开门需要门把手先动,门再动2.关门需要门先动,门把手再动3.中途播放过程中不可以再次进行操作觉得太复杂?查看我的文章开关门简易进阶版效果:如果这个门可以直接打开的话,就不需要放置"门把手"如果门把手还有钥匙需要旋转,那就可以把钥匙放在门把手的"门把手",理论上是可以无限套娃的可调整参数有:角度,反向,轴向,速度运行时点击Test进行测试自己写的代码比较垃圾,命名与结构比较拉,高手轻点喷,新手有类似的需求可以拿去做参考上代码usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;u

  4. LC滤波器设计学习笔记(一)滤波电路入门 - 2

    目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称

  5. 微信小程序开发入门与实战(Behaviors使用) - 2

    @作者:SYFStrive @博客首页:HomePage📜:微信小程序📌:个人社区(欢迎大佬们加入)👉:社区链接🔗📌:觉得文章不错可以点点关注👉:专栏连接🔗💃:感谢支持,学累了可以先看小段由小胖给大家带来的街舞👉微信小程序(🔥)目录自定义组件-behaviors    1、什么是behaviors    2、behaviors的工作方式    3、创建behavior    4、导入并使用behavior    5、behavior中所有可用的节点    6、同名字段的覆盖和组合规则总结最后自定义组件-behaviors    1、什么是behaviorsbehaviors是小程序中,用于实现

  6. 【Java入门】使用Java实现文件夹的遍历 - 2

    遍历文件夹我们通常是使用递归进行操作,这种方式比较简单,也比较容易理解。本文为大家介绍另一种不使用递归的方式,由于没有使用递归,只用到了循环和集合,所以效率更高一些!一、使用递归遍历文件夹整体思路1、使用File封装初始目录,2、打印这个目录3、获取这个目录下所有的子文件和子目录的数组。4、遍历这个数组,取出每个File对象4-1、如果File是否是一个文件,打印4-2、否则就是一个目录,递归调用代码实现publicclassSearchFile{publicstaticvoidmain(String[]args){//初始目录Filedir=newFile("d:/Dev");Datebeg

  7. ES基础入门 - 2

    ES一、简介1、ElasticStackES技术栈:ElasticSearch:存数据+搜索;QL;Kibana:Web可视化平台,分析。LogStash:日志收集,Log4j:产生日志;log.info(xxx)。。。。使用场景:metrics:指标监控…2、基本概念Index(索引)动词:保存(插入)名词:类似MySQL数据库,给数据Type(类型)已废弃,以前类似MySQL的表现在用索引对数据分类Document(文档)真正要保存的一个JSON数据{name:"tcx"}二、入门实战{"name":"DESKTOP-1TSVGKG","cluster_name":"elasticsear

  8. ruby-on-rails - ruby 新手,有人可以帮我从控制台破译这个错误吗? - 2

    我真的只是不确定这意味着什么或我应该做什么才能让网页在我的本地主机上运行。现在它只是显示一个错误,上面写着“我们很抱歉,但出了点问题。”当我运行railsserver并在chrome中打开localhost:3000时。这是控制台输出:StartedGET"/users/sign_in"for127.0.0.1at2013-07-0512:07:07-0400ProcessingbyDevise::SessionsController#newasHTMLCompleted500InternalServerErrorin55msNoMethodError(undefinedmethod`

  9. 区块链入门教程(6)--WeBASE-Front节点前置服务安装 - 2

    文章目录1.任务背景2.任务目标3.相关知识点4.任务实操4.1安装配置JDK4.2启动FISCOBCOS4.3下载解压WeBASE-Front4.4拷贝sdk证书文件4.5启动节点4.6访问节点4.7检查运行状态5.任务总结1.任务背景FISCOBCOS其实是有控制台管理工具,用来对区块链系统进行各种管理操作。但是对于初学者来说,还是可视化界面更友好,本节就来介绍WeBASE管理平台,这是一款微众银行开源的自研区块链中间件平台,可以降低区块链使用的门槛,大幅提高区块链应用的开发效率。微众银行是腾讯牵头设立的民营银行,在国内民营银行里还是比较出名的。微众银行参与FISCOBCOS生态建设,一定

  10. Tcl脚本入门笔记详解(一) - 2

    TCL脚本语言简介•TCL(ToolCommandLanguage)是一种解释执行的脚本语言(ScriptingLanguage),它提供了通用的编程能力:支持变量、过程和控制结构;同时TCL还拥有一个功能强大的固有的核心命令集。TCL经常被用于快速原型开发,脚本编程,GUI和测试等方面。•实际上包含了两个部分:一个语言和一个库。首先,Tcl是一种简单的脚本语言,主要使用于发布命令给一些互交程序如文本编辑器、调试器和shell。由于TCL的解释器是用C\C++语言的过程库实现的,因此在某种意义上我们又可以把TCL看作C库,这个库中有丰富的用于扩展TCL命令的C\C++过程和函数,所以,Tcl是

随机推荐