This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
cs501r_f2016:tmp [2016/11/09 18:21] wingated |
cs501r_f2016:tmp [2016/11/09 18:30] wingated |
||
---|---|---|---|
Line 33: | Line 33: | ||
---- | ---- | ||
====Description:==== | ====Description:==== | ||
+ | |||
+ | For this lab, you should implement a Siamese network, and train it to recognize whether or not two faces are the same or different. | ||
+ | |||
+ | No scaffolding code (except for a simple script for loading the images below) will be provided. The goal of this lab is for you to experiment with implementing an idea end-to-end. | ||
+ | |||
+ | The steps for completion of this lab are: | ||
+ | |||
+ | - Load all of the data. Create a test/training split. | ||
+ | - Establish a baseline accuracy (ie, if you randomly predict same/different, what accuracy do you achieve?) | ||
+ | - Use tensorflow to create your siamese network. | ||
+ | - Use ResNets to extract features from the images | ||
+ | - Make sure that parameters are shared across both halves of the network! | ||
+ | - Train the network using an optimizer of your choice | ||
+ | |||
+ | Note: you will NOT be graded on the accuracy of your final classifier, as long as you make a good faith effort to come up with something that performs reasonably well. | ||
+ | |||
+ | Your ResNet should extract a vector of features from each image. Those feature vectors should then be compared to calculate an "energy"; that energy should then be input into a contrastive loss function, as discussed in class. | ||
+ | |||
+ | Note that some people in the database only have one image. These images are still useful, however (why?), so don't just throw them away. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ====Writeup:==== | ||
+ | |||
+ | As discussed in the "Deliverable" section, your writeup must include the following: | ||
+ | |||
+ | - A description of your test/training split | ||
+ | - A description of your resnet architecture (layers, strides, nonlinearities, etc.) | ||
+ | - How you assessed whether or not your architecture was working | ||
+ | - The final performance of your classifier | ||
+ | |||
+ | This writeup should be small - between 1/2 - 1 page. You don't need to wax eloquent. | ||
---- | ---- |