ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Using stochastic optimization to bring people together
The perfect conference
Brian Lange @ Strata San Jos¨¦ 2017
who is this guy?
who is this guy?
who are these folks?
who are these folks?
Today
Today
- Case study: our work with Research
Corporation for Scienti?c Advancement (RCSA)
Today
- Case study: our work with Research
Corporation for Scienti?c Advancement (RCSA)
- Some high level explanation of the technique we
used (simulated annealing)
Today
- Case study: our work with Research
Corporation for Scienti?c Advancement (RCSA)
- Some high level explanation of the technique we
used (simulated annealing)
- Our vision of the role of a data scientist, and
how they interact with the people they¡¯re
serving
Meet Richard*
*(bad) artist¡¯s rendering
By Hbarrison (Own work) [CC BY-SA 4.0 (http://creativecommons.org/licenses/by-sa/4.0)], via Wikimedia Commons
Scialog
¡°Some of the goals of Scialog
conferences are to facilitate the
formation of new collaborative
teams, encourage sharing insights
and catalyze novel lines of research.¡±
Richard¡¯s needs
Scialog Conferences
Solar Energy
Conversion
Molecules
Come to Life
Time Domain
Astronomy
2010 2011 2012 2015 2016
What¡¯s di?erent about Scialog
What¡¯s di?erent about Scialog
- big picture, cross disciplinary topics
What¡¯s di?erent about Scialog
- big picture, cross disciplinary topics
- small conferences (40¨C50 junior scientists,
10¨C15 senior. scientists)
What¡¯s di?erent about Scialog
- big picture, cross disciplinary topics
- small conferences (40¨C50 junior scientists,
10¨C15 senior. scientists)
- invite only
What¡¯s di?erent about Scialog
- big picture, cross disciplinary topics
- small conferences (40¨C50 junior scientists,
10¨C15 senior. scientists)
- invite only
- unconventional format
What¡¯s di?erent about Scialog
- big picture, cross disciplinary topics
- small conferences (40¨C50 junior scientists,
10¨C15 senior. scientists)
- invite only
- unconventional format
How well does this work?
Quantifying connection
Quantifying connection
Quantifying connection
Quantifying connection
Quantifying connection
The Perfect Conference: Using stochastic optimization to bring people together
The Perfect Conference: Using stochastic optimization to bring people together
before after
Scialog 2015: Molecules Come to Life
Scialog 2015: Molecules Come to Life
- 118 new conversations
Scialog 2015: Molecules Come to Life
- 118 new conversations
- 17 new collaborations
Scialog 2015: Molecules Come to Life
- 118 new conversations
- 17 new collaborations
- 100% growth from pre-conference
Scialog 2015: Molecules Come to Life
- 118 new conversations
- 17 new collaborations
- 100% growth from pre-conference
- 53.6% of attendees formed a new
collaboration with an attendee
measure improve
Mini Breakout Groups - round 1
A D G J
B E H K
C F I L
conference
attendees
Mini Breakout Groups - round 2
A
D G
J
B
E
H KC
F
I
L
Mini Breakout Groups - round 3
A
D
G
J
B
E
H
K
C
F
I
L
Are these good groups?
A
D
G
J
B
E
H
K
C
F
I
L
Is this a good group?
DJ F L
Is this a good group?
DJ F L
Is this a good group?
DJ F L
1
Is this a good group?
DJ F L
1
2
Is this a good group?
DJ F L
4
1
2
Is this a good group?
DJ F L
4
1
2
terribleness: 7
Is this a good group?
J F L
4
1
2
terribleness: 7
Is this a good group?
J F L
2
Is this a good group?
BJ F L
2
Is this a good group?
BJ F L
2
terribleness: 2
The Perfect Conference: Using stochastic optimization to bring people together
14778213400262135041705388361938994140625 possible con?gurations
14778213400262135041705388361938994140625 possible con?gurations
1.47 x 1040, or 14 duodecillion
The Perfect Conference: Using stochastic optimization to bring people together
quadrillions of years :(
terribleness
slope
intercept
optimization
DJ F L
4
1
2
terribleness: 7
0
1.75
3.5
5.25
7
JDFL
BJ F L
2
terribleness: 2
0
1.75
3.5
5.25
7
JDFL JBFL
1
BJ C L
4
terribleness: 6
0
1.75
3.5
5.25
7
JDFL JBFL JBCL
1
BJ C E
terribleness:1
0
1.75
3.5
5.25
7
JDFL JBFL JBCL JBCE
4 4
KJ C E
terribleness:8
0
2
4
6
8
JDFL JBFL JBCL JBCE JKCE
slope
intercept
terribleness
slope
intercept
terribleness
?
enter:
simulated annealing
simulated annealing
simulated annealing
a type of stochastic optimization
simulated annealing
a type of stochastic optimization
stochastic optimization
algorithm with randomness
introduced to avoid getting caught
in local minima
temperature: 100
A D G J
B E H K
C F I L
terribleness: 350
previous terribleness: 350
temperature: 1001. make a random ¡°move¡± from current
state
A D G J
B E H K
C F I L
terribleness: 350
previous terribleness: 350
temperature: 100
A
D G JB
E H K
C F I L
terribleness: 380
previous terribleness: 350
1. make a random ¡°move¡± from current
state
temperature: 100
A
D G JB
E H K
C F I L
terribleness: 380
previous terribleness: 350
1. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
temperature: 100
A
D G JB
E H K
C F I L
terribleness: 380
previous terribleness: 350
1. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
3. If it is, keep it and skip ahead.
temperature: 100
A
D G JB
E H K
C F I L
terribleness: 380
previous terribleness: 350
1. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
3. If it is, keep it and skip ahead.
4. If not, there¡¯s a chance we¡¯ll still keep it,
depending on the temperature
temperature: 1001. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
3. If it is, keep it and skip ahead.
4. If not, there¡¯s a chance we¡¯ll still keep it,
depending on the temperature A
D G JB
E H K
C F I L
terribleness: 380
previous terribleness: 380
temperature: 1001. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
3. If it is, keep it and skip ahead.
4. If not, there¡¯s a chance we¡¯ll still keep it,
depending on the temperature
5. Stop when temperature is too low.
Otherwise, reduce temperature and
repeat.
A
D G JB
E H K
C F I L
terribleness: 380
previous terribleness: 380
temperature: 901. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
3. If it is, keep it and skip ahead.
4. If not, there¡¯s a chance we¡¯ll still keep it,
depending on the temperature
5. Stop when temperature is too low.
Otherwise, reduce temperature and
repeat.
A
D
G
JB
E H K
C F
I
L
terribleness: 243
previous terribleness: 380
temperature: 901. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
3. If it is, keep it and skip ahead.
4. If not, there¡¯s a chance we¡¯ll still keep it,
depending on the temperature
5. Stop when temperature is too low.
Otherwise, reduce temperature and
repeat.
A
D
G
JB
E H K
C F
I
L
terribleness: 243
previous terribleness: 243
? fast forward
temperature: 31. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
3. If it is, keep it and skip ahead.
4. If not, there¡¯s a chance we¡¯ll still keep it,
depending on the temperature
5. Stop when temperature is too low.
Otherwise, reduce temperature and
repeat.
A
D
G
J
B
E HK
C
FI
L
terribleness: 63
previous terribleness: 63
temperature: 31. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
3. If it is, keep it and skip ahead.
4. If not, there¡¯s a chance we¡¯ll still keep it,
depending on the temperature
5. Stop when temperature is too low.
Otherwise, reduce temperature and
repeat.
A
D
G
J
B
E
H
K
C
FI
L
terribleness: 194
previous terribleness: 63
temperature: 31. make a random ¡°move¡± from current
state
2. check if the new state is better than the
previous
3. If it is, keep it and skip ahead.
4. If not, there¡¯s a chance we¡¯ll still keep it,
depending on the temperature
5. Stop when temperature is too low.
Otherwise, reduce temperature and
repeat.
A
D
G
J
B
E HK
C
FI
L
terribleness: 63
previous terribleness: 63
The Perfect Conference: Using stochastic optimization to bring people together
The Perfect Conference: Using stochastic optimization to bring people together
Not just for groups of things
Not just for groups of things
- circuit board designs
Not just for groups of things
- circuit board designs
- stock trading rules
Not just for groups of things
- circuit board designs
- stock trading rules
- anything which has a de?ned state, a ¡°move¡± (aka
transition to another state), and a measure of goodness
very, very tweakable
very, very tweakable
- make ¡°smarter-than-random¡± moves
very, very tweakable
- make ¡°smarter-than-random¡± moves
- change the cooling function (reheat and cool)
very, very tweakable
- make ¡°smarter-than-random¡± moves
- change the cooling function (reheat and cool)
- save best state so far and restart from it periodically
very, very tweakable
- make ¡°smarter-than-random¡± moves
- change the cooling function (reheat and cool)
- save best state so far and restart from it periodically
- repeat many times from di?erent random starting
states
very, very tweakable
- make ¡°smarter-than-random¡± moves
- change the cooling function (reheat and cool)
- save best state so far and restart from it periodically
- repeat many times from di?erent random starting
states
- etc¡­
DATA SCIENCE
PITFALL
WARNING
very, very tweakable
Icons by Andrea Novoa, Chris Kerr, and Ananth from The Noun Project
- make ¡°smarter-than-random¡± moves
- change the cooling function (reheat and cool)
- save best state so far and restart from it periodically
- repeat many times from di?erent random starting
states
- etc¡­
let¡¯s talk more about
terribleness
client needs
client needs
- minimize how ¡°connected¡± the
people in each group are
client needs
- minimize how ¡°connected¡± the
people in each group are
- don¡¯t want people to be in the
same group with somebody
twice
client needs
- minimize how ¡°connected¡± the
people in each group are
- don¡¯t want people to be in the
same group with somebody
twice
- etc¡­
client needs
- minimize how ¡°connected¡± the
people in each group are
- don¡¯t want people to be in the
same group with somebody
twice
- etc¡­
math/code
generate ideas
build prototypeevaluation
iterative problem solving
anticipate re?ning your solution
¡°what does Richard need?¡±
generate ideas
build prototypeevaluation
iterative problem solving
anticipate re?ning your solution
¡°these could be better¡±
generate ideas
build prototypeevaluation
iterative problem solving
anticipate re?ning your solution
¡°let¡¯s tweak the optimization
technique¡±
generate ideas
build prototypeevaluation
iterative problem solving
anticipate re?ning your solution
¡°much better, what do
you think Richard?¡±
generate ideas
build prototypeevaluation
iterative problem solving
anticipate re?ning your solution
¡°pretty good, but
I don¡¯t like ______¡±
generate ideas
build prototypeevaluation
iterative problem solving
anticipate re?ning your solution
¡°cool, let¡¯s tweak the
objective function¡±
generate ideas
build prototypeevaluation
iterative problem solving
anticipate re?ning your solution
¡°these look great!¡±
generate ideas
build prototypeevaluation
iterative problem solving
¡°these are great!¡±
also an
optimization
algorithm of
sorts¡­
so, did it work?
Scialog 2015: Molecules Come to Life
Scialog 2015: Molecules Come to Life
- In 30 out of 39 group discussions (77%), none of the people
in those groups had even heard of each other before
Scialog 2015: Molecules Come to Life
- In 30 out of 39 group discussions (77%), none of the people
in those groups had even heard of each other before
- In all group discussions, no one had spoken or
collaborated with anyone else in their group
Scialog 2015: Molecules Come to Life
- In 30 out of 39 group discussions (77%), none of the people
in those groups had even heard of each other before
- In all group discussions, no one had spoken or
collaborated with anyone else in their group
- On average, a group had 2.6 di?erent disciplines (physics,
biology, etc)
Scialog 2015: Molecules Come to Life
- In 30 out of 39 group discussions (77%), none of the people
in those groups had even heard of each other before
- In all group discussions, no one had spoken or
collaborated with anyone else in their group
- On average, a group had 2.6 di?erent disciplines (physics,
biology, etc)
- Each group had at least one theorist and one
experimentalist
Scialog 2015: Molecules Come to Life
__________ is important to the success of Scialog
0
7.5
15
22.5
30
Very Much Disagree Neutral Very Much Agree
Mini Breakouts
Regular Discussions
Scialog 2015: Molecules Come to Life
¡°We received 20 collaborative
proposals, the most ever
at a Scialog.¡±
further iterations
A
D
G
J
B
E HK
C
FI
L
Tissue mechanics and evolution
The physics of genetic networks
In vivo mechanics
Topic groups/preferences
Topic A
Topic B
Topic C
Topic groups/preferences
Desired connections
Nominated topic experts
how might this work at a bigger conference?
- survey including EVERYONE not tenable
- use latent sources like social media
- use RFID or other hardware to infer connections at
the conference
- use a survey with a representative sample and
similarity metrics to project preferences
how might this work at a bigger conference?
- di?erent format
- separate opt-in discussion track
- rather than groups, make email introductions
The Perfect Conference: Using stochastic optimization to bring people together
what to learn from this
optimization isn¡¯t just for
straightforward
mathematical problems
data science isn¡¯t just for
straightforward
mathematical problems
a great data scientist
acts as a translator
iteration drives
improvement on both
methods and data
collection
if you can measure it,
you have the data
to actively improve it
.co@bjlange
thanks!
questions?
brian [at] datascope.co

More Related Content

The Perfect Conference: Using stochastic optimization to bring people together