Share on Facebook Tweet on Twitter Share on LinkedIn Share by email
Videos
Parallel Bayesian Network Structure Learning for Genome-Scale Gene Networks
Parallel Bayesian Network Structure Learning for Genome-Scale Gene Networks
Sanchit Misra
00:44:11 · 18 February 2015

Learning Bayesian networks is NP-hard. Even with recent progress in heuristic and parallel algorithms, modeling capabilities still fall short of the scale of the problems encountered. In this work, we present a massively parallel method for Bayesian network structure learning, and demonstrate its capability by constructing genome-scale gene networks of the model plant Arabidopsis thaliana from over 168.5 million gene expression values. We report strong scaling efficiency of 75% and demonstrate scaling to 1.57 million cores of the Tianhe-2 supercomputer. Our results constitute three and five orders of magnitude increase over previously published results in the scale of data analyzed and computations performed, respectively. We achieve this through algorithmic innovations, using efficient techniques to distribute work across all compute nodes, all available processors and coprocessors on each node, all available threads on each processor and coprocessor, and vectorization techniques to maximize single thread performance.

Computing on Encryption Data: Functional Encryption and More
Computing on Encryption Data: Functional Encryption and More
Vipul Goyal
00:42:56 · 27 January 2015
Q and A - Session 2
Q and A - Session 2
Butler Lampson, Jeannette Wing, and Siddharth Prakash
00:15:46 · 23 January 2015
Hints and Principles for Computer System Design
Hints and Principles for Computer System Design
Butler Lampson
00:43:05 · 23 January 2015

I have many hints that are often helpful in designing computer systems, and I also know a few principles. There are several ways to organize them: .Goals (What you want)-simple, timely, efficient, adaptable, dependable, yummy. .Methods (How to get it)-approximate, increment, iterate, indirect, divide and conquer. .Phases (When to apply them)-requirements, architecture, process, techniques.

Of course the goals are in conflict, and engineering is the art of making tradeoffs, for instance among features, speed, cost, dependability, and time to market. Some simpler oppositions are: .For adaptable, between evolving and fixed, monolithic and extensible, scalable and bounded. .For dependable, between deterministic and non-deterministic, reliable and flaky, consistent and eventual. .For incremental, between indirect and inline, dynamic and static, experiment and plan, discover and prove.

It also helps to choose the right coordinate system, just as center of mass coordinates make many dynamics problems easier. You can view the system state as a name?value map, or as an initial state and a sequence of operations that transform the state. You can view a function as code or as a table or as a sequence of partial functions. Notation, vocabulary, and syntax are other kinds of coordinates.

In the complex process of designing systems, both principles and hints can only be justified by examples of what has worked and what has not.

Massively Empowered Classrooms (MEC)
Massively Empowered Classrooms (MEC)
Siddharth Prakash and Sriram Rajamani
00:26:48 · 23 January 2015
Computational Thinking
Computational Thinking
Jeannette Wing
00:39:47 · 23 January 2015

My vision for the 21st Century: Computational thinking will be a fundamental skill used by everyone in the world. To reading, writing, and arithmetic, we should add computational thinking to every child's analytical ability. Computational thinking involves solving problems, designing systems, and understanding human behavior by drawing on the concepts that are fundamental to computer science. Thinking like a computer scientist means more than being able to program a computer. It requires the ability to abstract and thus to think at multiple levels of abstraction.

Computational thinking has already influenced many disciplines, from the sciences to the arts. In my talk, I will give a few examples from Microsoft Research of how computational thinking is changing the way research is conducted in different disciplines and helping to address societal issues. Computational thinking is also changing what we teach in colleges and universities today. I will speak about some recent educational efforts in the United States, the United Kingdom, China, and India on adopting computational thinking in education, especially at the K-12 level. Computational thinking can not only inspire future generations to enter the field of computer science-it can also benefit people in all fields.

Q and A - Session 1
Q and A - Session 1
Jennifer Chayes, P. Anandan, Rico Malvar, Sriram Rajamani, Christopher Bishop, Victor Bahl, Raj Reddy, Ed Lazowska, and Chandu Thekkath
00:24:04 · 22 January 2015
Panel Discussion: How to do good research and have a successful career in Research
Panel Discussion: How to do good research and have a successful career in Research
Jennifer Chayes, P. Anandan, Rico Malvar, Sriram Rajamani, Christopher Bishop, and Victor Bahl
00:42:19 · 22 January 2015
Tsunami or Sea Change? Responding to the Explosion of Student Interest in Computer Science
Tsunami or Sea Change? Responding to the Explosion of Student Interest in Computer Science
Ed Lazowska
00:34:02 · 22 January 2015

In the US, student demand for computer science is booming: demand for introductory courses; demand for the major; demand for upper-division and graduate courses by non-majors. Industry demand, too, is booming: it is predicted that 71% of all newly-created jobs in all STEM (Science, Technology, Engineering, and Mathematics) fields in the current decade will be in computing, and 57% of all available jobs, whether newly-created or available due to retirements. Our field has faced booming enrolments twice in the past: in the mid-1980s, and in the late 1990s. Universities were unable to respond adequately. The current boom shows signs of dramatically exceeding these previous ones. In this talk, I will present the data, and argue that the current boom in interest may be a long-term trend rather than part of a cycle. I will discuss possible approaches to accommodating the demand.

Computational Limits to Human Thinking in a Society With Too Much Information And Too Little Time
Computational Limits to Human Thinking in a Society With Too Much Information And Too Little Time
Raj Reddy
00:51:24 · 22 January 2015

This talk is about Computational Limits to Human Thinking. Human beings make errors, tend to forget, are impatient and look for least effort solutions. Such limitations, sometimes, lead to catastrophic results. At the same time, humans learn with experience, tolerate error and ambiguity, use vast amounts knowledge, and communicate using speech and language. Such features are still lacking in most of our systems. Most systems don’t get better with experience. We cannot even send routine voice emails and video emails without using Skype or some such.

Most importantly, we are severely lacking in tools for coping with 21st century world of “too much information and too little time”. In this talk we will present two families of intelligent agents, viz., “cognition amplifiers” and “guardian angels” to help with problem of scarcity of attention. A Cognition Amplifier is a personal autonomic intelligent agent that anticipates what you want to do and helps you to do it with less effort. A Guardian Angel is a personal autonomic intelligent agent that discovers and warns you about unanticipated, possibly catastrophic, events that could impact your safety, security, and wellbeing. Both Cogs and Gats are enduring, autonomic, nonintrusive intelligent agents which are always-on, always working, and always-learning. It is anticipated that future “Steve Jobs” will emerge from those who are passionate about such human needs and understand human limitations.

More videos...