Skip to content

Latest commit

 

History

History
142 lines (121 loc) · 3.92 KB

presentation.md

File metadata and controls

142 lines (121 loc) · 3.92 KB

title: bn-play Presentation output: ./dist/presentation.html controls: true

--

bn-play

A tool for learning and interfacing with Bayesian Networks

Josh Gribbon

--

Overview

  • Motivations
  • Goals
  • Outcomes
  • Process
  • Future work

--

Motivation

  • Value of statistical and causal knowledge
  • Ease of access of the web
  • Simple and fast interface
    • Short feedback loop

--

Why should I care?

  • Philosophical basis - causality is important to know how to intervene
  • People not understanding statistics seems to lead to a lot of drama and confusion
  • Can affect regular daily decisions, legislature, etc

--

Bayesian Networks review

  • Graphical model for conditional dependence
  • Directed Acyclic Graph (DAG)
  • Terminology
  • For causality, mainly:
    • CMC - node independent of non-descendants given parents
    • Faithfulness - structure maps well to data and captures relationships
    • Causal sufficiency - all common causes measured
      • VS completeness w/ all in the graph

--

Requirements

  • Build and change the BN visually
  • View properties of the nodes - CPT, relatives
  • Edit CPT values
  • Run simulations, with interventions
  • View results

--

Interface

  • Super important!
  • Clear information
  • Coordinated data
  • Adaptive layout
  • Useful visualizations
  • Prompting and guiding interaction

--

Network visualization - mermaid.js

* Seemed simple * Looked useful for DBN in the future * Intermediate language got complicated

--

Trying a new option - vis.js

* More flexible API * Better options for expansion * Just the right amount of generality

--

Basic outline

--

Result

-- Tooltip contents

--

Technology Used

Powerful and worth mentioning

  • Vue.js - frontend components, templating, data binding, build system
  • Bootstrap, Webpack, Browserify
  • Vis.js, Chart.js - visualizations
  • Firebase - hosting, free until ~14k initial downloads per month

--

Demo

<iframe src="https://bn-play.firebaseapp.com/" width="100%" height="85%"></iframe>

--

Achievements

  • Simple site to create BNs
  • Change the structure
  • Change the CPT for a node
  • do() on a node
  • Run simulations
  • Visual and textual information and guidance

--

Limitations

  • Teaches aspects of causality, doesn't identify it
    • Con: Isolated from the data
    • Pro: Avoids many concerns
  • Doesn't identify cycles or explain the issues with them
    • Similarly, issues like cancelling out that violate faithfullness
  • Can't detect structure from data - useful but complicated to automate

--

Possible future work

  • Get feedback for new functionality - most useful thing
  • "Realtime" simulation
  • Import/export network or simulations
  • Detect cycles in graph
  • List some conditional independencies and the methods for identifying them

--

Possible future work (cont)

  • Showing d-seperation, d-connection
  • Toggle hierarchical layout
  • Edit node details - name, color, states
  • Learn network structure
  • Deploy as native app - connectivity benefits

--

Questions

Thanks!

jgribbon@stevens.edu

https://bn-play.firebaseapp.com/