--Démarrez le conteneur en utilisant l'image officielle de Kaggle (kaggle / python)
--Téléchargez le fichier csv avec la commande kaggle ~
--Téléchargez le notebook public avec la commande kaggle ~
kaggle.json
(kaggle.com> Mon compte> bouton Créer un nouveau jeton API)$ docker run -it --rm --mount type=bind,src=
pwd,dst=/root/dev kaggle/python
$ pip install kaggle
$ mkdir ~/.kaggle
$ cp /root/dev/kaggle.json ~/.kaggle
$ chmod 600 ~/.kaggle/kaggle.json
$ kaggle competitions download -c titanic -p input/titanic
$ unzip input/titanic/titanic.zip input/titanic
$ kaggle kernels pull arthurtok/introduction-to-ensembling-stacking-in-python -p ./
Je télécharge l'ensemble de données de la compétition Titanic Si vous n'avez aucun problème, vous pouvez le fermer ici: détendu:
macOS 10.14.6 (Mojave) Docker 19.03.4
--notebook instable --Je veux écrire du code avec VS Code --Je ne veux pas polluer l'environnement mondial --Collision entre pip et conda
Un gars qui peut faire les opérations sur le site de Kaggle depuis la ligne de commande
--Téléchargement de l'ensemble de données --Soumettre --Liste des compétitions disponibles --Télécharger le classement
etc…
Pour plus de détails, voir Official Repository
Liste des commandes
kaggle competitions {list, files, download, submit, submissions, leaderboard}
kaggle datasets {list, files, download, create, version, init}
kaggle kernels {list, init, push, pull, output, status}
kaggle config {view, set, unset}
kaggle_titanic
├── input
│ └── titanic <-Gagnez si vous pouvez télécharger le fichier csv ici
└── working <-Gagnez si vous pouvez télécharger le fichier ipynb ici
Depuis Mon compte en haut à droite
C'est au milieu
kaggle.json
sera téléchargé, donc enregistrez-le dans le répertoire kaggle_titanic
.
Le contenu est comme ça
kaggle.json
{"username":"anata_no_namae","key":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}
Vous pouvez invalider le jeton ici Lorsque vous appuyez sur quelque chose comme "J'ai accidentellement poussé kaggle.json vers GitHub!"
Image officielle de Kaggle Utilisez kaggle / python
La commande suivante dans le répertoire kaggle_titanic
docker run -it --rm --mount type=bind,src=`pwd`,dst=/root/dev kaggle/python
L'explication de l'option est écrite ici, si vous le souhaitez -> [[Explication avec image] Créez un environnement Anaconda avec Docker et utilisez VS Code dans le conteneur](https://qiita.com/komiya_____/items/96c14485eb035701e218#%E3%82%B3%E3%83%B3 % E3% 83% 86% E3% 83% 8A% E8% B5% B7% E5% 8B% 95)
Déplacer vers le répertoire monté
cd /root/dev
OK si le contenu est synchronisé
ls
input kaggle.json working
pip install kaggle
kaggle -v
Traceback (most recent call last):
File "/opt/conda/bin/kaggle", line 7, in <module>
from kaggle.cli import main
File "/opt/conda/lib/python3.6/site-packages/kaggle/__init__.py", line 23, in <module>
api.authenticate()
File "/opt/conda/lib/python3.6/site-packages/kaggle/api/kaggle_api_extended.py", line 149, in authenticate
self.config_file, self.config_dir))
OSError: Could not find kaggle.json. Make sure it's located in /root/.kaggle. Or use the environment method.
je suis tellement fâché Vous dites quelque chose comme kaggle.json introuvable
Créez un répertoire ~ / .kaggle /
et copiez-y kaggle.json
** * Le répertoire ~ / .kaggle /
a peut-être été créé au moment de $ kaggle -v
, mais ce n'est pas un problème **
mkdir ~/.kaggle # <-On vous dira peut-être que vous avez déjà un répertoire, mais ne vous inquiétez pas
cp /root/dev/kaggle.json ~/.kaggle
kaggle -v
Warning: Your Kaggle API key is readable by other users on this system! To fix this, you can run 'chmod 600 /root/.kaggle/kaggle.json'
Kaggle API 1.5.6
Je peux l'utiliser, mais je suis toujours en colère Les autres utilisateurs peuvent lire la clé API, alors changez l'autorité
chmod 600 ~/.kaggle/kaggle.json
kaggle -v
Kaggle API 1.5.6
Huh
La série de traitements ici peut être exécutée collectivement dans la cellule Il existe également une stratégie pour en faire un fichier et le réutiliser
kaggle_settings.ipynb
!pip install kaggle
!mkdir ~/.kaggle
!cp /root/dev/kaggle.json ~/.kaggle
!chmod 600 ~/.kaggle/kaggle.json
Spécifiez le nom du concours avec -c
-p
Spécifie le chemin de destination de l'enregistrement
kaggle competitions download -c titanic -p input/titanic
ls input/titanic
titanic.zip
titanic.zip
a été téléchargé
Par exemple, dans le concours «Severstal: Détection des défauts d'acier», ce
Décompressez le fichier titanic.zip
téléchargé
unzip input/titanic/titanic.zip -d input/titanic
ls input/titanic
gender_submission.csv test.csv titanic.zip train.csv
Il y a 3 éléments, gender_submission.csv
, test.csv
et train.csv
.
Vous pouvez maintenant télécharger le jeu de données
La notation du cahier est ici
kaggle kernels pull arthurtok/introduction-to-ensembling-stacking-in-python -p ./working
ls ./working
introduction-to-ensembling-stacking-in-python.ipynb
Gagnant parce qu'il est tiré correctement
Il est bon de pouvoir écrire du code avec intelligence ou sa propre liaison de clé
[Explication avec image] Convertir le code VS en Jupyter
Ajout de l'option -p 8888: 8888
lors du démarrage du conteneur (associer les ports côté hôte et côté conteneur)
docker run -p 8888:8888 -it --rm --mount type=bind,src=`pwd`,dst=/root/dev kaggle/python
jupyter lab --ip=0.0.0.0 --port=8888 --no-browser --allow-root --NotebookApp.token=''
Ouvrez localhost: 8888
depuis la barre d'adresse de votre navigateur et c'est OK
Merci d'avoir lu jusqu'au bout
Recommended Posts