ML4T Software Setup
Contents
Updates
- Wed 24 Aug 2016 - All assignments will need to be submitted through [https://t-square.gatech.edu T-square by the deadline. The feedback provided on the buffet0x machines is still provided as a courtesy, but you must submit your assignments to t-square. We will also run the autograding feedback system on all of the buffet0x machines, instead of only buffet04, since this feedback no longer has to be kept consistent across systems for grading purposes. These changes have been reflected in the instructions below.
Overview
As of Fall 2016, this class has implemented an automated assignment feedback 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, and your code must be submitted to T-square. 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 4 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-4, 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-G
- buffet02.cc.gatech.edu if your last name begins with H-N
- buffet03.cc.gatech.edu if your last name begins with O-U
- buffet04.cc.gatech.edu if your last name begins with V-Z
These machines use your GT login credentials.
NOTE: We reserve the right to limit login access or terminate processes to avoid resource contention with the autograder after assignment due dates, although we will endeavor to limit such interruptions.
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 https://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 you will not get any feedback.
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.
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.
NOTE: The autograder will only remove the GRADEME.txt file once it has completed its run and copied it's files into the feedback/ directory, so if you modify your code before this happens, the feedback may correspond to an earlier version of your code.