Applying real-time analytics to data streams in digital health Reducing costs, detecting data quality issues and improving patient care Dr Zoran Milosevic
[email protected] 23 Nov 2017
Digital health requirements Use cases EventSwarm CEP Architecture Implementation Future research Demo Agenda 2
Improved quality of health care 3 Better access to information
Reduced medical errors 4 Data Quality !
Patient Safety first ! 5 Clinician in the loop !
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 6
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 7 x xxx x x x x xx x x x x x x
EventSwarm CEP Architecture 8 Contract Definition Trade correlation pattern Alerting rule Specification Event Streams Generated Events Business Alerts Business Actions Processing Nodes
CEP Benefits 9 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
HL7 message structure 16 OBX|27|NM|14927-8^Triglycerides^LN||0.9|mmol/L^^ISO+|0.3-4.0||||F ... Segment typeSet id Value typeObservation id Observation value Units Reference range Result status
Laboratory Pathology orders Pathology results Message bus EventSwarm implementation 17 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
Duplicates 18 n > 1 n > 1 n > 1 n > 1 n > 1 n > 1 n > 1 Patient powerset Patient id = 123 Patient id = 123 Patient id = 123 Patient id = 123 Patient powerset Patient id = 123 Patient id = 123 Patient id = 123 Patient id = 123 Patient powerset Patient id = 123 Patient id = 123 Patient id = 123 Patient id = 123 Patient powerset Patient id = 123 Patient id = 123 Patient id = 123 Patient id = 123 Patient powerset Patient id = 123 Patient id = 123 Patient id = 123 Patient id = 123 Patient powerset Patient id = 123 Patient id = 123 Patient id = 123 Patient id = 123 Patient powerset Patient id = 123 Patient id = 123 Patient id = 123 Patient id = 123 Test type powerset Whitelist filter OBX = Sodium OBX = Sodium OBX = Sodium OBX = Sodium OBX = Sodium OBR = Sodium Duplicate alerts
Data Quality 19 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 Statistics Statistics abstraction Observations powerset Numeric only filter OBX = Sodium OBX = Sodium OBX = Sodium OBX = Sodium OBX = Sodium OBX = Sodium Quality alerts
Clinical Alerts 20 serum creatinine result? patients add patient data conditions medications demographics most specific yesresult > A less specific no yesresult > B less specific least specific yes no result > C result > D no Clinical alerts
Deployment - distributed 21 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 Horizontal scalability High performance
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 •Consider impact of advanced analytics, ML/AI, blockchain 22
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 Monitoring Stack: real-time enterprise
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: Policies are evaluated in response to events Computational Law
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 !