Difference between revisions of "ML4T Software Setup"
Bhrolenok3 (talk | contribs) m (Minor updates with changes from discussion June) |
Bhrolenok3 (talk | contribs) m (Clarifications/typos) |
||
Line 20: | Line 20: | ||
* buffet03.cc.gatech.edu if your last name begins with Q-Z | * buffet03.cc.gatech.edu if your last name begins with Q-Z | ||
− | These machines use your GT login credentials. | + | These machines use your GT login credentials. '''NOTE:''' The machine <tt>buffet04.cc.gatech.edu</tt> will also accept your GT login credentials, but we ask that you limit use of this machine to submitting assignments and checking feedback from the autograder, as detailed below. We reserve the right to limit login access or terminate processes to avoid resource contention with the autograder on <tt>buffet04</tt>. |
After you've successfully logged in, you will need to clone the following git repository containing all of the template code and data into your home directory: [https://github.gatech.edu/tb34/ML4T_2016Fall/]. You can do this with the following command: | After you've successfully logged in, you will need to clone the following git repository containing all of the template code and data into your home directory: [https://github.gatech.edu/tb34/ML4T_2016Fall/]. You can do this with the following command: | ||
Line 26: | Line 26: | ||
git clone git@github.gatech.edu:tb34/ML4T_2016Fall.git | git clone git@github.gatech.edu:tb34/ML4T_2016Fall.git | ||
− | again providing your GT login credentials when asked for. Make sure you check out the repository into your home directory (not any sub-directory), and that you do not change the name of the folder. | + | again providing your GT login credentials when asked for. Make sure you check out the repository into your home directory (not any sub-directory), and that you do not change the name of the folder. '''NOTE:''' If you change or rename directory structure, the autograder will not be able to find your assignments and will treat them as unsubmitted. |
== Submitting assignments and getting feedback from the auto grader == | == Submitting assignments and getting feedback from the auto grader == | ||
Line 32: | Line 32: | ||
The repository you've just cloned contains the data and template code for all assignments. To complete the assignments you'll need to modify the templates according to the assignment description. You can do this on the <tt>buffet0X</tt> machines directly using a text editor such as <tt>gedit</tt>, <tt>nano</tt>, or <tt>vim</tt>. Or you can copy the file to your local machine, edit them in your favorite text editor or IDE, and upload them back to the server. Make sure to test run your code on the server after making changes to catch any typos or other bugs. | The repository you've just cloned contains the data and template code for all assignments. To complete the assignments you'll need to modify the templates according to the assignment description. You can do this on the <tt>buffet0X</tt> machines directly using a text editor such as <tt>gedit</tt>, <tt>nano</tt>, or <tt>vim</tt>. Or you can copy the file to your local machine, edit them in your favorite text editor or IDE, and upload them back to the server. Make sure to test run your code on the server after making changes to catch any typos or other bugs. | ||
− | After you are satisfied that your program contains no obvious errors, you can have it tested by our auto grading script to make sure it passes all of our test cases. To do this, simply create an empty text file | + | After you are satisfied that your program contains no obvious errors, you can have it tested by our auto grading script to make sure it passes all of our test cases. To do this, simply create an empty text file named '<tt>GRADEME.txt</tt>' ('''case sensitive''') in the directory of the assignment you would like graded, and copy your assignments over to <tt>buffet04</tt>. You can use the following command to copy your assignments from one of the shared servers (1-3) to <tt>buffet04</tt>: |
− | Final submissions for an assignment are handled in the same way, except the <tt>GRADEME.txt</tt> file is ignored | + | rsync -auv ~/ML4T_2016Fall/ buffet04.cc.gatech.edu:~/ML4T_2016Fall/ |
+ | |||
+ | The auto grader runs periodically, and if it finds the <tt>GRADEME.txt</tt> file in a students assignment directory, it will run the auto grader on that assignment, provide a <tt>score.txt</tt> and <tt>comments.txt</tt> file with more detailed information in the '''feedback/''' sub-directory of the assignment, and remove the <tt>GRADEME.txt</tt> file. | ||
+ | |||
+ | Final submissions for an assignment are handled in the same way, except the <tt>GRADEME.txt</tt> file is ignored, and a snapshot of your assignment directory is saved for the record. |
Revision as of 10:43, 26 July 2016
Contents
Overview
As of Fall 2016, this class uses an automated assignment submission and grading process which requires students to use the servers provided by Georgia Tech. Since these servers have already been configured with all necessary libraries, setup has been reduced to simply checking out a single git repository, which will be covered below. For students with sporadic internet access who would like a local installation of the software, the instructions from previous semesters are available here: ML4T_Software_Installation.
Important Notes
- Your code MUST run properly on the Georgia Tech provided servers. If you do not test your code on the provided machines it may not run correctly in our auto grader. If your code fails to run on the provided servers, you will not get credit for the assignment. So it is very important that you ensure that you have access to, and that your code runs correctly on, these machines.
- We use a specific, static dataset for this course, which is provided as part of the repository detailed below. If you download your own data from Yahoo (or elsewhere), you will get wrong answers on assignments.
Access to machines at Georgia Tech
There are 3 machines that will be accessible to students enrolled in the ML4T class via ssh. These machines may not be available until the second week of class; we will make an announcement once they are ready, and if at that time you are still unable to log in, please contact us. If you are using a Unix based operating system, such as Ubuntu or Mac OS X, you already have an ssh client, and you can connect to one of the servers by opening up a terminal and typing:
xhost + ssh -X gtname@buffet0X.cc.gatech.edu
replacing the X in buffet0X with 1-3, as detailed below. You will then be asked for your password and be logged in. Windows users may have to install an ssh client such as putty. In order to distribute workload across the machines, please use the specific machines as follows:
- buffet01.cc.gatech.edu if your last name begins with A-H
- buffet02.cc.gatech.edu if your last name begins with I-P
- buffet03.cc.gatech.edu if your last name begins with Q-Z
These machines use your GT login credentials. NOTE: The machine buffet04.cc.gatech.edu will also accept your GT login credentials, but we ask that you limit use of this machine to submitting assignments and checking feedback from the autograder, as detailed below. We reserve the right to limit login access or terminate processes to avoid resource contention with the autograder on buffet04.
After you've successfully logged in, you will need to clone the following git repository containing all of the template code and data into your home directory: [1]. You can do this with the following command:
git clone git@github.gatech.edu:tb34/ML4T_2016Fall.git
again providing your GT login credentials when asked for. Make sure you check out the repository into your home directory (not any sub-directory), and that you do not change the name of the folder. NOTE: If you change or rename directory structure, the autograder will not be able to find your assignments and will treat them as unsubmitted.
Submitting assignments and getting feedback from the auto grader
The repository you've just cloned contains the data and template code for all assignments. To complete the assignments you'll need to modify the templates according to the assignment description. You can do this on the buffet0X machines directly using a text editor such as gedit, nano, or vim. Or you can copy the file to your local machine, edit them in your favorite text editor or IDE, and upload them back to the server. Make sure to test run your code on the server after making changes to catch any typos or other bugs.
After you are satisfied that your program contains no obvious errors, you can have it tested by our auto grading script to make sure it passes all of our test cases. To do this, simply create an empty text file named 'GRADEME.txt' (case sensitive) in the directory of the assignment you would like graded, and copy your assignments over to buffet04. You can use the following command to copy your assignments from one of the shared servers (1-3) to buffet04:
rsync -auv ~/ML4T_2016Fall/ buffet04.cc.gatech.edu:~/ML4T_2016Fall/
The auto grader runs periodically, and if it finds the GRADEME.txt file in a students assignment directory, it will run the auto grader on that assignment, provide a score.txt and comments.txt file with more detailed information in the feedback/ sub-directory of the assignment, and remove the GRADEME.txt file.
Final submissions for an assignment are handled in the same way, except the GRADEME.txt file is ignored, and a snapshot of your assignment directory is saved for the record.