Prescriptive Analytics Part I Nick Gonzalez, 2/10/14.

Slides:



Advertisements
Similar presentations
Developed by Reneta Barneva, SUNY Fredonia
Advertisements

Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Ch2 Data Preprocessing part3 Dr. Bernard Chen Ph.D. University of Central Arkansas Fall 2009.
Design Concepts and Principles
Chapter 1 - An Introduction to Computers and Problem Solving
Dynamic Service Composition with QoS Assurance Feb , 2009 Jing Dong UTD Farokh Bastani UTD I-Ling Yen UTD.
ProActive Task Manager Component for SEGL Parameter Sweeping Natalia Currle-Linde and Wasseim Alzouabi High Performance Computing Center Stuttgart (HLRS),
Basic guidelines for the creation of a DW Create corporate sponsors and plan thoroughly Determine a scalable architectural framework for the DW Identify.
Chapter 4 DECISION SUPPORT AND ARTIFICIAL INTELLIGENCE
Programming Creating programs that run on your PC
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Knowledge Management Tools Abstract More and more companies use knowledge management to leverage theis most important resource : knowledge. Knowledge.
Evolutionary Computation Application Peter Andras peter.andras/lectures.
McGraw-Hill/Irwin ©2005 The McGraw-Hill Companies, All rights reserved ©2005 The McGraw-Hill Companies, All rights reserved McGraw-Hill/Irwin.
Software Reengineering 2003 년 12 월 2 일 최창익, 고광 원.
Annual SERC Research Review - Student Presentation, October 5-6, Extending Model Based System Engineering to Utilize 3D Virtual Environments Peter.
Business Process Performance Prediction on a Tracked Simulation Model Andrei Solomon, Marin Litoiu– York University.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Unit 2: Engineering Design Process
Abstraction IS 101Y/CMSC 101 Computational Thinking and Design Tuesday, September 17, 2013 Carolyn Seaman University of Maryland, Baltimore County.
Introduction to Computational Thinking Vicky Chen.
Testing. Definition From the dictionary- the means by which the presence, quality, or genuineness of anything is determined; a means of trial. For software.
Issues with Data Mining
Chapter 2 The process Process, Methods, and Tools
Implementing Genetic Algorithms in Finance Applications Nihaar Sinha.
SIGCOMM 2002 New Directions in Traffic Measurement and Accounting Focusing on the Elephants, Ignoring the Mice Cristian Estan and George Varghese University.
Business Analysis and Essential Competencies
Introduction CS 3358 Data Structures. What is Computer Science? Computer Science is the study of algorithms, including their  Formal and mathematical.
Cosc 2150: Computer Organization
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
1 Chapter 5 Software Engineering Practice. 2 What is “Practice”? Practice is a broad array of concepts, principles, methods, and tools that you must consider.
Coming up: Software Engineering: A Practitioner’s Approach, 6/e Chapter 5 Practice: A Generic View copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Abstraction IS 101Y/CMSC 101 Computational Thinking and Design Tuesday, September 17, 2013 Marie desJardins University of Maryland, Baltimore County.
Programming Concepts Chapter 3.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Introduction CS 3358 Data Structures. What is Computer Science? Computer Science is the study of algorithms, including their  Formal and mathematical.
1 5 Nov 2002 Risto Pohjonen, Juha-Pekka Tolvanen MetaCase Consulting AUTOMATED PRODUCTION OF FAMILY MEMBERS: LESSONS LEARNED.
Software Engineering Principles. SE Principles Principles are statements describing desirable properties of the product and process.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Data Mining BY JEMINI ISLAM. Data Mining Outline: What is data mining? Why use data mining? How does data mining work The process of data mining Tools.
The Software Development Process
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Design Reuse Earlier we have covered the re-usable Architectural Styles as design patterns for High-Level Design. At mid-level and low-level, design patterns.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
February 8, 2006copyright Thomas Pole , all rights reserved 1 Lecture 3: Reusable Software Packaging: Source Code and Text Chapter 2: Dealing.
Visualizing the Cosmos: Smoke or Mirrors? Designing Visualization Imagery David Bock National Center for Supercomputing Applications University of Illinois,
Learning Objectives Understand the concepts of Information systems.
Overview of Socio-cognitive Engineering General requirements Theory of Use Design Concept Contextual Studies Task model Design space System specification.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Introduction  Program: Set of sequence instruction that tell the computer what to do.  Software: A collection of programs, data, and information. 
CS223: Software Engineering Lecture 19: Unit Testing.
PROGRAMMING FUNDAMENTALS INTRODUCTION TO PROGRAMMING. Computer Programming Concepts. Flowchart. Structured Programming Design. Implementation Documentation.
Copyright © 2016 Pearson Education, Inc. Modern Database Management 12 th Edition Jeff Hoffer, Ramesh Venkataraman, Heikki Topi CHAPTER 11: BIG DATA AND.
How Computers Solve Problems Computers also use Algorithms to solve problems, and change data into information Computers can only perform one simple step.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Multi-cellular paradigm The molecular level can support self- replication (and self- repair). But we also need cells that can be designed to fit the specific.
 Problem Analysis  Coding  Debugging  Testing.
