It is necessary to create two files train.py and test.py? I cant save my model and it will be better for me to submit only one file, it is possible? I haven't worked with docker before, so I don't fully understand this system How I should create docker if i use my own data to train the model? Thanks

Created by Alex Romanovski o888ca
Hello, I have the same problem too. Did you manage to solve it yet?
I think the problem is when i run command **bash train.sh** without using docker, I get the same error ``` ': [Errno 2] No such file or directoryy ``` so I would like to ask again has anyone been able to submit a model using Windows? or I need to install linux? Why not implement the ability to load a csv file with predictions? I ran into a docker submission issue, I spent two full days on it and still my problem is not solved. All the while to improve the model, I'm trying to figure out how to submit work Thanks
@tschaffter Yes. I watched this. But I try to submit your model, I cloned git directory, built docker, pushed and got the same error: ``` python: can't open file '/app/train.py ': [Errno 2] No such file or directory ```
The video is available here: https://www.synapse.org/#!Synapse:syn21849255/wiki/602419
@tschaffter I didnt find "video tutorial that shows step by step how to build a submission for evaluation only" Can you send link? I set enable_training to false, but still get 'INVALID' get log "python: can't open file '/app/infer.py ': [Errno 2] No such file or director" but this is identical to the example In Dockerfile I wrote the same: ``` # Move to the app folder RUN mkdir /app WORKDIR /app # Copy our python program for training and inference COPY train.py . COPY infer.py . COPY baseline.joblib . COPY train.sh . COPY infer.sh . ``` and have the same in infer.sh: ``` python /app/infer.py ```
>The only necessary files are the train.sh and the test.sh bash scripts. train.sh can be left blank if you don't plan on training a model on the UW data. The file `train.sh` is actually only required if you set the LABEL `enable_training` to true in your Dockerfile. See the [example](https://www.synapse.org/#!Synapse:syn21849255/wiki/602419) provided. In this mode, the Docker image that you submit will only be run in evaluation mode (sometimes called inference mode). The above example page provides the source code and instructions to build a valid submission. The same page provide a video tutorial that shows step by step how to build a submission for evaluation only (the video was created before we enable training on UW data). Please have a look at this material and let us know if anything is unclear.
Should I replace path "synthetic_data/evaluation" to 'data/' ? Thanks
Thank you @trberg Following your advice, I train the model locally on my data, save on my hard disk and in Dockerfile copy it Also in Dockerfile I copy two empty files: train.sh and train.py, I dont know if the necessary And copy test.sh and test.py In test.py I load my model, allpy on prepared dataset from 'synthetic_data/evaluation' and create directory 'output' and save into csv file 'prediction.csv' I pushed my model and got status "INVALID" (Submission Id - 9706451) Can you help me please?
Hi @o888ca, The only necessary files are the `train.sh` and the `test.sh` bash scripts. `train.sh` can be left blank if you don't plan on training a model on the UW data. The reason we have two files in the tutorial is because the docker container that houses your code will be run in two stages, the training stage when the `/data` folder will have the training data, and the inference/testing stage where the test data will be in the `/data` folder. When the container transitions between these two stages, all code is stopped and all environment variables are cleaned, so the only way to transfer information between the two stages is to save it as a file in either the `scratch` folder or the `model` folder. Just to clarify, you have data that you want to train a model on. You then want to bring that model to the UW environment to just evaluate the model's performance? If that's the case, then either you can bring your data into the UW environment and train on it during the training stage or you can train the model on your local environment and then save and transport that model in the docker container. Is there a reason you can't save the model? Most packages in python allow a model to be saved. I can give you more guidance but I'll need more information on your specific situation, Thanks, @trberg

A few questions about Docker page is loading…