• No results found

Applying real-time analytics to data streams in digital health

N/A
N/A
Protected

Academic year: 2021

Share "Applying real-time analytics to data streams in digital health"

Copied!
31
0
0

Loading.... (view fulltext now)

Full text

(1)

Applying real-time analytics to

data streams in digital health

Reducing costs, detecting data quality issues and improving patient care

Dr Zoran Milosevic

zoran@deontik.com

(2)

Digital health requirements

Use cases

EventSwarm CEP Architecture

Implementation

Future research

Demo

(3)

Improved quality of health care

Better access to

information

(4)

Reduced medical errors

Data Quality

!

(5)

Patient Safety first !

Clinician in the

loop !

(6)

Use Cases

• UC1: Reduce unusual/duplicate lab orders

– Problem: cost and convenience – useful life time limited by time windows – Solution: find duplicates in configurable window

• UC2: Data quality issues

– Problem: detecting potential IT failures that may harm care delivery

– Solution: syndromic surveillance algorithm to detect anomalies – via outliers

• UC3: Context-specific lab result alerts – personalisation

– Problem: real-time detection of arising clinical conditions

• E.g. Hemoglobin A1C (blood sugar/diabetes), Serum creatinine (kidney function)

– Solution: compare event streams with data from EHRs – cascading rules • clinical decision support (CDS) application

(7)

Syndromic surveillance

• UC2: Research by Prof Enrico Coiera et al, UNSW

– applies techniques previously used for disease outbreak – aiming to detect quality issues in Health IT systems

– outliers may suggest equipment failures – use of SD measure

x x x x x x x x x x x x x x x x

(8)

EventSwarm CEP Architecture

Contract Definition Trade correlation pattern Alerting rule Specification Event Streams Generated Events Business Alerts Business Actions Processing Nodes
(9)

CEP Benefits

Contract violations, network problems … Humans focus: decision making

O

p

e

Operational Costs Agility

e.g. patient condition indicators

e.g. twitter chats for detecting disease outbreaks

Dealing with growing data volume and velocity

(10)

Event and Event Pattern

An event – signifies an occurrence of interest

Event

Simple

of people and systems

Action(s) Control FlowData and State Changes Policy Violation Temporal in business

processes goods purchased e.g. number of e.g. obligations notfulfilled e.g. deadlines Has structured content, and includes standard fields e.g. id and timestamp

Complex e.g. one stock price AND other stock volume in last 5 min

AND OR Sequence

Time Window

Event Pattern Filter

(11)

Event pattern processing

A, B OR C, D A, B OR C, D A, B OR C, D A, B OR C, D A, B OR C, D A, B OR C, D time line current time event pattern A B D event event pattern recognised
(12)

Time window example

Wed Thu Fri Sat Sun

Tue Mon Tue Wed Thu Fri

0 1254

Count(downtimeEvent):

Active Time Window

Downtime event

- Width:

One Week - Condition:

Count( downtimeEvent ) = 5 Five sets of downtime in any

seven days

Event in match of window condition Window with condition

found.

(13)

Expressive Strong

Semantics

EventSwarm: distinguishing features

Scalable Distributable

Sets and

Powersets

group by e.x (powerset) e1, e2 … e:x=1

e:x=2 e:x=n Naturally Parallel Time consistent

Logically

Compose

A and B and C A then B then C A or B or C e1, e2 … component event(e) value(x) y = f(e,x)

Event

Driven

(14)

Implementation features

• Lightweight, in-memory, CEP library for Java

– designed for embedding in applications, including

mobile

• Components form a data-driven processing graph

– graph segments can be distributed using any

distribution infrastructure (e.g. Storm, Kafka)

• Latency, memory usage, distribution and threading

– controlled through component selection and graph

structuring

– allows pushing your processing all the way out to the

data sources - further improves latency

(15)

Event processing stack

Azure, Amazon , …

Enterprise Distributed systems Cloud

IBM, Oracle, Tibco, …

Data stream processing platforms

Storm, Kafka, Flume, ActiveMQ, AWS Kinesis, Microsoft Azure, Lambda Arcgitecture, Fink …

Data stream analytics platforms

Drools Fusion, Esper, Event Swarm, Spark Streaming, InfoSphere Streams, Azure Stream Analytics…

Hadoop, Spark…

Specific solutions

Finance, Health, Social Media, IoT …

Stored data analytics platforms

Elastic Search, Pentaho, …

Others

Advanced statistics, machine learning, text processing, …

Analytics techniques and functions

1. Infrastructure Platforms 2. Big Data platforms 3. Analytics platforms 5. Analytics solutions 4. Analytics tools

(16)

HL7 message structure

OBX|27|NM|14927-8^Triglycerides^LN||0.9|mmol/L^^ISO+|0.3-4.0||||F ... Segment type Set id Value type Observation id Observation value Units Reference range Result status
(17)

Laboratory Pathology orders Pathology results Message bus

EventSwarm implementation

Two weeks for duplicates and surveillance - Analysis and design

- Fast HL7 V2 parser

One week for clinical use cases

Quality analysis Quality alerts Clinical Rules Patients Clinical alerts Duplicate detection Duplicate alerts

(18)

Duplicates

