-
Notifications
You must be signed in to change notification settings - Fork 25
/
laboratory.html
136 lines (127 loc) · 5.62 KB
/
laboratory.html
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
<!DOCTYPE html>
<html>
<head>
<link rel="icon" href="images/ml_logo.png">
<meta charset='utf-8'>
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="description" content="Brandon Rohrer: e2eML Laboratory">
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen">
<link rel="stylesheet" type="text/css" href="stylesheets/print.css" media="print">
<base target="_blank">
<title>End-to-End Machine Learning Laboratory</title>
</head>
<body>
<!-- HEADER -->
<div id="header_wrap" class="outer">
<header class="inner">
<h1 id="project_title">
End-to-End Machine Learning Laboratory
</h1>
</header>
</div>
<!-- MAIN CONTENT -->
<div id="main_content_wrap" class="outer">
<section id="main_content" class="inner">
<p>
Here are some things I've made — algorithms, methods,
packages — of which I'm particularly proud. As far as I know
they are novel, but I haven't done deep literature searches to
find out for sure.
</p>
<p>
Here are the links if you're looking for
<a href="https://e2eml.school/blog.html">
the End to End Machine Learning Library (my blog)</a> or
<a href="http://e2eml.school">the e2eML Course Catalog</a>.
<hr>
<h3>Evolutionary Powell's method</h3>
<p style="text-align:center;">
<img
alt="Animation of Evolutionary Powell's method finding an optimum"
src="https://gitlab.com/brohrer/ponderosa/raw/master/ponderosa/landing_page_demo.gif"
style="height: 350px;">
</p>
<p>
I built Evolutionary Powell's method as a hyperparameter optimization
algorithm as part of
<a href="https://end-to-end-machine-learning.teachable.com/p/314-neural-network-optimization/">
Course 314</a>. It is inspired by the original
<a href="https://en.wikipedia.org/wiki/Powell%27s_method">
Powell's method</a>, but has a stochastic element
inspired by
<a href="https://en.wikipedia.org/wiki/Evolutionary_algorithm">
evolutionary approaches</a>.
<a href="https://e2eml.school/evopowell.html">
Here's more information on how it works and how to use it.
</a>
</p>
<h3>Pathfinder</h3>
<p style="text-align:center;">
<img
src="
https://engineering.fb.com/wp-content/uploads/2019/01/CodeBlogEnergy_Model.gif"
style="height: 350px;">
<br>
Animation of the Pathfinder algorithm in action, finding power
lines in the region of Kano, Nigeria.
<!--src="https://raw.githubusercontent.com/carderne/gridfinder/master/gridfinder-animated.gif"
Animation of the Chris Arderne's implementation of the algorithm
in action, finding power lines in Uganda.-->
</p>
<p>
<a href="https://github.com/facebookresearch/many-to-many-dijkstra">
Pathfinder</a> is a many-to-many variant of
<a href="https://en.wikipedia.org/wiki/Dijkstra's_algorithm">
Dijkstra's shortest path algorithm</a>.
I got to work on it while at Facebook when I was
<a href="https://engineering.fb.com/connectivity/electrical-grid-mapping/">
trying to predict the locations of medium-voltage
electrical distribution grid infrastructure</a>. It's based
entirely on publicly
available data sources, including nighttime satellite imagery
and Open Street Map highways. Here's
<a href="https://github.com/facebookresearch/many-to-many-dijkstra/blob/master/Model%20Tutorial%20-%20PDF.pdf">
a tutorial on how it works and how to re-create it</a>.
</p>
<p>
Chris Arderne did an improved re-implementation, called
<a href="https://github.com/carderne/gridfinder">
GridFinder</a> which has been used by the World Bank and
its partners to estimate the location of medium voltage
power grids throughout Africa, and then through the rest
of the world.
</p>
</div>
<!-- FOOTER -->
<div id="footer_wrap" class="outer">
<footer class="inner">
<section class="clearfix">
<h2 id="project_tagline">
<a id="project_tagline" href="blog.html">
<span>visit the End to End Machine Learning Library</span></a>
</h2>
<p>
<br>
<a href="https://creativecommons.org/publicdomain/zero/1.0/">
<img title="Creative Commons Zero license" src="images/cc0.png" alt="CC0" style="width: 90px;" />
</a>   except where noted.
</p>
<p>
The postings on this site are my own and don't necessarily represent iRobot's
positions, strategies or opinions.
</p>
</section>
</footer>
</div>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-10180621-3");
pageTracker._trackPageview();
} catch(err) {}
</script>
</body>
</html>