Genetic Algorithms. Solution Search in Problem Space.
What we mean by Big Data and Advanced Analytics
Parallel Patterns.
Spark Presentation.
Component Based Software Engineering
Ch 15 –part 3 -design evaluation
CIS 488/588 Bruce R. Maxim UM-Dearborn
Spark and Scala.
Top-Down Design & JSP Skill Area Part D
Martin Rinard, Jiasi Shen, Varun Mangalick
Presentation transcript:

Prescriptive Analytics Part I Nick Gonzalez, 2/10/14

-Isaac Asimov “It is change, continuing change, inevitable change, that is the dominant factor in society today. No sensible decision can be made any longer without taking into account not only the world as it is, but the world as it will be.”

Topics Covered Reference automated prescriptive analytics system Automated algorithm selection Distributed algorithm development

Covered in future presentations Ontology creation and extraction Representing solutions using ontologies Business optimization everything else…

Today’s Data Landscape

Tomorrow’s Data Landscape

Data is outpacing us Humans can not keep up Computers can but…

Prescriptive Analytics Scalable Automated understanding Automated predictive analytics Actionable Closed loop

Example. Video Games game metrics learning process predictive models deploy gameserver rules simulations writ e start understandin g build / update models modif y copy to production generat e user space analytics space

Problems Scale Speed Adaptability

Automated Learning

- Isaac Asimov “I do not fear computers. I fear the lack of them.”

Goals Remove the human element from analysis phases Generate accurate, actionable, predictive models Combine predictive models and simulation to solve problems

Guiding Principle Big data with simple algorithms will out perform sampled data with complex algorithms.

How is this possible? Focus on a single problem. Limit scope Goal must be Measurable Actionable

Process Data Data Engineering & Understanding Modeling Prep Simulation Actionable Deployment

1. Automated Understanding Find the data representation that is most ideal for the problem you are trying to solve.

Automated Understanding Raw Data Clean Data Initial Transform Stats meta

Automated Understanding Clean Data Stats meta Representation A Representation B Representation C A.1 … A.2 …

2. Automated Algorithm Selection Find the algorithm that performs best against the problem you are trying to solve, while meeting all criteria.

Automated Algorithm Selection Choose algorithms best suited for this type of problem. Consider the data, types, sparsity, size, and desired outcome Try multiple algorithms Calculate the Root Mean Squared Error or some other appropriate measure. Consider problem domain. Use cross validation. Do not just compare the average RMSE Choose the algorithm(s) that perform the best

Distributed Processing Learning to Scale

Approaching the Problem Two ways to approach a problem Bottom up Top down

Bottom Up Approach Hardware Assembly Language C, Pascal C++, Java Design Patterns, Algorithms Programmer

Top Down Problem Solver Problem Representation Distributed System Abstractions Functional Languages Hardware

Building Distributed Algorithms Identify the simplest concepts that describe data processing Collections Collection processing Problem Solver Problem Representation Distributed System Abstractions Functional Languages Hardware

Single “Box” Evolution of thought Data Data AlgorithmAlgorithm DataData Collection Collection Processing No “Box”

Coming together map mapcatreduce filtersortgroup HadoopSinglePCMPI… k-means densityrandomforestgradientboost ….

Distributed Processing Interface Simple concept Focus on building algorithms Many ways to implement this concept Works with both shared memory systems and distributed memory systems

Implementation Functional language - Clojure Reusable functions as callbacks Hadoop drivers written on top of Cascalog Data location and type are abstracted as “collection”

- Isaac Asimov “Part of the inhumanity of the computer is that once it is completely programmed and working smoothly, it is completely honest.”