n > 1 n > 1 n > 1 n > 1 n > 1 n > 1 n > 1 Patient powerset Patient id = Patient id123 = Patient id123 = Patient id123 = 123 Patient powerset Patient id = Patient id123 = Patient id123 = Patient id123 = 123 Patient powerset Patient id = Patient id123 = Patient id123 = Patient id123 = 123 Patient powerset Patient id = Patient id123 = Patient id123 = Patient id123 = 123 Patient powerset Patient id = Patient id123 = Patient id123 = Patient id123 = 123 Patient powerset Patient id = Patient id123 = Patient id123 = Patient id123 = 123 Patient powerset Patient id = Patient id123 = Patient id123 = Patient id123 = 123 Test type powerset Whitelist filter OBX = SodiumOBX = SodiumOBX = SodiumOBX = SodiumOBX = SodiumOBR = Sodium Duplicate alerts
(19)

Data Quality

expr1 expr 2 expr 3 expr 4 expr1 expr 2 expr 3 expr 4 expr1 expr 2 expr 3 expr 4 expr1 expr 2 expr 3 expr 4 expr1 expr 2 expr 3 expr 4 expr1 expr 2 expr 3 expr 4 expr1 expr 2 expr 3 expr 4 Statistics Statistics Statistics Statistics Statistics StatisticsStatistics abstraction Observations powerset Numeric only filter OBX = SodiumOBX = SodiumOBX = SodiumOBX = SodiumOBX = SodiumOBX = Sodium Quality alerts
(20)

Clinical Alerts

serum creatinine result? patients add patient data conditions medications demographics most specific yes result > A less specific no yes result > B less specific least specific yes no result > C result > D no Clinical alerts
(21)

Deployment - distributed

Laboratory A Duplicate detection Quality analysis Core rules and configuration localisation for lab A Laboratory B Duplicate detection Quality analysis localisation

for lab B time

deploy

deploy

(22)

Links to RegTech

• RegTech - use of IT for

– Regulatory monitoring, reporting and compliance

• Todays approaches:

– digitization of manual reporting and compliance, – e.g. know-your-customer

• Further benefits – real-time monitoring

– faster detection of risks and more efficient compliance

– much experience from our early research – contract monitoring • Business contract language (BCL) – use of event-patterns

• “Compliance checking between business processes and business contracts”, widely cited paper

(23)

23

Business Events

OR

Event Patterns: sequences, parallel, alt, correlation/causality

Communities

Assign/Revoke Roles, Policies, Fill Roles etc

Policies

"The supplier must ensure that all goods have been delivered within 10 days of receiving the purchase order"

Permissions, Prohibitions and Obligations

Network & IT Events

Programs, Databases, Network, Legacy, Middleware

(24)

The Purchasing director is entitled to

[cancel an order] if

[written notice is given] within [24 hours

of order lodgement].

The parties must

not [divulge the financial details]

of this contract to any third

parties

The supplier must

ensure that all [goods have been delivered]

[within 10 days of receiving the purchase order

]

Policies & Events

[cancel an order] - Event Key:

(25)

25 Extended Enterprise (e.g. Federation) Event Enterprise Message Action Internal Process Deadline Obligations, Permissions,

Prohibitions, Violation measures …

Community Model

X-Org Process (Coordination)

Community Model

Events, Policies, Community: powerful formalism

Context for Smart

Contracts !

(26)
(27)
(28)

Contracts

• Legal contracts

– Deontic constrains

• Roles, policies, context (community)

– Computable expressions

• Monitoring, reasoning, …

– Event-oriented expressions

• Smart contracts – blockchain

– What is needed to ensure legal validity ?

• Contract life cycle

• Contract language – capture deontic semantics

– New paper submitted - leverages our previous research

• “On Legal Contracts, Imperative and Declarative Smart Contracts, and Blockchain Systems”

(29)

Governance

• Governance → an important challenge

– Legislative rules and regulatory compliance,

– Compliance to internal/contractual policies, accounting principles …

• Implies defining a scope or a domain

– where policies apply

– where monitoring is required – where enforcement is needed

• Contract is a special kind of governance

– risk minimization in the presence of uncertainty – SLAs are special kind of contract

• A framework for modelling governance is needed

– including the related (cross-)organizational and policy constraints – our approach → Community Model

– contexts for enterprise and security policies, interactions, information exchange, interoperability …

(30)

Future work

• Digital health application

– new rules, e.g. personal medical devices

– social media correlation with medical data streams – incident detection and emergency management

• General CEP platform

– enriching with support for deontic logic token objects • based on the recent ODP Enterprise Language standard • useful for compliance and RegTech applications

– AI/ML topics - prediction after event pattern detection • Long Short Term Memory (LSTM)

• automated learning of CEP rules

– porting to recent Lambda architecture

– Formalizing EventSwarm concepts in Maude

(31)

References

Related documents

Prior to joining PETRONAS, he served the Shell Group of Companies for 10 years in various capacities including Head Financial Services and Manager Planning & Support at

Advanced business analytics technologies such as in-memory analytics, in-database analytics and complex event processing (CEP) tools enable organizations to analyze

Organizing ideas around a currency crisis model can bring various advantages in understanding sources of financial instability such as: self-fulfilling

Capturing the evidence needed to detect the occurrence of certain types of business moments as they happen requires real-time processing of large streams of fast-moving data

Ninety schools and universities from 21 OECD countries submitted newly built or renovated facilities illustrating themes including schools in the information society,

Lieutenant Governor Murray launched the first round of the MLSC Equipment and Supplies for High Schools Grant Program at the 7th Annual Science, Technology, Engineering, and

spécialisées: Le Président/Secrétaire Exécutif lorsqu‟il lui est permis, Ombudsman et ses Vices, ainsi que les fonctionnaires éligibles pour bénéficier la

Con el modelo extendido podemos analizar las respuestas de los alumnos a problemas empíricos y así avanzar en el estudio de características del razonamiento de los alumnos