-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathindex.xml
More file actions
570 lines (400 loc) · 33 KB
/
Copy pathindex.xml
File metadata and controls
570 lines (400 loc) · 33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Osama Sakhi</title>
<link>http://sakhi.es/</link>
<atom:link href="http://sakhi.es/index.xml" rel="self" type="application/rss+xml" />
<description>Osama Sakhi</description>
<generator>Source Themes Academic (https://sourcethemes.com/academic/)</generator><language>en-us</language><copyright>Osama Sakhi © 2019</copyright><lastBuildDate>Fri, 10 Jan 2020 00:00:00 +0000</lastBuildDate>
<image>
<url>http://sakhi.es/img/icon-192.png</url>
<title>Osama Sakhi</title>
<link>http://sakhi.es/</link>
</image>
<item>
<title>Pathfinding</title>
<link>http://sakhi.es/teaching/tip/pathfinding/</link>
<pubDate>Mon, 02 Sep 2019 00:00:00 +0100</pubDate>
<guid>http://sakhi.es/teaching/tip/pathfinding/</guid>
<description>
<h2 id="project-links">Project Links</h2>
<p>Here are links to the projects I used for my students during the Pathfinding portion of the course:</p>
<ul>
<li><a href="http://ai.berkeley.edu/search.html" target="_blank">Pacman Search Project</a></li>
</ul>
</description>
</item>
<item>
<title>Machine Learning</title>
<link>http://sakhi.es/teaching/tip/ml/</link>
<pubDate>Mon, 02 Sep 2019 00:00:00 +0100</pubDate>
<guid>http://sakhi.es/teaching/tip/ml/</guid>
<description>
<h2 id="project-links">Project Links</h2>
<p>Here are links to the repos/projects I created or used for my students during the Machine Learning portion of the course:</p>
<ul>
<li><a href="https://github.com/mosdragon/teach_ml" target="_blank">Repository for AI</a></li>
<li><a href="https://github.com/mosdragon/teach_ml/blob/master/machine_learning_walkthrough.ipynb" target="_blank">Machine Learning Experiment Walkthrough</a></li>
<li><a href="https://github.com/mosdragon/teach_ml/blob/master/cross_validation_tutorial.ipynb" target="_blank">Cross-Validation Tutorial</a></li>
<li><a href="https://github.com/mosdragon/teach_ml/blob/master/naive_bayes.ipynb" target="_blank">Naive Bayes by Hand</a></li>
<li><a href="https://github.com/mosdragon/teach_ml/blob/master/neural_networks_by_hand.ipynb" target="_blank">Neural Networks by Hand</a></li>
<li><a href="https://github.com/mosdragon/teach_ml/blob/master/regression_tutorial.ipynb" target="_blank">Regression Tutorial</a></li>
</ul>
</description>
</item>
<item>
<title>Natural Language Processing</title>
<link>http://sakhi.es/teaching/tip/nlp/</link>
<pubDate>Mon, 02 Sep 2019 00:00:00 +0100</pubDate>
<guid>http://sakhi.es/teaching/tip/nlp/</guid>
<description>
<h2 id="project-links">Project Links</h2>
<p>Here are links to the projects I created or used for my students during the Natural Language Processing portion of the course:</p>
<ul>
<li><a href="https://github.com/mosdragon/teach_ml/blob/master/amazon_reviews_classification.ipynb" target="_blank">Sentiment Analysis of Amazon Reviews</a></li>
</ul>
</description>
</item>
<item>
<title>The REDUCE Project</title>
<link>http://sakhi.es/project/reduce/</link>
<pubDate>Fri, 10 Jan 2020 00:00:00 +0000</pubDate>
<guid>http://sakhi.es/project/reduce/</guid>
<description>
<h2 id="background">Background</h2>
<p>The <a href="https://socweb.cc.gatech.edu/projects/" target="_blank">REDUCE</a> project seeks to improve real-time estimation of suicide rates to better enable suicide prevention activities. We&rsquo;ve partnered with the CDC to use historical trends with other signals such as social media data to forecast suicide trends week-to-week.</p>
<p>One of the motivations for integrating social media data is the speed at which up-to-date social media can be obtained &ndash; instantly. In contrast, the ground-truth suicide trend data takes nearly two years for the CDC to aggregate and publish, which presents problems for real-time estimation of suicide trends.</p>
<p>For my role in this project, I&rsquo;ve primarily worked on extracting meaninful signals from the social media data we&rsquo;ve collected. Most of my time has been spent on the Twitter dataset, which has over 63 million tweets focused around a selected set of keyword phrases related to depression, anxiety, and suicide.</p>
<p>I worked on creating embeddings of these tweets that would then be aggregated on a weekly basis. These aggregations would then represent the mass of tweets for that week and could then be used as the features <code>X</code> with the target variable <code>y</code> being the true number of suicide attempts that week (provided by the CDC). With the right embedding, we could train regression models to predict this <code>y</code> fairly accurately. This regression model would then serve as one learner in a final ensemble-based approach which uses models built separately on data from other sources such as Google Health data and Reddit language model data.</p>
<h2 id="approaches">Approaches</h2>
<h3 id="lexicographical-inquiry-and-word-count-bag-of-words">Lexicographical Inquiry and Word Count + Bag of Words</h3>
<p>For each tweet, we wanted to create a high dimensional tensor that would represent the contents of this tweet entirely. We decided to use both a Bag-of-Words embedding along with the LIWC scores as the embedding for each tweet.</p>
<p>With the Bag of Words model, we tried several &ldquo;flavors&rdquo; to see what would work best to create our vocabulary and embeddings:</p>
<ul>
<li><code>vanilla</code> - Using the top 10k words in the corpus</li>
<li><code>deslang</code> - Using the top 10k words in the corpus after internet slang words were expanded.
<ul>
<li>Ex: In our tweets, the phrase <code>iykyk</code> would be expanded into the five words <code>if you know you know</code></li>
</ul></li>
<li><code>stopwords</code> - Removal of the top english stopwords before keeping the top 10 words</li>
<li><code>deslang_stopwords</code> - A combination of the approaches for <code>deslang</code> and <code>stopwords</code></li>
</ul>
<h3 id="document-embeddings">Document Embeddings</h3>
<p>This is a new direction we are currently exploring. One crucial limitation of the Bag of Words approach is that the model doesn&rsquo;t take into consideration any sentence structure. This could be problematic especially with our task since certain ways of phrasing a set of words could be perceived as either cause for alarm or casual internet sarcasm.</p>
<p>To see if this limitation has any effect on the final models used to help predict suicide trends, we are looking into embeddings that are designed to capture document-level patterns. These embeddings can capture much more complex semantic relationships which could be invaluable in our task. Some of the models we&rsquo;re looking at right now include <em>doc2vec</em> and <em>SBERT</em>.</p>
<h2 id="results">Results</h2>
<p>This project is ongoing, so we don&rsquo;t have concrete numbers to publish here at this time. However, we have found that the regression models built off of some of the Bag-of-Words embeddings, particularly the <code>stopwords</code> and <code>deslang_stopwords</code> flavors, have shown promising results already, comparable to those we&rsquo;re seeing from ground-truth suicide trend data.</p>
</description>
</item>
<item>
<title>Cross-Domain Context Prediction</title>
<link>http://sakhi.es/project/crossdom/</link>
<pubDate>Sat, 30 Nov 2019 12:00:00 +0000</pubDate>
<guid>http://sakhi.es/project/crossdom/</guid>
<description>
<h2 id="problem-statement">Problem Statement</h2>
<ul>
<li>Given a hand-drawn sketch, retrieve the image instance that this sketch was drawn for
<img src="probstatement.png" alt="" /></li>
</ul>
<h2 id="related-work">Related Work</h2>
<ul>
<li><a href="https://arxiv.org/abs/1505.05192" target="_blank">Unsupervised Visual Representation Learning by Context Prediction</a></li>
<li><a href="http://sketchy.eye.gatech.edu/paper.pdf" target="_blank">The Sketchy Database: Learning to Retrieve Badly Drawn Bunnies</a></li>
<li><a href="https://www.sciencedirect.com/science/article/abs/pii/S0925231217314364#!" target="_blank">Cross-modal Subspace Learning for fine-grained sketch-based image retrieval</a></li>
</ul>
<h2 id="approach">Approach</h2>
<h3 id="assumptions">Assumptions</h3>
<ul>
<li>Aligned, paired images available. For this, we compute canny edges of the images in the PASCAL VOC dataset.</li>
<li>Clustering image and sketch embeddings from a well-trained network will result in well-formed discrete clusters that are domain agnostic.</li>
<li>The model that performs well on cross domain context prediction will perform well on the cross-domain image retrieval task.</li>
</ul>
<h3 id="pre-text-task">Pre-text Task</h3>
<ul>
<li>We divide the image into 4 regions, with uneven spacing and jitter</li>
<li>We then extract two patches, one from each domain, i.e. images from Pascal, and their Canny edges</li>
<li>We finally compute the relative positioning of the patches using the context encoder</li>
</ul>
<p><img src="spatial.png" alt="Spatial relation between patches" />
<img src="classification.png" alt="AlexNet-inspired classification architecture" /></p>
<h3 id="image-retrieval">Image Retrieval</h3>
<ul>
<li>We first compute embeddings for the query sketch using AlexNet trained on the pretext</li>
<li>We then perform a nearest neighbour search on the embeddings from the dataset of images</li>
<li>We retrieve the nearest 5 and 10 images for top-5 and top-10 similarity scores</li>
</ul>
<p><img src="neighbors.png" alt="Computing embeddings and finding nearest neighbors" /></p>
<h2 id="results">Results</h2>
<h3 id="visual-results">Visual Results</h3>
<p><img src="visual1.png" alt="Good Results" /></p>
<ul>
<li>Here is one of our &ldquo;bad&rdquo; results &ndash; we can see that the correct instance image is present in the retrieved images</li>
<li>We can also see that the other bird result also captures similar pose as the sketch</li>
</ul>
<p><img src="visual2.png" alt="Bad Results" /></p>
<ul>
<li>Here is one of our &ldquo;bad&rdquo; results &ndash; we see that the correct instance wasn&rsquo;t retrieved</li>
<li>Additionally, the correct class wasn&rsquo;t retrieved either</li>
<li>Note how despite the incorrect class/instance retrieval, we do see similarities in the pose and shape between the sketches and the retrieved images</li>
</ul>
<h3 id="comparison-to-baselines">Comparison to Baselines</h3>
<p><img src="results_table.png" alt="Results table. Our methodology beats out feature pyramids without any supervision." /></p>
<ul>
<li>Although our approach didn&rsquo;t beat out our main baseline, the Sketchy database approach, we were able to beat out the feature pyramid approach with no supervision</li>
</ul>
<h2 id="future-work">Future Work</h2>
<ul>
<li>Study the effects of further training on pretext task</li>
<li>Use context-encoder as pretraining for supervised image retreival models</li>
<li>Use more sophisticated feature extractors (like GoogLeNet or VGG) that more recent Sketch-Based Image Retrieval methods use</li>
</ul>
</description>
</item>
<item>
<title>Generative Adversarial Networks Discussion</title>
<link>http://sakhi.es/talk/gans/</link>
<pubDate>Mon, 02 Sep 2019 13:30:00 +0000</pubDate>
<guid>http://sakhi.es/talk/gans/</guid>
<description><!-- <div class="alert alert-note">
<div>
Click on the <strong>Slides</strong> button above to view the built-in slides feature.
</div>
</div>
-->
<p>I was enrolled in a seminar course titled <em>Learning with Limited Supervision</em> in <em>Fall 2019</em>, and each class a group of students would lead a discussion on a chosen paper. For my discussion, I chose the <a href="http://papers.nips.cc/paper/5423-generative-adversarial-nets.pdf" target="_blank"><em>Generative Adversarial Networks</em></a> by Ian Goodfellow.</p>
<p>I was tasked with not only presenting the methodology, but also debating the strengths of the paper against my colleague who presented the paper&rsquo;s weaknesses.</p>
<p>Despite the paper being a seminal work in Computer Vision and in Deep Learning, there was plenty to discuss about the ideas presented in this paper since a few years have passed since its publishing, which allows us to look back and reflect on how these ideas have held up over the years.</p>
<!-- - **Create** slides using Academic's [*Slides*](https://sourcethemes.com/academic/docs/managing-content/#create-slides) feature and link using `slides` parameter in the front matter of the talk file
- **Upload** an existing slide deck to `static/` and link using `url_slides` parameter in the front matter of the talk file
- **Embed** your slides (e.g. Google Slides) or presentation video on this page using [shortcodes](https://sourcethemes.com/academic/docs/writing-markdown-latex/). -->
</description>
</item>
<item>
<title>SUMO Challenge</title>
<link>http://sakhi.es/project/sumo/</link>
<pubDate>Mon, 02 Sep 2019 00:00:00 +0000</pubDate>
<guid>http://sakhi.es/project/sumo/</guid>
<description>
<h2 id="background">Background</h2>
<p>In Fall 2018, I joined <a href="http://cs.brown.edu/people/zr1/" target="_blank">Zhile Ren</a> and <a href="(https://www.cc.gatech.edu/~dellaert/FrankDellaert/Frank_Dellaert/Frank_Dellaert.html)" target="_blank">Frank Dellaert</a> on the <a href="https://sumochallenge.org" target="_blank">SUMO Challenge</a> by Facebook.</p>
<p>The SUMO Challenge has several tracks for which we can compete for the best results, so our team decided to compete for the 3D Bounding Box track. That is, given 360 Degree RGB-Depth images, can we determine the 3D oriented bounding box for each of the items in the given scene?</p>
<p>There are over 100 included object categories, with a pretty skewed distribution:
<img src="http://sakhi.es/img/category_stats.png" alt="Sumo Categories" /></p>
<h2 id="approaches">Approaches</h2>
<p>At first, Zhile and I were determined to use direct 3D detection approaches like using <a href="http://cs.brown.edu/people/zr1/publications/cvpr2016/cvpr2016.pdf" target="_blank">Clouds of Oriented Gradients (CoG)</a>. However, the enormous size of the dataset (1+ Terrabyte) and image sizes (<code>1024 x 6144 x 3 channels</code>) immediately became problematic, both for training and inference.</p>
<p>CoGs are great when the shape of the categories are easy to discern (i.e shapes that are not predominantly &ldquo;box-like&rdquo;), but in SUMO, we had many items that would have taken on very similar CoGs such as <code>single_bed</code> versus <code>double_bed</code>, <code>tv_stand</code> versus <code>dresser</code>, and so on.</p>
<p>We decided a good starting point would be to determine object locations in the 2D space, and see where we could go from there. We intended to then train for CoGs, but we had limited time with the SUMO challenge deadline being mid-December, so we decided to see how well we could perform by using the following pipeline:</p>
<ol>
<li>Project 3D bounding boxes into 2D space to generate a 2D dataset</li>
<li>Train a Faster-R-CNN network to detect objects on the 2D dataset</li>
<li>Project the 2D coordinates back into 3D, do some simple post-processing to prevent things like walls and floors from being in the bounding box</li>
<li>Train Regressors to help correct the coordinates on a per-category basis</li>
</ol>
<h2 id="results">Results</h2>
<p>On December 18th, we found out that the SUMO challege deadline would be pushed back to January 14th. We continued work on step <code>(3)</code> but didn&rsquo;t get very far in step <code>(4)</code>, so our final pipeline consists of steps <code>(1)</code> through <code>(3)</code>. We made our submission on Sunday, January 13th.</p>
<p>We found out that we were narrowly beat by the Princeton Vision Lab for 1st place, leaving us in 2nd place for our cateogry.</p>
<h2 id="visual-results-in-3d">Visual Results in 3D</h2>
<p>Below are our results in the 3D space. On the left, we have a red bounding box, which is our detection. On the right in green we have the ground truth bounding boxes for that same scene.</p>
<p><img src="http://sakhi.es/img/sumo/sumo_tv.png" alt="Detection of a television with books in the tv stand" />
<center> <strong>Figure 1:</strong> Detection of a <code>television</code> with <code>books</code> in the tv stand. </center></p>
<p><img src="http://sakhi.es/img/sumo/sumo_shower.png" alt="Detection of a shower" />
<center> <strong>Figure 2:</strong> Detection of a <code>shower</code>. </center></p>
<p><img src="http://sakhi.es/img/sumo/sumo_door.png" alt="Detection of a door" />
<center> <strong>Figure 3:</strong> Detection of a <code>door</code>. </center></p>
<h2 id="visual-results-in-2d">Visual Results in 2D</h2>
<p>Below are some visual results we&rsquo;ve gotten in the 2D space training the Faster-R-CNN network.</p>
<p><img src="http://sakhi.es/img/sumo/one.jpg" alt="Scene 1" />
<img src="http://sakhi.es/img/sumo/two.jpg" alt="Scene 2" />
<img src="http://sakhi.es/img/sumo/three.jpg" alt="Scene 3" />
<img src="http://sakhi.es/img/sumo/four.jpg" alt="Scene 4" />
<img src="http://sakhi.es/img/sumo/five.jpg" alt="Scene 5" /></p>
<p>As you can see, the network performs fairly well. Mean AP was about <code>23%</code> which is reasonable given the enormous dataset size and the skewed distribution. One aspect that particularly complicates this challenge are the walls and floors, which are object categories, but the coordinates are often outside of single-frame views, which is exactly what this network was trained to perform on.</p>
</description>
</item>
<item>
<title>Betweenness Centrality for Streaming Graphs</title>
<link>http://sakhi.es/project/hpc/</link>
<pubDate>Sun, 01 Sep 2019 00:00:00 +0000</pubDate>
<guid>http://sakhi.es/project/hpc/</guid>
<description>
<h2 id="background">Background:</h2>
<p><a href="https://en.wikipedia.org/wiki/Graph_theory" target="_blank">Graph Theory</a> was among my favorite topics during my undergraduate studies, and in Fall 2016, I managed to find research that would build on my interests in that area as well as leverage the Systems background I had (from one of concentration areas: <em>Devices</em>).</p>
<p>I joined <a href="https://www.cc.gatech.edu/~ogreen/" target="_blank">Dr. Oded Green</a> that term, and we began work immediately on <a href="https://en.wikipedia.org/wiki/Dynamic_connectivity" target="_blank">Streaming Graphs</a> (also known as Dynamic Graphs). These are graphs where the Nodes $V$ and Edges $E$ change over time.</p>
<h2 id="problem-betweenness-centrality-on-streaming-graphs">Problem: Betweenness Centrality on Streaming Graphs</h2>
<p><a href="https://en.wikipedia.org/wiki/Betweenness_centrality" target="_blank">Betweenness Centrality</a>(BC) is a measure of a node&rsquo;s centrality in a graph based on it&rsquo;s presence in shortest paths.</p>
<p>Think of it as the <em>hub</em> that connects many different transportation lines. The more dependent other transportation lines are on a given <em>hub</em>, the more central that <em>hub</em> is to the network.</p>
<p>On a static graph, we can compute the BC values for each node pretty easily (in terms of time complexity). However, real-world graphs like Facebook&rsquo;s Social Network Graph contain hundreds of millions of nodes and billions of edges. If we wanted up-to-date BC values for graphs of this scale, re-computing BC each time a node/edge is <em>inserted</em> or <em>delete</em> becomes infeasible.</p>
<p>So that&rsquo;s our task: Given a graph and then a sequence of insertions/deletions, can we accurately compute the BC values without recomputing on the entire graph?</p>
<h2 id="approach">Approach:</h2>
<p>We created a framework called <a href="https://github.com/cuStinger/cuStinger" target="_blank">cuStinger</a> (a <em>portmanteau</em> of <em>Cuda</em> and <em>Stinger</em>), which served as the backbone of our adventure in getting Streaming BC going.</p>
<p>Using this framework (which saved us largely from writing repetitive Cuda code), we implemented the algorithm as described <a href="https://scholar.google.com/citations?user=C_7l2roAAAAJ&amp;hl=en#d=gs_md_cita-d&amp;p=&amp;u=%2Fcitations%3Fview_op%3Dview_citation%26hl%3Den%26user%3DC_7l2roAAAAJ%26citation_for_view%3DC_7l2roAAAAJ%3A9yKSN-GCB0IC%26tzom%3D300" target="_blank">here</a>.</p>
<h2 id="challenges">Challenges:</h2>
<p>Since we were using Nvidia GPUs and Cuda under the hood, we had various challenges with race conditions, mutex locks, and validating results.</p>
<h2 id="results">Results:</h2>
<p>By the end of that year, we managed to have a running version that handled <em>most</em> edge cases of streaming graphs. There were some we hadn&rsquo;t implemented yet when I left the lab.</p>
<p>A few weeks later, the lab moved onto a new framework (developed in-house with Oded and his lab), <a href="https://github.com/hornet-gt/hornet" target="_blank">Hornet</a>.</p>
<h2 id="lessons-learned">Lessons Learned</h2>
<ul>
<li>Parallel Computation comes with some challenges, be ready</li>
<li>Advances in GPU programming are opening doors to many new areas ripe for exploration</li>
<li>ALWAYS write tests to validate results (we compared our Streaming BC results to our Static BC at each insertion/deletion)</li>
</ul>
<h2 id="tools-used">Tools Used</h2>
<ul>
<li>C/C++</li>
<li>Cuda</li>
<li>cuStinger framework</li>
</ul>
</description>
</item>
<item>
<title>Speaking at TEDxGeorgiaTech's Fall 2018 Speaker Salon</title>
<link>http://sakhi.es/post/ted/</link>
<pubDate>Sun, 01 Sep 2019 00:00:00 +0000</pubDate>
<guid>http://sakhi.es/post/ted/</guid>
<description><p>In Fall 2018, I decided to apply to be a speaker for <a href="https://www.tedxgeorgiatech.com">TEDxGeorgiaTech</a>'s Fall speaker salon. I was chosen as one of the 6 speakers among 70 applicants.</p>
<p>For the 6 weeks that followed, I rewrote my speech several times over. I changed it drastically from what it started off as, added entirely new ideas, and overall realized that the focus of the talk had to be not my experience, but rather what others should take from it.</p>
<p>Finally, on November 4th, 2018, my hard work paid off. I was the final speaker for the night, so I ended the show. My talk, <em>Compounding Interest: How Instilling Drive Goes a Long Way</em> tried to strike a delicate balance between being informative and being relatable. My focus was on the importance of instilling drive and the cascading effect that it had on educating society.</p>
<p>You can find my full talk <a href="https://www.youtube.com/watch?v=0FWfsGd0GWc">here</a>.</p>
<p>Additionally, I found out in February, 2019 that I was chosen among the 6 speakers from last Fall to speak again at the TedXGeorgiaTech Conference held on April 13th, 2019. I'm was ecstatic about the chance to revise my talk and give it one more time in front of an even larger crowd!</p>
<p>The revised talk was posted <a href="https://youtu.be/pH9I2ZnH08Y">here</a> in late July.</p>
</description>
</item>
<item>
<title>Sumo</title>
<link>http://sakhi.es/publication/sumo/</link>
<pubDate>Thu, 06 Jun 2019 00:00:00 +0000</pubDate>
<guid>http://sakhi.es/publication/sumo/</guid>
<description>
<h2 id="important">IMPORTANT</h2>
<p>This paper was being worked on until May 2019. At that time, the competition organizer, Facebook, faced a lawsuit for the creation of the dataset. To mitigate further risk of litigation, this paper was left unpublished and incomplete indefinitely.</p>
<p>The abstract presented above is from our working draft of the paper.</p>
</description>
</item>
<item>
<title>Slides</title>
<link>http://sakhi.es/slides/example/</link>
<pubDate>Tue, 05 Feb 2019 00:00:00 +0000</pubDate>
<guid>http://sakhi.es/slides/example/</guid>
<description>
<h1 id="welcome-to-slides">Welcome to Slides</h1>
<p><a href="https://sourcethemes.com/academic/" target="_blank">Academic</a></p>
<hr />
<h2 id="features">Features</h2>
<ul>
<li>Efficiently write slides in Markdown</li>
<li>3-in-1: Create, Present, and Publish your slides</li>
<li>Supports speaker notes</li>
<li>Mobile friendly slides</li>
</ul>
<hr />
<h2 id="controls">Controls</h2>
<ul>
<li>Next: <code>Right Arrow</code> or <code>Space</code></li>
<li>Previous: <code>Left Arrow</code></li>
<li>Start: <code>Home</code></li>
<li>Finish: <code>End</code></li>
<li>Overview: <code>Esc</code></li>
<li>Speaker notes: <code>S</code></li>
<li>Fullscreen: <code>F</code></li>
<li>Zoom: <code>Alt + Click</code></li>
<li><a href="https://github.com/hakimel/reveal.js#pdf-export" target="_blank">PDF Export</a>: <code>E</code></li>
</ul>
<hr />
<h2 id="code-highlighting">Code Highlighting</h2>
<p>Inline code: <code>variable</code></p>
<p>Code block:</p>
<pre><code class="language-python">porridge = &quot;blueberry&quot;
if porridge == &quot;blueberry&quot;:
print(&quot;Eating...&quot;)
</code></pre>
<hr />
<h2 id="math">Math</h2>
<p>In-line math: $x + y = z$</p>
<p>Block math:</p>
<p>$$
f\left( x \right) = \;\frac{{2\left( {x + 4} \right)\left( {x - 4} \right)}}{{\left( {x + 4} \right)\left( {x + 1} \right)}}
$$</p>
<hr />
<h2 id="fragments">Fragments</h2>
<p>Make content appear incrementally</p>
<pre><code>{{% fragment %}} One {{% /fragment %}}
{{% fragment %}} **Two** {{% /fragment %}}
{{% fragment %}} Three {{% /fragment %}}
</code></pre>
<p>Press <code>Space</code> to play!</p>
<p><span class="fragment " >
One
</span>
<span class="fragment " >
<strong>Two</strong>
</span>
<span class="fragment " >
Three
</span></p>
<hr />
<p>A fragment can accept two optional parameters:</p>
<ul>
<li><code>class</code>: use a custom style (requires definition in custom CSS)</li>
<li><code>weight</code>: sets the order in which a fragment appears</li>
</ul>
<hr />
<h2 id="speaker-notes">Speaker Notes</h2>
<p>Add speaker notes to your presentation</p>
<pre><code class="language-markdown">{{% speaker_note %}}
- Only the speaker can read these notes
- Press `S` key to view
{{% /speaker_note %}}
</code></pre>
<p>Press the <code>S</code> key to view the speaker notes!</p>
<aside class="notes">
<ul>
<li>Only the speaker can read these notes</li>
<li>Press <code>S</code> key to view</li>
</ul>
</aside>
<hr />
<h2 id="themes">Themes</h2>
<ul>
<li>black: Black background, white text, blue links (default)</li>
<li>white: White background, black text, blue links</li>
<li>league: Gray background, white text, blue links</li>
<li>beige: Beige background, dark text, brown links</li>
<li>sky: Blue background, thin dark text, blue links</li>
</ul>
<hr />
<ul>
<li>night: Black background, thick white text, orange links</li>
<li>serif: Cappuccino background, gray text, brown links</li>
<li>simple: White background, black text, blue links</li>
<li>solarized: Cream-colored background, dark green text, blue links</li>
</ul>
<hr />
<section data-noprocess data-shortcode-slide
data-background-image="/img/boards.jpg"
>
<h2 id="custom-slide">Custom Slide</h2>
<p>Customize the slide style and background</p>
<pre><code class="language-markdown">{{&lt; slide background-image=&quot;/img/boards.jpg&quot; &gt;}}
{{&lt; slide background-color=&quot;#0000FF&quot; &gt;}}
{{&lt; slide class=&quot;my-style&quot; &gt;}}
</code></pre>
<hr />
<h2 id="custom-css-example">Custom CSS Example</h2>
<p>Let&rsquo;s make headers navy colored.</p>
<p>Create <code>assets/css/reveal_custom.css</code> with:</p>
<pre><code class="language-css">.reveal section h1,
.reveal section h2,
.reveal section h3 {
color: navy;
}
</code></pre>
<hr />
<h1 id="questions">Questions?</h1>
<p><a href="https://discourse.gohugo.io" target="_blank">Ask</a></p>
<p><a href="https://sourcethemes.com/academic/docs/" target="_blank">Documentation</a></p>
</description>
</item>
</channel>
</rss>