Website/slides/talks/2020-2-WorkingWithCSE/index.html

338 lines
13 KiB
HTML
Raw Normal View History

2020-02-13 17:21:56 -05:00
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>How to Start Collaborating with CSE to Solve Global Health Problems</title>
<meta name="description" content="How to Start Collaborating with CSE to Solve Global Health Problems">
<meta name="author" content="Oliver Kennedy">
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui">
<link rel="stylesheet" href="../../reveal.js-3.7.0/css/reveal.css">
<link rel="stylesheet" href="ubodin.css" id="theme">
<!-- Code syntax highlighting -->
<link rel="stylesheet" href="../../reveal.js-3.7.0/lib/css/zenburn.css">
<style type="text/css">
.reveal .slides section .fragment.growbig {
opacity: 1;
visibility: inherit; }
.reveal .slides section .fragment.growbig.visible {
-webkit-transform: scale(7);
transform: scale(7); }
</style>
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../reveal.js-3.7.0/css/print/pdf.css' : '../reveal.js-3.7.0/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
<!--[if lt IE 9]>
<script src="../reveal.js-3.5.0/lib/js/html5shiv.js"></script>
<![endif]-->
</head>
<body>
<div class="reveal">
<div class="header">
<!-- Any Talk-Specific Header Content Goes Here -->
<center>
<a href="http://www.buffalo.edu" target="_blank">
<img src="../graphics/logos/ub-1line-ro-white.png" height="20"/>
</a>
</center>
</div>
<div class="footer">
<!-- Any Talk-Specific Footer Content Goes Here -->
<div style="float: left; margin-top: 15px; ">
Exploring <u><b>O</b></u>nline <u><b>D</b></u>ata <u><b>In</b></u>teractions
</div>
<a href="https://odin.cse.buffalo.edu" target="_blank">
<img src="../graphics/logos/odin-1line-white.png" height="40" style="float: right;"/>
</a>
</div>
<div class="slides">
<!-- Any section element inside of this container is displayed as a slide -->
<section>
<h3>How to Start Collaborating with CSE to Solve Global Health Problems</h3>
<h4>Oliver Kennedy</h4>
</section>
<section>
<ol>
<li>What makes interesting CSE Research?</li>
<li>Behind the Buzzwords.</li>
<li>Research Highlights.</li>
<li>CSE Resources for Your Benefit.</li>
</ol>
</section>
<section>
<section>
<h3>Computer Science &amp; Engineering</h3>
<ul>
<li>Automating Repetitive Tasks.</li>
<li>Solving Bigger Problems Faster.</li>
<li>Solved Problems on Different Tech.</li>
</ul>
</section>
<section>
<h3>Abstraction</h3>
<p>CSE is about creating <u><b>general</b></u> solutions</p>
<p>(motivated by specific problems)</p>
</section>
<section>
<p>"The problem is 'solved'"</p>
<p></p>
<p>There is already a tool/technique to address the family of problems that this one belongs to.</p>
<p style="font-size: 70%;">(even if there is some work is required to adapt the solution to your needs)</p>
<p style="margin-top: 50px;">CSE can help with both research and implementation, but each takes a very different approach.</p>
</section>
<section>
<h3>Typical Implementation Problems</h3>
<ul>
<li>A database</li>
<li>A mobile app</li>
<li>A website</li>
<li>Batch data processing</li>
</ul>
<p style="font-size: 70%">These problems can "usually" be solved by gluing together existing tools.</p>
<p style="font-size: 70%">Occasionally there is something unusual that inspires research topics.</p>
<p style="font-size: 70%">These problems may also synergize with existing research.</p>
</section>
<section>
<h3>Automating Repetitive Tasks</h3>
<p>It's more likely to be research when...</p>
<ul>
<li>... the task requires at least some human intuition.</li>
<li>... the task is "hard" for computers (images, video, audio, prose).</li>
<li>... the task requires a lot (10+ TB) of data.</li>
<li>... the task is hard to describe precisely (outlier detection).</li>
</ul>
</section>
<section>
<h3>Solving Bigger Problems Faster</h3>
<p>It's more likely to be research when...</p>
<ul>
<li>... the task requires a lot (10+ TB) of data.</li>
<li>... the task has extremely tight time constraints.</li>
<li>... your code works well for smaller problems (fewer variables, less data)</li>
<li>... the task is naturally computationally complex.</li>
</ul>
</section>
<section>
<h3>Solved Problems on Different Tech.</h3>
<p>It's more likely to be research when...</p>
<ul>
<li>... the new technology is resource constrained (battery, cpu, memory).</li>
<li>... the new technology uses a different interface.</li>
<li>... the new technology violates assumptions made by existing solutions.</li>
<li>... the new technology makes something an existing solution does easier.</li>
</ul>
</section>
<section>
<h3>Research / Don't Know</h3>
<ul>
<li>Call up a Faculty Member</li>
</ul>
<h3>Implementation</h3>
<ul>
<li>CSE-611</li>
<li>Undergraduate Research Project</li>
<li>Invenst</li>
<li>Call up a Faculty Member</li>
</ul>
</section>
</section>
<section>
<section>
<h3>Blockchain</h3>
<img src="images/blockchain.png">
</section>
<section>
<p>
Accountants use ledgers for keeping track of accounts, inventory status, etc...
Ledgers have basic physical limitations (hard to erase pen marks, hard to insert new entries, only one person can write at a time).
These physical limitations go away when the ledger is on the computer.
Need to trust that everyone participating keeps "track changes" on.
</p>
</section>
<section>
<p>
Blockchain is a collection of techniques that enforce similar limitations in a digital setting <i>without requiring trust</i>.
If you trust whoever's running the computer to play by the rules (e.g., through personal trust, legal force, or crescent wrenches), you probably don't need a blockchain.
</p>
</section>
<section>
<p>As an aside, these techniques are extremely compute-intensive (and intentionally so). Estimates put the power use of Bitcoin alone at 30-60 TWh per year (back of the napkin: enough to power all homes in the US, 10-20 times over)</p>
</section>
<section>
<h3>Neural Networks / Deep Learning</h3>
<p>Regression on steroids: Linear regression fits y=mx+b; Cubic splines are more complex; Graphical models are still more complex; Deep learning is the same idea taken to an extreme. Neural networks can predict really really complex functions (e.g., the probability that there is a face located at a specific pixel of an image.</p>
</section>
<section>
<dl style="font-size: 70%">
<dt>Layer</dt>
<dd>A function that regresses N variables to predict M variables (typically N=M). </dd>
<dt>Neural Network</dt>
<dd>
A stack of 2 or more layers, with each network predicting its outputs from the (latent/hidden) variables produced by the previous layer
</dd>
<dt>Recurrent Neural Network (RNN)</dt>
<dd>A Neural Network for timeseries data (NN:RNN :: Markovian Variable:Markov Chain)</dd>
<dt>Convolutional Neural Network (CNN)</dt>
<dd>A Neural Network for image data designed to take advantage of the fact that a feature (like a face) is usually size, position, and/or rotationally invariant (you can make it bigger, move it around, or rotate it and it's still a face).</dd>
<dt>Generative Adversarial Network (GAN)</dt>
<dd>Black wizardry that can generate an image/audio in one "style" while retaining the key features of another. (e.g., Transform a video of a horse into one of a zebra)</dd>
</dl>
</section>
<section>
<h3>Cloud Computing</h3>
<p>
Rent a server from Amazon, Microsoft, or Google (or UB).
Basically, pay someone to do the managerial work of running/security/etc...
Also benefit by not having infrastructure (e.g., access to 100s of servers for precisely as long as it takes you to get your answer)
</p>
</section>
<section>
<h3>Differential Privacy</h3>
<p>
(Oliver's reluctant definition)
A way to mathematically prove to yourself how much PII could leak if a dataset is released.
Typoically used to figure out how much noise you need to add to the data to make it impossible to determine if some residual PII in the dataset is real or noise (plausible deniability).
</p>
</section>
<section>
<h3>Internet of Things</h3>
<p>
Cellphones are cheap. Cellular plans are cheap. Put cellphone radios (modems) in everything.
Cellphone + Sensors = tons of data about anything and everything that you want to measure.
</p>
</section>
</section>
<section>
<section>
<h3>Highlights</h3>
<ul>
<li>Video Analysis</li>
<li>Machine Learning (Varun?)</li>
<li>Pattern mining / Modeling (Jarik)</li>
<li>Mobile Computing (Steve)</li>
<li>Wireless sensor networks (Chang Wen Chen)</li>
</ul>
</section>
</section>
<section>
<section>
<h3>CSE (&amp; adjacent) Resources</h3>
<ul>
<li>CSE 611</li>
<li>Invenst</li>
<li>Undergraduates</li>
<li>CUBS/CEDAR, CARA, CMIF</li>
<li>CCR </li>
<li>Cross Disciplinary Faculty</li>
</ul>
</section>
<section>
<p>Shout out for NSF CSSI / SCH / SCC</p>
</section>
</section>
</div></div>
<script src="../reveal.js-3.5.0/lib/js/head.min.js"></script>
<script src="../reveal.js-3.5.0/js/reveal.js"></script>
<script>
// Full list of configuration options available at:
// https://github.com/hakimel/../reveal.js#configuration
Reveal.initialize({
controls: false,
progress: true,
history: true,
center: true,
slideNumber: true,
transition: 'fade', // none/fade/slide/convex/concave/zoom
// Optional ../reveal.js plugins
dependencies: [
{ src: '../../reveal.js-3.7.0/plugin/svginline/data-src-svg.js' },
{ src: '../reveal.js-3.5.0/lib/js/classList.js', condition: function() { return !document.body.classList; } },
{ src: '../reveal.js-3.5.0/plugin/math/math.js',
condition: function() { return true; },
mathjax: '../reveal.js-3.5.0/js/MathJax.js'
},
{ src: '../reveal.js-3.5.0/plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
{ src: '../reveal.js-3.5.0/plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
//{ src: '../reveal.js-3.5.0/plugin/highlight/highlight.js', async: true, condition: function() { return !!document.querySelector( 'tt code' ); }, callback: function() { hljs.initHighlightingOnLoad(); } },
{ src: '../../reveal.js-3.7.0/plugin/highlight/highlight-9.16.2.js', async: true,
callback: function() { hljs.initHighlightingOnLoad(); } },
{ src: '../reveal.js-3.5.0/plugin/zoom-js/zoom.js', async: true },
{ src: '../reveal.js-3.5.0/plugin/notes/notes.js', async: true }
]
});
</script>
<script>document.write('<script src="http://' + (location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1"></' + 'script>')</script>
</body>
</html>