Skip to content

Commit 34ae1ae

Browse files
committed
Update backstory, challenge and approach sections with more info
1 parent 53b4b97 commit 34ae1ae

File tree

1 file changed

+28
-33
lines changed

1 file changed

+28
-33
lines changed

MNIST-adversarial-images.ipynb

+28-33
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,27 @@
1313
"cell_type": "markdown",
1414
"metadata": {},
1515
"source": [
16-
"TODO: a little background on the tech challenge"
16+
"## A Tech Challenge & Benchmark\n",
17+
"\n",
18+
"**Backstory**\n",
19+
"\n",
20+
"The original concept of this notebook was based on a Machine Learning (intern) candidate tech challenge from the Toronto startup [500px](https://500px.com).\n",
21+
"\n",
22+
"When I first saw the posting, it was at the beginning of my 3 month career pivot into Deep Learning and I thought this challenge would be a great way for me to benchmark my progress once I get started. You can read more about my career transition journey on [Medium](https://medium.com/towards-data-science/my-3-month-deep-learning-career-pivot-af94cd8d6a31) and a revised/updated version on [LinkedIn]().\n",
23+
"\n",
24+
"Although, I didn't follow through with providing the entire final output of the challenge, I'm quite satisfied that I've successfully completed it and consider it a demonstration of my current knowledge and capability.\n",
25+
"\n",
26+
"Prior to starting this challenge, I completed [Fast.ai: Practical Deep Learning - Part 1](http://course.fast.ai/). Read through my blog post to see my reading material - [Deep Learning Reading List](http://jasonicarter.github.io/deep-learning-reading-list).\n",
27+
"\n",
28+
"**The Challenge (summarized)**\n",
29+
"\n",
30+
"Create adversarial images to fool a MNIST classifier in TensorFlow.\n",
31+
"1. Learn how adversarial examples are created. For example, “Breaking Linear Classifiers on ImageNet” gives a good overview on the subject.\n",
32+
"2. Install Tensorflow\n",
33+
"3. Follow “Deep MNIST for Experts” tutorial to get the MNIST classifier running.\n",
34+
"4. Expand the code from the previous step to generate adversarial images. Specifically, pick 10 images of digit ‘2’ which are correctly classified as ‘2’ by the trained model and modify them so the network incorrectly classifies them as 6.\n",
35+
"5. Generate adversarial examples and save them as a single image containing a grid of 10 rows and 3 columns. The rows correspond to the selected examples of ‘2’. The columns are original image, delta and adversarial image. Provide link to the resulting image.\n",
36+
"6. Make your code clean and readable. Add comments where needed."
1737
]
1838
},
1939
{
@@ -22,39 +42,18 @@
2242
"source": [
2343
"## Approach\n",
2444
"\n",
25-
"1. The basic need-to-know about adversarial images\n",
45+
"1. Read basic need-to-know about adversarial images\n",
2646
"2. Get data to be used throughout notebook\n",
2747
"3. Build a simple CNN (test model)\n",
2848
"4. Train it on MNIST \n",
2949
"5. Show model classification of 10 handwritten 2s\n",
3050
"6. Create adversarial image to classify 2s as 6s\n",
31-
"7. Test adversarial image with original model (in step 2)\n",
32-
"8. Conclusion"
33-
]
34-
},
35-
{
36-
"cell_type": "markdown",
37-
"metadata": {
38-
"heading_collapsed": true
39-
},
40-
"source": [
41-
"## The (very high level) Basics"
51+
"7. Test adversarial image with original model (in step 2)"
4252
]
4353
},
4454
{
4555
"cell_type": "markdown",
46-
"metadata": {
47-
"hidden": true
48-
},
49-
"source": [
50-
"TODO: finish"
51-
]
52-
},
53-
{
54-
"cell_type": "markdown",
55-
"metadata": {
56-
"heading_collapsed": true
57-
},
56+
"metadata": {},
5857
"source": [
5958
"## Data"
6059
]
@@ -63,8 +62,7 @@
6362
"cell_type": "code",
6463
"execution_count": 1,
6564
"metadata": {
66-
"collapsed": true,
67-
"hidden": true
65+
"collapsed": true
6866
},
6967
"outputs": [],
7068
"source": [
@@ -81,8 +79,7 @@
8179
"cell_type": "code",
8280
"execution_count": 2,
8381
"metadata": {
84-
"collapsed": false,
85-
"hidden": true
82+
"collapsed": false
8683
},
8784
"outputs": [
8885
{
@@ -104,8 +101,7 @@
104101
"cell_type": "code",
105102
"execution_count": 3,
106103
"metadata": {
107-
"collapsed": false,
108-
"hidden": true
104+
"collapsed": false
109105
},
110106
"outputs": [
111107
{
@@ -131,8 +127,7 @@
131127
"cell_type": "code",
132128
"execution_count": 4,
133129
"metadata": {
134-
"collapsed": false,
135-
"hidden": true
130+
"collapsed": false
136131
},
137132
"outputs": [
138133
{

0 commit comments

Comments
 (0)