SlideShare una empresa de Scribd logo
1 de 23
CarolinaCon 11
One Step Closer to the Matrix: Machine
Learning and Augmented Reality in
Streaming Data
Rob Weiss
John Eberhardt
What’s the Story?
• Rob and John have been working together for years
• Rob is a Network Engineer and Hacker
• John is a Data Scientist and Architect
• Two Great Tastes that Taste Great Together
• Different perspectives bring new answers
• Rob and John are interested in how to create a paradigm
shift in user interaction with data and network security
• We are also probably slightly insane
CarolinaCon 11
The Defender’s Challenge
• The attacker has an inherent advantage – no rules!
• So the defense problem is asymmetric
• Classical methods fail more rapidly as computing power
becomes cheaper and more readily available
• The Fortress or “Big Walls” security model is outdated and,
frankly, ineffective
• Qualified people are in short supply
• Can we crowdsource network defense?
CarolinaCon 11
How We Got Started
• A research project in a galaxy far, far away
• We started modeling zero day attacks
• We combined machine learning and streaming analytics to
detect novel patterns statistically
• It worked well enough, but there were limitations
• Not sensitive enough
• Not specific enough
• Proprietary software limited flexibility
• It still required a pretty sophisticated operator – and
those are in short supply
• So . . .
CarolinaCon 11
Taking a Different Approach
CarolinaCon 11
• Could we do for raw data what GUIs did for computers
and revolutionize human interaction with data?
• Complex streaming analytics are not tractable to the
human
• The “last mile” requires a user interface that creates flow
for the human analyst out of data
• Harness the power of metaphor to explain complex
concepts to the human analyst (e.g. Windows)
• Streaming Analytics + Streaming User Experience = “Data
Looming”
• Can we really make a prosthetic for the brain?
What? Don’t Flip Out . . .
CarolinaCon 11
Data Looming
• Can you point out every individual thread and show me
how it is woven? Probably not.
• Can you tell me what it is? I sure hope so!
CarolinaCon 11
Data Looming
Watch threads on a loom – to the naked eye,
the loom is too complex and moving too
quickly for you to pick out the details, but you
can quickly see when the overall pattern
changes – usually within very few iterations. A
simple, intuitive, scalable visualization of
streaming analytics allows the human analyst
to connect the “last mile” of disconnected
events and is at the heart of what we are doing
– merging complex streaming analytics with the
sparse pattern detection capabilities of the
human brain.
Pattern Recognition is For the Birds
A child can learn to recognize this pattern in 15 seconds, but a
computer still can’t.
#1 - Eagle #2 - Swan #3 - ????
CarolinaCon 11
Getting to The Big Idea
Zero Day Work
William Gibson’s
Neuromancer The Matrix
John Maeda’s Simplicity
by Design
Open Source Network Expertise Data Science
Expertise
Crowdsourcing
Hacktastic Innovation Explosion!!!
CarolinaCon 11
How I Did It by Victor Frankenstein
• Accelerate data analysis by extending streaming analytics to
broader groups of less skilled human analysts
• Combine the speed, precision and recall of a computer,
through an immersive interface, with the inherent sparse
pattern recognition capabilities of the human brain
• Streaming Analytics allow for rapid, real time
adjudication of data and make the user experience
dynamic
• An immersive user experience makes complex analytics
data “real” to the human and enables experiential
learning
• Combining them in a single environment enables sparse
pattern recognition in dynamic systems
CarolinaCon 11
How I Did It Continued (Abby Normal)
• Data: Streaming data from sensors, collectors, files, etc.
• Platform: Streaming analytics process and analyze these
data, including attribution to the real world
• Visual Language Construct: Integrates streaming data,
streaming analytics, and streaming user experience in a
pluggable architecture
• Streaming User Experience: Immersive 3-D user experience
allows analysts to interact directly with streaming data and
analytics
CarolinaCon 11
Architecture (Meet the Architect)
Data Sensor
(N+1)
Data Collector
(N+1)
Kafka
Zookeeper
Kafka
Queue
Nimbus
Worker Node
Storm
Trident-ML
Analytics
Platform
Visual Language
Construct
Streaming User
Experience
Analytics and
Countermeasures
Game Players
CarolinaCon 11
Design Principles
Principle Enables
Open Source Components Supports integration of streaming analytics and immersive user
experience to create a dynamic feedback loop –rapidly adapt
the platform from lessons learned from human experience
Streaming Analytics Accelerating analytics to keep pace with data collection
(facilitating high collection rate)
Immersive Streaming User
Experience
Extending the user interface to allow broader groups of analysts
to use sophisticated analytics (addressing the recruiting
challenge)
Pluggable Architecture “Bring your own” tools and analytics supports crowdsourcing
and allows for aggressive exploitation of new analytics and user
experience paradigms
CarolinaCon 11
Larry Byrd: Network Defender of the Future
A basketball player can watch your network. When an attack occurs, our player can quickly
identify pattern shift using the same brain computation as when the player identifies a
shift in the offensive strategy of the opposing basketball team. Think about this as a data
prosthetic for the human brain.
CarolinaCon 11
Enough of Us Talking at You
• Fight fire with fire – crowdsource all comers and create an
asymmetric defense
• Align economic incentives, human behaviors, and defense
objectives
• Do for data what GUIs did for computers – make it
accessible!
• This isn’t about technology . . . it’s about revolutionizing the
way humans interact with data to enable a game-changing
leap forward
CarolinaCon 11
Innovation Is Often Strange
CarolinaCon 11
But Wait, There’s More!
Altamira Technologies Corporation 2014
CarolinaCon 11
Demo Concept
Concept
• Normal work environment – “normal” patterns give way to aberrations
• This behavior is focused on network data, but could easily be any other
streaming data
Design
• Analytics cluster traffic based on source and destination port patterns
over time using k-means clustering
• Cubes represent nodes on the network; streaming spheres represent
packets
• Colors represent the behavior of nodes / packets based upon traffic –
Green is a client, Blue is a Server, Yellow is “undetermined behavior”
CarolinaCon 11
Green (client) Blue (server) Yellow (??)
Source Centroid 54760 1001 5066
Dest Centroid 791 54518 5511
Questions I Can Ask
• Is a given node on the network behaving as expected?
• Watch the node colors - they should be consistent in a normal network:
some white nodes, a lot of blue (client) nodes, and some green nodes.
What happens over time?
• Does my use of source and destination ports mark me out as a client or server?
Does my role appear consistent or change?
• The node colors indicate what they are – watch the colors of the nodes –
machines should have clear and consistent roles
• Is my pattern of nodes that I am interacting with consistent? Am I interacting
with different partners?
• Watch the stream patterns – machines should interact with consistent
groups
• Do my behaviors adhere to regular time cycles? Can I apply time cycles to any of
the above (e.g., a workday)?
• Watch the patterns change as cyclical time progresses in our “workday”
CarolinaCon 11
DEMO TIME!
Altamira Technologies Corporation 2014
CarolinaCon 11
About Rob and John
• Rob Weiss is a senior systems engineer at G2 (www.g2-
inc.com) with over 24 years of experience in government
and commercial markets. He started with Legos and is now a
tool builder and problem solver. Currently runs the Altamira
Red Team and performs information security research,
looking for hard problems to solve. Twitter: @3XPlo1T2
• John Eberhardt is a Data Scientist at 3E Services
(www.3eservicesllc.com) with 20 years of quantitative
problem solving and a penchant for trying to decipher
symbolism in obscure 16th century literature. John has
experience in analytical problem solving in healthcare, life
sciences, security, financial services, consumer products,
and transportation. Twitter: @JohnSEberhardt3
CarolinaCon 11
Repositories
• Apache Storm: https://github.com/apache/storm
• Trident-ML: https://github.com/pmerienne/trident-ml
• Rob Weiss: https://github.com/j105rob
CarolinaCon 11
Squiggly (probably won’t use this)
• A self organizing system consists of groups A, B, and C
interacting
• Hence, the current state of A is {A|B,C}
• They influence each other {B|A,C}, {C|A,B} which means
the system is described by f{{A|B,C},{B|A,C},{C|A,B}}
• However these groups are neither unitary nor static,
which means at any given time they can have sub-
attributes {Ai...An}, {Bi...Bn}, {Ci...Cn} that are unknown
• So now the system is described by f{{Ai | {Bi...Bn},
{Ci...Cn}},{Bi |{Ai...An}, {Ci...Cn}},{Ci |{Ai...An}, {Bi...Bn}}}
• How do you solve this np-hard problem?

