HunchLab 2.0 Getting Started

Post on 12-Jan-2015

129 views 1 download

Tags:

description

This presentation covers the requirements to get started with HunchLab 2.0's predictive policing system. It starts discussing technical requirements (security, authentication) and then proceeds to discuss guidelines for configuring meaningful predictive models of crime. The presentation concludes with information about related geographic and temporal datasets that are useful in forecasting crime with recommendations on how to prioritize data sets to use in HunchLab.

transcript

340 N 12th St, Suite 402 Philadelphia, PA 19107

215.925.2600 info@azavea.com

www.hunchlab.com

2.0 - Getting Started

Agenda •  Technical Overview

–  SaaS

–  Authentication

–  End-user Requirements

•  Setup

–  Required Data

–  Uploading Crime Data

–  Defining Crime Models

•  Additional Data Sets

Places

People

Patterns } Prioritization

Places

People

Patterns } Prioritization

SaaS Architecture

Software as a Service Model

•  Subscription –  Bug fixes –  Updates –  Hosting / backups / etc. –  2nd tier support –  Training

•  Amazon Web Services infrastructure –  High availability –  Elastic resources

•  User load •  Model building processes

AWS Infrastructure & Security

•  AWS data centers –  Data residency

•  US or EU

–  Physical security •  AWS employees with permission / 2 factor auth

–  Logical access •  Azavea employees with permission / 2 factor auth

–  Redundant network / power –  Continuous penetration testing –  3rd party evaluations

•  Best-of-breed services

Authentication

Authentication

•  Options –  Standalone

•  HunchLab managed credentials

–  Integrated •  Active Directory / LDAP compatible •  Requires SaaS application to contact internal servers

•  Security Considerations –  CJIS requires 2 factor authentication –  HunchLab can provide this in standalone mode

Authentication

End-user Requirements

Client Requirements / Browsers

•  Core requirements –  Modern browser –  Network connectivity

•  TLS 1.1+

–  HTML5 app •  Geolocation API (GPS for Sidekick)

•  Browsers –  Desktop

•  Internet Explorer: last 2 releases •  Firefox: last 2 rapid releases and extended support release •  Chrome: last 2 rapid releases

–  Mobile •  Safari 7 for iOS •  Chrome current rapid release for Android

Client Requirements / Browsers

Client Requirements / Browsers

•  TLS version support –  http://en.wikipedia.org/wiki/Transport_Layer_Security#Web_browsers

Client Requirements / Browsers

•  Testing –  http://test.hunchlab.com

Required Data

Required Data

•  Boundaries –  ShapeFile format –  Uploaded in application –  Types

•  Jurisdiction boundary (required) •  Organizational layers (divisions, districts, etc.)

•  Event data (crimes, calls for service) –  CSV format –  Uploaded via API

Required Data

•  Event data (crimes, calls for service) –  CSV format

•  First row is headers with names as below

–  Columns •  datasource (string) - identifies data source

–  example: rms

•  id (string) - unique identifier for event within data source –  example: 1

•  class (string) - class(es) for event separated by pipe –  example: agg|1|23

•  pointx (numeric) – longitude –  example: -105.0255345

•  pointy (numeric) – latitude –  example: 39.7287494

•  address (string) - street address –  example: 340 N 12th Street

Required Data

•  Event data (crimes, calls for service) –  Columns (continued)

•  datetimefrom (ISO8601 datetime) - start time –  example: 2012-01-01T13:00:00Z

•  datetimeto (ISO8601 datetime) - end time –  example: 2012-01-01T13:00:00Z

•  report_time (ISO8601 datetime) - report time –  example: 2012-01-01T13:00:00Z

•  last_updated (ISO8601 datetime) - record update time –  example: 2012-01-01T13:00:00Z

Required Data

•  Event data (crimes, calls for service) –  Upload via API

•  Allows automation of upload process •  Workflow

–  Query your database for recent changes –  Transform into CSV format –  POST CSV to HunchLab URL –  Check for import to complete

–  Example scripts •  https://github.com/azavea/azavea-hunchlab-examples

Crime Models

Crime Models

•  Generate predictions –  Automatically built on a regular basis

•  Represents one or more crime classes •  Choices to make:

–  Crime classes –  Color –  Severity weight –  Patrol Efficacy

Crime Models

•  Which crimes to model? –  Start with serious events

•  Part 1s, etc.

–  Add ‘problem’ crime types for your department

•  How many models? –  Aim for up to 10 models

•  Single crime type vs. combination? –  Does the event happen often enough on its own?

•  Example: Homicides as part of Violence

–  Is the strategy the same as related crime types? •  Example: Homicides vs. Aggravated Assaults

Lincoln Example

# Assaults x

$87,238

# Burglary x

$13,096

# MVT x

$9,079

Sum to Predicted Cost of Crime

# Rape x

$217,866

# Robbery x

$67,277

Crime Models

•  Severity weights –  How important is it to prevent these crimes? –  RAND cost of crime

•  http://www.rand.org/content/dam/rand/pubs/occasional_papers/2010/RAND_OP279.pdf

–  NIH publications •  http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2835847/table/T5/

Crime Models

Crime Models

•  Patrol Efficacy –  What proportion of these events are preventable via patrol

activities? •  Example: rape (stranger vs known assailant)

–  How effective is patrol against the preventable events? •  Example: street crimes vs indoor crimes

–  Expressed as percent (0-100%) –  Examples:

•  Robbery: 50% •  Residential Burglary: 20% •  Rape: 5%

Crime Models

1.  Define set of models via crime classes 2.  Assign severity weights 3.  Assign patrol efficacy values 4.  Assign colors

•  Overall Goal –  Craft a set of models that generate predictions for real

opportunities for your officers to prevent crime.

Optional Data

Optional Data

•  Geographic POIs –  Points, lines, polygons (Shapefile) –  Examples

•  Schools •  Transit stops •  Parks •  Bars

•  Temporal feeds –  Schedules (CSV) –  Examples

•  School calendar •  Sporting events

Choosing Data Sets

•  Usefulness vs. Complexity –  How strong do you believe the correlation is?

•  Example: bars vs hospitals

–  How big is the data set? •  Example: schools vs bus stops

–  How often does the data change? •  Example: hospitals vs bars

•  Availability –  Start with what you have

•  Police stations, fire stations, public housing

–  Layer in data from other city departments •  Schools, bus stops, liquor licenses

–  Fill in gaps (once things are going)

Choosing Data Sets

•  Risk Terrain Modeling –  Literature reviews

•  http://www.rutgerscps.org/pubs.htm

–  Factors in 5 or more reviews: •  Drug Activity •  Bars •  Nightclubs •  Schools •  Transportation Hubs

Agenda •  Technical Overview

–  SaaS

–  Authentication

–  End-user Requirements

•  Setup

–  Required Data

–  Uploading Crime Data

–  Defining Crime Models

•  Additional Data Sets

340 N 12th St, Suite 402 Philadelphia, PA 19107

215.925.2600 info@azavea.com

www.hunchlab.com

Amelia Longo Business Development Associate alongo@azavea.com 215.701.7715

Jeremy Heffner HunchLab Product Manager jheffner@azavea.com 215.701.7712