Skip to content
This repository was archived by the owner on Jun 22, 2022. It is now read-only.

Commit 8200ff1

Browse files
authored
Update README.md
1 parent 3f1ad37 commit 8200ff1

File tree

1 file changed

+113
-6
lines changed

1 file changed

+113
-6
lines changed

README.md

Lines changed: 113 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,6 @@
33

44
This is an open solution to the [Airbus Ship Detection Challenge](https://www.kaggle.com/c/airbus-ship-detection).
55

6-
## More competitions :sparkler:
7-
Check collection of [public projects :gift:](https://app.neptune.ml/-/explore), where you can find multiple Kaggle competitions with code, experiments and outputs.
8-
96
## Our goals
107
We are building entirely open solution to this competition. Specifically:
118
1. **Learning from the process** - updates about new ideas, code and experiments is the best way to learn data science. Our activity is especially useful for people who wants to enter the competition, but lack appropriate experience.
@@ -27,9 +24,119 @@ In this open source solution you will find references to the [neptune.ml](https:
2724

2825
| link to code | CV | LB |
2926
|:---:|:---:|:---:|
30-
|[solution 0](https://github.com/neptune-ml/open-solution-ship-detection/tree/solution-1)|XXX|XXX|
31-
|solution 1|XXX|0.855|
32-
|solution 2|XXX|0.875|
27+
|solution 0|0.779|0.520|
28+
29+
## Start experimenting with ready-to-use code
30+
You can jump start your participation in the competition by using our starter pack. Installation instruction below will guide you through the setup.
31+
32+
### Installation *(fast track)*
33+
1. Clone repository and install requirements (*use Python3.5*) `pip3 install -r requirements.txt`
34+
1. Register to the [neptune.ml](https://neptune.ml) _(if you wish to use it)_
35+
1. Run experiment based on U-Net:
36+
37+
38+
#### Cloud
39+
```bash
40+
neptune account login
41+
```
42+
43+
Create project say Ships (SHIP)
44+
45+
Go to `neptune.yaml` and change:
46+
47+
```yaml
48+
project: USERNAME/PROJECT_NAME
49+
```
50+
to your username and project name
51+
52+
Prepare metadata.
53+
It only needs to be **done once**
54+
55+
```bash
56+
neptune send --worker xs \
57+
--environment base-cpu-py3 \
58+
--config neptune.yaml \
59+
prepare_metadata.py
60+
61+
```
62+
63+
They will be saved in the
64+
65+
```yaml
66+
metadata_filepath: /output/metadata.csv
67+
```
68+
69+
From now on we will load the metadata by changing the `neptune.yaml`
70+
71+
```yaml
72+
metadata_filepath: /input/metadata.csv
73+
```
74+
75+
and adding the path to the experiment that generated metadata say SHIP-1 to every command `--input/metadata.csv`
76+
77+
Let's train the model by running the `main.py`:
78+
79+
```bash
80+
neptune send --worker m-2p100 \
81+
--environment pytorch-0.3.1-gpu-py3 \
82+
--config neptune.yaml \
83+
--input /SHIP-1/output/metadata.csv \
84+
main.py
85+
86+
```
87+
88+
The model will be saved in the:
89+
90+
```yaml
91+
experiment_dir: /output/experiment
92+
```
93+
94+
and the `submission.csv` will be saved in `/output/experiment/submission.csv`
95+
96+
You can easily use models trained during one experiment in other experiments.
97+
For example when running evaluation we need to use the previous model folder in our experiment. We do that by:
98+
99+
changing `main.py`
100+
101+
```python
102+
CLONE_EXPERIMENT_DIR_FROM = '/SHIP-2/output/experiment'
103+
```
104+
105+
and running the following command:
106+
107+
108+
```bash
109+
neptune send --worker m-2p100 \
110+
--environment pytorch-0.3.1-gpu-py3 \
111+
--config neptune.yaml \
112+
--input /SHIP-1/output/metadata.csv \
113+
--input /SHIP-2 \
114+
main.py
115+
```
116+
117+
#### Local
118+
Login to neptune if you want to use it
119+
```bash
120+
neptune account login
121+
```
122+
123+
Prepare metadata by running:
124+
125+
```bash
126+
neptune run --config neptune.yaml prepare_metadata.py
127+
```
128+
129+
Training and inference by running `main.py`:
130+
131+
```bash
132+
neptune run --config neptune.yaml main.py
133+
```
134+
135+
You can always run it with pure python :snake:
136+
137+
```bash
138+
python main.py
139+
```
33140

34141
## Get involved
35142
You are welcome to contribute your code and ideas to this open solution. To get started:

0 commit comments

Comments
 (0)