Más contenido relacionado

La actualidad más candente

Decentralized AI Draper
Decentralized AI   DraperDecentralized AI   Draper
Decentralized AI Drapergeetachauhan
 
Scaling AI in production using PyTorch
Scaling AI in production using PyTorchScaling AI in production using PyTorch
Scaling AI in production using PyTorchgeetachauhan
 
Lessons from building a stream-first metadata platform | Shirshanka Das, Stealth
Lessons from building a stream-first metadata platform | Shirshanka Das, StealthLessons from building a stream-first metadata platform | Shirshanka Das, Stealth
Lessons from building a stream-first metadata platform | Shirshanka Das, StealthHostedbyConfluent
 
Beyond Matching: Applying Data Science Techniques to IOC-based Detection
Beyond Matching: Applying Data Science Techniques to IOC-based DetectionBeyond Matching: Applying Data Science Techniques to IOC-based Detection
Beyond Matching: Applying Data Science Techniques to IOC-based DetectionAlex Pinto
 
AI in the Enterprise - Looking Forward
AI in the Enterprise - Looking ForwardAI in the Enterprise - Looking Forward
AI in the Enterprise - Looking ForwardDavid Vandegrift
 
Software Analytics with Jupyter, Pandas, jQAssistant, and Neo4j [Neo4j Online...
Software Analytics with Jupyter, Pandas, jQAssistant, and Neo4j [Neo4j Online...Software Analytics with Jupyter, Pandas, jQAssistant, and Neo4j [Neo4j Online...
Software Analytics with Jupyter, Pandas, jQAssistant, and Neo4j [Neo4j Online...Markus Harrer
 
Introduction to NetGuardians' Big Data Software Stack
Introduction to NetGuardians' Big Data Software StackIntroduction to NetGuardians' Big Data Software Stack
Introduction to NetGuardians' Big Data Software StackJérôme Kehrli
 
Industry of Things World - Berlin 19-09-16
Industry of Things World - Berlin 19-09-16Industry of Things World - Berlin 19-09-16
Industry of Things World - Berlin 19-09-16Boris Adryan
 
BsidesLVPresso2016_JZeditsv6
BsidesLVPresso2016_JZeditsv6BsidesLVPresso2016_JZeditsv6
BsidesLVPresso2016_JZeditsv6Rod Soto
 
Measuring the IQ of your Threat Intelligence Feeds (#tiqtest)
Measuring the IQ of your Threat Intelligence Feeds (#tiqtest)Measuring the IQ of your Threat Intelligence Feeds (#tiqtest)
Measuring the IQ of your Threat Intelligence Feeds (#tiqtest)Alex Pinto
 
How to Create 80% of a Big Data Pilot Project
How to Create 80% of a Big Data Pilot ProjectHow to Create 80% of a Big Data Pilot Project
How to Create 80% of a Big Data Pilot ProjectGreg Makowski
 
Correlation Analysis Modeling Use Case - IBM Power Systems
Correlation Analysis Modeling Use Case - IBM Power Systems Correlation Analysis Modeling Use Case - IBM Power Systems
Correlation Analysis Modeling Use Case - IBM Power Systems Gautam Siwach
 
Just because you can doesn't mean that you should - thingmonk 2016
Just because you can doesn't mean that you should - thingmonk 2016Just because you can doesn't mean that you should - thingmonk 2016
Just because you can doesn't mean that you should - thingmonk 2016Boris Adryan
 
EclipseCon France 2015 - Science Track
EclipseCon France 2015 - Science TrackEclipseCon France 2015 - Science Track
EclipseCon France 2015 - Science TrackBoris Adryan
 
Real time streaming analytics
Real time streaming analyticsReal time streaming analytics
Real time streaming analyticsAnirudh
 
Era ofdataeconomyv4short
Era ofdataeconomyv4shortEra ofdataeconomyv4short
Era ofdataeconomyv4shortJun Miyazaki
 
Kamanja: Driving Business Value through Real-Time Decisioning Solutions
Kamanja: Driving Business Value through Real-Time Decisioning SolutionsKamanja: Driving Business Value through Real-Time Decisioning Solutions
Kamanja: Driving Business Value through Real-Time Decisioning SolutionsGreg Makowski
 
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16Boris Adryan
 
Adam Coates at AI Frontiers: AI for 100 Million People with Deep Learning
Adam Coates at AI Frontiers: AI for 100 Million People with Deep LearningAdam Coates at AI Frontiers: AI for 100 Million People with Deep Learning
Adam Coates at AI Frontiers: AI for 100 Million People with Deep LearningAI Frontiers
 

La actualidad más candente (20)

Decentralized AI Draper
Decentralized AI   DraperDecentralized AI   Draper
Decentralized AI Draper
 
Scaling AI in production using PyTorch
Scaling AI in production using PyTorchScaling AI in production using PyTorch
Scaling AI in production using PyTorch
 
Lessons from building a stream-first metadata platform | Shirshanka Das, Stealth
Lessons from building a stream-first metadata platform | Shirshanka Das, StealthLessons from building a stream-first metadata platform | Shirshanka Das, Stealth
Lessons from building a stream-first metadata platform | Shirshanka Das, Stealth
 
AI in the Enterprise at Scale
AI in the Enterprise at ScaleAI in the Enterprise at Scale
AI in the Enterprise at Scale
 
Beyond Matching: Applying Data Science Techniques to IOC-based Detection
Beyond Matching: Applying Data Science Techniques to IOC-based DetectionBeyond Matching: Applying Data Science Techniques to IOC-based Detection
Beyond Matching: Applying Data Science Techniques to IOC-based Detection
 
AI in the Enterprise - Looking Forward
AI in the Enterprise - Looking ForwardAI in the Enterprise - Looking Forward
AI in the Enterprise - Looking Forward
 
Software Analytics with Jupyter, Pandas, jQAssistant, and Neo4j [Neo4j Online...
Software Analytics with Jupyter, Pandas, jQAssistant, and Neo4j [Neo4j Online...Software Analytics with Jupyter, Pandas, jQAssistant, and Neo4j [Neo4j Online...
Software Analytics with Jupyter, Pandas, jQAssistant, and Neo4j [Neo4j Online...
 
Introduction to NetGuardians' Big Data Software Stack
Introduction to NetGuardians' Big Data Software StackIntroduction to NetGuardians' Big Data Software Stack
Introduction to NetGuardians' Big Data Software Stack
 
Industry of Things World - Berlin 19-09-16
Industry of Things World - Berlin 19-09-16Industry of Things World - Berlin 19-09-16
Industry of Things World - Berlin 19-09-16
 
BsidesLVPresso2016_JZeditsv6
BsidesLVPresso2016_JZeditsv6BsidesLVPresso2016_JZeditsv6
BsidesLVPresso2016_JZeditsv6
 
Measuring the IQ of your Threat Intelligence Feeds (#tiqtest)
Measuring the IQ of your Threat Intelligence Feeds (#tiqtest)Measuring the IQ of your Threat Intelligence Feeds (#tiqtest)
Measuring the IQ of your Threat Intelligence Feeds (#tiqtest)
 
How to Create 80% of a Big Data Pilot Project
How to Create 80% of a Big Data Pilot ProjectHow to Create 80% of a Big Data Pilot Project
How to Create 80% of a Big Data Pilot Project
 
Correlation Analysis Modeling Use Case - IBM Power Systems
Correlation Analysis Modeling Use Case - IBM Power Systems Correlation Analysis Modeling Use Case - IBM Power Systems
Correlation Analysis Modeling Use Case - IBM Power Systems
 
Just because you can doesn't mean that you should - thingmonk 2016
Just because you can doesn't mean that you should - thingmonk 2016Just because you can doesn't mean that you should - thingmonk 2016
Just because you can doesn't mean that you should - thingmonk 2016
 
EclipseCon France 2015 - Science Track
EclipseCon France 2015 - Science TrackEclipseCon France 2015 - Science Track
EclipseCon France 2015 - Science Track
 
Real time streaming analytics
Real time streaming analyticsReal time streaming analytics
Real time streaming analytics
 
Era ofdataeconomyv4short
Era ofdataeconomyv4shortEra ofdataeconomyv4short
Era ofdataeconomyv4short
 
Kamanja: Driving Business Value through Real-Time Decisioning Solutions
Kamanja: Driving Business Value through Real-Time Decisioning SolutionsKamanja: Driving Business Value through Real-Time Decisioning Solutions
Kamanja: Driving Business Value through Real-Time Decisioning Solutions
 
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
 
Adam Coates at AI Frontiers: AI for 100 Million People with Deep Learning
Adam Coates at AI Frontiers: AI for 100 Million People with Deep LearningAdam Coates at AI Frontiers: AI for 100 Million People with Deep Learning
Adam Coates at AI Frontiers: AI for 100 Million People with Deep Learning
 

Destacado

Las 5 redes sociales
Las 5 redes socialesLas 5 redes sociales
Las 5 redes socialesTomy Becker
 
Ship construction project
Ship construction projectShip construction project
Ship construction projectMummina Sekhar
 
Guide cоздание сайта на office 365.
Guide cоздание сайта на office 365. Guide cоздание сайта на office 365.
Guide cоздание сайта на office 365. Svetlana Grosheva
 
PM 201: Emotional Intelligence for Project Managers
PM 201: Emotional Intelligence for Project ManagersPM 201: Emotional Intelligence for Project Managers
PM 201: Emotional Intelligence for Project ManagersOHUG
 
When should you get your house painted
When should you get your house paintedWhen should you get your house painted
When should you get your house paintedvanessamoniz
 
Máy điều hòa tủ lạnh
Máy điều hòa   tủ lạnhMáy điều hòa   tủ lạnh
Máy điều hòa tủ lạnhnguyensun
 
Sales Tax Compliance within Oracle E-Business Suite / JD Edwards / PeopleSoft
Sales Tax Compliance within Oracle E-Business Suite / JD Edwards / PeopleSoftSales Tax Compliance within Oracle E-Business Suite / JD Edwards / PeopleSoft
Sales Tax Compliance within Oracle E-Business Suite / JD Edwards / PeopleSoftOHUG
 
Pėdų šveitiklių micro pedi ir scholl velvet smooth palyginimas
Pėdų šveitiklių micro pedi ir scholl velvet smooth palyginimasPėdų šveitiklių micro pedi ir scholl velvet smooth palyginimas
Pėdų šveitiklių micro pedi ir scholl velvet smooth palyginimasHairfree.lt
 

Destacado (14)

Passive voice
Passive voice Passive voice
Passive voice
 
Las 5 redes sociales
Las 5 redes socialesLas 5 redes sociales
Las 5 redes sociales
 
Ship construction project
Ship construction projectShip construction project
Ship construction project
 
Tutorial sobre Eclipse
Tutorial sobre EclipseTutorial sobre Eclipse
Tutorial sobre Eclipse
 
Note names part 1 ©
Note names part 1 ©Note names part 1 ©
Note names part 1 ©
 
Guide cоздание сайта на office 365.
Guide cоздание сайта на office 365. Guide cоздание сайта на office 365.
Guide cоздание сайта на office 365.
 
PM 201: Emotional Intelligence for Project Managers
PM 201: Emotional Intelligence for Project ManagersPM 201: Emotional Intelligence for Project Managers
PM 201: Emotional Intelligence for Project Managers
 
When should you get your house painted
When should you get your house paintedWhen should you get your house painted
When should you get your house painted
 
Practica 2
Practica 2Practica 2
Practica 2
 
Sorrow The Movie
Sorrow The Movie Sorrow The Movie
Sorrow The Movie
 
Note names part 7 ©
Note names part 7 ©Note names part 7 ©
Note names part 7 ©
 
Máy điều hòa tủ lạnh
Máy điều hòa   tủ lạnhMáy điều hòa   tủ lạnh
Máy điều hòa tủ lạnh
 
Sales Tax Compliance within Oracle E-Business Suite / JD Edwards / PeopleSoft
Sales Tax Compliance within Oracle E-Business Suite / JD Edwards / PeopleSoftSales Tax Compliance within Oracle E-Business Suite / JD Edwards / PeopleSoft
Sales Tax Compliance within Oracle E-Business Suite / JD Edwards / PeopleSoft
 
Pėdų šveitiklių micro pedi ir scholl velvet smooth palyginimas
Pėdų šveitiklių micro pedi ir scholl velvet smooth palyginimasPėdų šveitiklių micro pedi ir scholl velvet smooth palyginimas
Pėdų šveitiklių micro pedi ir scholl velvet smooth palyginimas
 

Similar a One Step Closer to the Matrix: Machine Learning & Augmented Reality in Streaming Data

Relationships Matter: Using Connected Data for Better Machine Learning
Relationships Matter: Using Connected Data for Better Machine LearningRelationships Matter: Using Connected Data for Better Machine Learning
Relationships Matter: Using Connected Data for Better Machine LearningNeo4j
 
A Spark-Based Intelligent Assistant: Making Data Exploration in Natural Langu...
A Spark-Based Intelligent Assistant: Making Data Exploration in Natural Langu...A Spark-Based Intelligent Assistant: Making Data Exploration in Natural Langu...
A Spark-Based Intelligent Assistant: Making Data Exploration in Natural Langu...Databricks
 
AI, ML and Graph Algorithms: Real Life Use Cases with Neo4j
AI, ML and Graph Algorithms: Real Life Use Cases with Neo4jAI, ML and Graph Algorithms: Real Life Use Cases with Neo4j
AI, ML and Graph Algorithms: Real Life Use Cases with Neo4jIvan Zoratti
 
Tech essentials for Product managers
Tech essentials for Product managersTech essentials for Product managers
Tech essentials for Product managersNitin T Bhat
 
How Graph Databases used in Police Department?
How Graph Databases used in Police Department?How Graph Databases used in Police Department?
How Graph Databases used in Police Department?Samet KILICTAS
 
Delivering Security Insights with Data Analytics and Visualization
Delivering Security Insights with Data Analytics and VisualizationDelivering Security Insights with Data Analytics and Visualization
Delivering Security Insights with Data Analytics and VisualizationRaffael Marty
 
Rise of the machines -- Owasp israel -- June 2014 meetup
Rise of the machines -- Owasp israel -- June 2014 meetupRise of the machines -- Owasp israel -- June 2014 meetup
Rise of the machines -- Owasp israel -- June 2014 meetupShlomo Yona
 
Ketnote: GraphTour Boston
Ketnote: GraphTour BostonKetnote: GraphTour Boston
Ketnote: GraphTour BostonNeo4j
 
Apache Kafka and the Data Mesh | Ben Stopford and Michael Noll, Confluent
Apache Kafka and the Data Mesh | Ben Stopford and Michael Noll, ConfluentApache Kafka and the Data Mesh | Ben Stopford and Michael Noll, Confluent
Apache Kafka and the Data Mesh | Ben Stopford and Michael Noll, ConfluentHostedbyConfluent
 
Introduction to Neo4j
Introduction to Neo4jIntroduction to Neo4j
Introduction to Neo4jNeo4j
 
Supercharged graph visualization for cyber security
Supercharged graph visualization for cyber securitySupercharged graph visualization for cyber security
Supercharged graph visualization for cyber securityCambridge Intelligence
 
Cyber Analytics Applications for Data-Intensive Computing
Cyber Analytics Applications for Data-Intensive ComputingCyber Analytics Applications for Data-Intensive Computing
Cyber Analytics Applications for Data-Intensive ComputingMike Fisk
 
201411203 goto night on graphs for fraud detection
201411203 goto night on graphs for fraud detection201411203 goto night on graphs for fraud detection
201411203 goto night on graphs for fraud detectionRik Van Bruggen
 
Machine learning in real-time - the next frontier
Machine learning in real-time - the next frontierMachine learning in real-time - the next frontier
Machine learning in real-time - the next frontierSnowplow Analytics
 
Applying Machine Learning to Network Security Monitoring - BayThreat 2013
Applying Machine Learning to Network Security Monitoring - BayThreat 2013Applying Machine Learning to Network Security Monitoring - BayThreat 2013
Applying Machine Learning to Network Security Monitoring - BayThreat 2013Alex Pinto
 
BSidesLV 2013 - Using Machine Learning to Support Information Security
BSidesLV 2013 - Using Machine Learning to Support Information SecurityBSidesLV 2013 - Using Machine Learning to Support Information Security
BSidesLV 2013 - Using Machine Learning to Support Information SecurityAlex Pinto
 
InfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
InfiniteGraph Presentation from Oct 21, 2010 DBTA WebcastInfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
InfiniteGraph Presentation from Oct 21, 2010 DBTA WebcastInfiniteGraph
 
Choosing the right Technologies for your next unicorn.
Choosing the right Technologies for your next unicorn.Choosing the right Technologies for your next unicorn.
Choosing the right Technologies for your next unicorn.Gladson DSouza
 
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...Daniel Bryant
 

Similar a One Step Closer to the Matrix: Machine Learning & Augmented Reality in Streaming Data (20)

Relationships Matter: Using Connected Data for Better Machine Learning
Relationships Matter: Using Connected Data for Better Machine LearningRelationships Matter: Using Connected Data for Better Machine Learning
Relationships Matter: Using Connected Data for Better Machine Learning
 
A Spark-Based Intelligent Assistant: Making Data Exploration in Natural Langu...
A Spark-Based Intelligent Assistant: Making Data Exploration in Natural Langu...A Spark-Based Intelligent Assistant: Making Data Exploration in Natural Langu...
A Spark-Based Intelligent Assistant: Making Data Exploration in Natural Langu...
 
AI, ML and Graph Algorithms: Real Life Use Cases with Neo4j
AI, ML and Graph Algorithms: Real Life Use Cases with Neo4jAI, ML and Graph Algorithms: Real Life Use Cases with Neo4j
AI, ML and Graph Algorithms: Real Life Use Cases with Neo4j
 
Tech essentials for Product managers
Tech essentials for Product managersTech essentials for Product managers
Tech essentials for Product managers
 
How Graph Databases used in Police Department?
How Graph Databases used in Police Department?How Graph Databases used in Police Department?
How Graph Databases used in Police Department?
 
Neo4j in Depth
Neo4j in DepthNeo4j in Depth
Neo4j in Depth
 
Delivering Security Insights with Data Analytics and Visualization
Delivering Security Insights with Data Analytics and VisualizationDelivering Security Insights with Data Analytics and Visualization
Delivering Security Insights with Data Analytics and Visualization
 
Rise of the machines -- Owasp israel -- June 2014 meetup
Rise of the machines -- Owasp israel -- June 2014 meetupRise of the machines -- Owasp israel -- June 2014 meetup
Rise of the machines -- Owasp israel -- June 2014 meetup
 
Ketnote: GraphTour Boston
Ketnote: GraphTour BostonKetnote: GraphTour Boston
Ketnote: GraphTour Boston
 
Apache Kafka and the Data Mesh | Ben Stopford and Michael Noll, Confluent
Apache Kafka and the Data Mesh | Ben Stopford and Michael Noll, ConfluentApache Kafka and the Data Mesh | Ben Stopford and Michael Noll, Confluent
Apache Kafka and the Data Mesh | Ben Stopford and Michael Noll, Confluent
 
Introduction to Neo4j
Introduction to Neo4jIntroduction to Neo4j
Introduction to Neo4j
 
Supercharged graph visualization for cyber security
Supercharged graph visualization for cyber securitySupercharged graph visualization for cyber security
Supercharged graph visualization for cyber security
 
Cyber Analytics Applications for Data-Intensive Computing
Cyber Analytics Applications for Data-Intensive ComputingCyber Analytics Applications for Data-Intensive Computing
Cyber Analytics Applications for Data-Intensive Computing
 
201411203 goto night on graphs for fraud detection
201411203 goto night on graphs for fraud detection201411203 goto night on graphs for fraud detection
201411203 goto night on graphs for fraud detection
 
Machine learning in real-time - the next frontier
Machine learning in real-time - the next frontierMachine learning in real-time - the next frontier
Machine learning in real-time - the next frontier
 
Applying Machine Learning to Network Security Monitoring - BayThreat 2013
Applying Machine Learning to Network Security Monitoring - BayThreat 2013Applying Machine Learning to Network Security Monitoring - BayThreat 2013
Applying Machine Learning to Network Security Monitoring - BayThreat 2013
 
BSidesLV 2013 - Using Machine Learning to Support Information Security
BSidesLV 2013 - Using Machine Learning to Support Information SecurityBSidesLV 2013 - Using Machine Learning to Support Information Security
BSidesLV 2013 - Using Machine Learning to Support Information Security
 
InfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
InfiniteGraph Presentation from Oct 21, 2010 DBTA WebcastInfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
InfiniteGraph Presentation from Oct 21, 2010 DBTA Webcast
 
Choosing the right Technologies for your next unicorn.
Choosing the right Technologies for your next unicorn.Choosing the right Technologies for your next unicorn.
Choosing the right Technologies for your next unicorn.
 
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
 

Último

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 

Último (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 

One Step Closer to the Matrix: Machine Learning & Augmented Reality in Streaming Data

  • 1. CarolinaCon 11 One Step Closer to the Matrix: Machine Learning and Augmented Reality in Streaming Data Rob Weiss John Eberhardt
  • 2. What’s the Story? • Rob and John have been working together for years • Rob is a Network Engineer and Hacker • John is a Data Scientist and Architect • Two Great Tastes that Taste Great Together • Different perspectives bring new answers • Rob and John are interested in how to create a paradigm shift in user interaction with data and network security • We are also probably slightly insane CarolinaCon 11
  • 3. The Defender’s Challenge • The attacker has an inherent advantage – no rules! • So the defense problem is asymmetric • Classical methods fail more rapidly as computing power becomes cheaper and more readily available • The Fortress or “Big Walls” security model is outdated and, frankly, ineffective • Qualified people are in short supply • Can we crowdsource network defense? CarolinaCon 11
  • 4. How We Got Started • A research project in a galaxy far, far away • We started modeling zero day attacks • We combined machine learning and streaming analytics to detect novel patterns statistically • It worked well enough, but there were limitations • Not sensitive enough • Not specific enough • Proprietary software limited flexibility • It still required a pretty sophisticated operator – and those are in short supply • So . . . CarolinaCon 11
  • 5. Taking a Different Approach CarolinaCon 11 • Could we do for raw data what GUIs did for computers and revolutionize human interaction with data? • Complex streaming analytics are not tractable to the human • The “last mile” requires a user interface that creates flow for the human analyst out of data • Harness the power of metaphor to explain complex concepts to the human analyst (e.g. Windows) • Streaming Analytics + Streaming User Experience = “Data Looming” • Can we really make a prosthetic for the brain?
  • 6. What? Don’t Flip Out . . . CarolinaCon 11
  • 7. Data Looming • Can you point out every individual thread and show me how it is woven? Probably not. • Can you tell me what it is? I sure hope so! CarolinaCon 11 Data Looming Watch threads on a loom – to the naked eye, the loom is too complex and moving too quickly for you to pick out the details, but you can quickly see when the overall pattern changes – usually within very few iterations. A simple, intuitive, scalable visualization of streaming analytics allows the human analyst to connect the “last mile” of disconnected events and is at the heart of what we are doing – merging complex streaming analytics with the sparse pattern detection capabilities of the human brain.
  • 8. Pattern Recognition is For the Birds A child can learn to recognize this pattern in 15 seconds, but a computer still can’t. #1 - Eagle #2 - Swan #3 - ???? CarolinaCon 11
  • 9. Getting to The Big Idea Zero Day Work William Gibson’s Neuromancer The Matrix John Maeda’s Simplicity by Design Open Source Network Expertise Data Science Expertise Crowdsourcing Hacktastic Innovation Explosion!!! CarolinaCon 11
  • 10. How I Did It by Victor Frankenstein • Accelerate data analysis by extending streaming analytics to broader groups of less skilled human analysts • Combine the speed, precision and recall of a computer, through an immersive interface, with the inherent sparse pattern recognition capabilities of the human brain • Streaming Analytics allow for rapid, real time adjudication of data and make the user experience dynamic • An immersive user experience makes complex analytics data “real” to the human and enables experiential learning • Combining them in a single environment enables sparse pattern recognition in dynamic systems CarolinaCon 11
  • 11. How I Did It Continued (Abby Normal) • Data: Streaming data from sensors, collectors, files, etc. • Platform: Streaming analytics process and analyze these data, including attribution to the real world • Visual Language Construct: Integrates streaming data, streaming analytics, and streaming user experience in a pluggable architecture • Streaming User Experience: Immersive 3-D user experience allows analysts to interact directly with streaming data and analytics CarolinaCon 11
  • 12. Architecture (Meet the Architect) Data Sensor (N+1) Data Collector (N+1) Kafka Zookeeper Kafka Queue Nimbus Worker Node Storm Trident-ML Analytics Platform Visual Language Construct Streaming User Experience Analytics and Countermeasures Game Players CarolinaCon 11
  • 13. Design Principles Principle Enables Open Source Components Supports integration of streaming analytics and immersive user experience to create a dynamic feedback loop –rapidly adapt the platform from lessons learned from human experience Streaming Analytics Accelerating analytics to keep pace with data collection (facilitating high collection rate) Immersive Streaming User Experience Extending the user interface to allow broader groups of analysts to use sophisticated analytics (addressing the recruiting challenge) Pluggable Architecture “Bring your own” tools and analytics supports crowdsourcing and allows for aggressive exploitation of new analytics and user experience paradigms CarolinaCon 11
  • 14. Larry Byrd: Network Defender of the Future A basketball player can watch your network. When an attack occurs, our player can quickly identify pattern shift using the same brain computation as when the player identifies a shift in the offensive strategy of the opposing basketball team. Think about this as a data prosthetic for the human brain. CarolinaCon 11
  • 15. Enough of Us Talking at You • Fight fire with fire – crowdsource all comers and create an asymmetric defense • Align economic incentives, human behaviors, and defense objectives • Do for data what GUIs did for computers – make it accessible! • This isn’t about technology . . . it’s about revolutionizing the way humans interact with data to enable a game-changing leap forward CarolinaCon 11
  • 16. Innovation Is Often Strange CarolinaCon 11
  • 17. But Wait, There’s More! Altamira Technologies Corporation 2014 CarolinaCon 11
  • 18. Demo Concept Concept • Normal work environment – “normal” patterns give way to aberrations • This behavior is focused on network data, but could easily be any other streaming data Design • Analytics cluster traffic based on source and destination port patterns over time using k-means clustering • Cubes represent nodes on the network; streaming spheres represent packets • Colors represent the behavior of nodes / packets based upon traffic – Green is a client, Blue is a Server, Yellow is “undetermined behavior” CarolinaCon 11 Green (client) Blue (server) Yellow (??) Source Centroid 54760 1001 5066 Dest Centroid 791 54518 5511
  • 19. Questions I Can Ask • Is a given node on the network behaving as expected? • Watch the node colors - they should be consistent in a normal network: some white nodes, a lot of blue (client) nodes, and some green nodes. What happens over time? • Does my use of source and destination ports mark me out as a client or server? Does my role appear consistent or change? • The node colors indicate what they are – watch the colors of the nodes – machines should have clear and consistent roles • Is my pattern of nodes that I am interacting with consistent? Am I interacting with different partners? • Watch the stream patterns – machines should interact with consistent groups • Do my behaviors adhere to regular time cycles? Can I apply time cycles to any of the above (e.g., a workday)? • Watch the patterns change as cyclical time progresses in our “workday” CarolinaCon 11
  • 20. DEMO TIME! Altamira Technologies Corporation 2014 CarolinaCon 11
  • 21. About Rob and John • Rob Weiss is a senior systems engineer at G2 (www.g2- inc.com) with over 24 years of experience in government and commercial markets. He started with Legos and is now a tool builder and problem solver. Currently runs the Altamira Red Team and performs information security research, looking for hard problems to solve. Twitter: @3XPlo1T2 • John Eberhardt is a Data Scientist at 3E Services (www.3eservicesllc.com) with 20 years of quantitative problem solving and a penchant for trying to decipher symbolism in obscure 16th century literature. John has experience in analytical problem solving in healthcare, life sciences, security, financial services, consumer products, and transportation. Twitter: @JohnSEberhardt3 CarolinaCon 11
  • 22. Repositories • Apache Storm: https://github.com/apache/storm • Trident-ML: https://github.com/pmerienne/trident-ml • Rob Weiss: https://github.com/j105rob CarolinaCon 11
  • 23. Squiggly (probably won’t use this) • A self organizing system consists of groups A, B, and C interacting • Hence, the current state of A is {A|B,C} • They influence each other {B|A,C}, {C|A,B} which means the system is described by f{{A|B,C},{B|A,C},{C|A,B}} • However these groups are neither unitary nor static, which means at any given time they can have sub- attributes {Ai...An}, {Bi...Bn}, {Ci...Cn} that are unknown • So now the system is described by f{{Ai | {Bi...Bn}, {Ci...Cn}},{Bi |{Ai...An}, {Ci...Cn}},{Ci |{Ai...An}, {Bi...Bn}}} • How do you solve this np-hard problem?