How To Make Visual Analytics With Big Data Visual

Similar documents
Methodology for Emulating Self Organizing Maps for Visualization of Large Datasets

FOUNDATIONAL SYSTEMS BRIDGING DATA MINING AND VISUAL ANALYTICS

RevoScaleR Speed and Scalability

Information Visualization WS 2013/14 11 Visual Analytics

The Scientific Data Mining Process

Modelling, Extraction and Description of Intrinsic Cues of High Resolution Satellite Images: Independent Component Analysis based approaches

Visualization of large data sets using MDS combined with LVQ.

Strategic Online Advertising: Modeling Internet User Behavior with

Fast Matching of Binary Features

In this presentation, you will be introduced to data mining and the relationship with meaningful use.

Facebook Friend Suggestion Eytan Daniyalzade and Tim Lipus

Voronoi Treemaps in D3

Parallel Data Selection Based on Neurodynamic Optimization in the Era of Big Data

STATISTICA. Clustering Techniques. Case Study: Defining Clusters of Shopping Center Patrons. and

Machine Learning using MapReduce

High Productivity Data Processing Analytics Methods with Applications

DATA MINING CLUSTER ANALYSIS: BASIC CONCEPTS

Big Data: Rethinking Text Visualization

Applying Data Analysis to Big Data Benchmarks. Jazmine Olinger

Comparison of Non-linear Dimensionality Reduction Techniques for Classification with Gene Expression Microarray Data

Analytics on Big Data

EM Clustering Approach for Multi-Dimensional Analysis of Big Data Set

CHAPTER 1 INTRODUCTION

Social Media Mining. Data Mining Essentials

Text Analytics. A business guide

Control 2004, University of Bath, UK, September 2004

Compact Representations and Approximations for Compuation in Games

Extend Table Lens for High-Dimensional Data Visualization and Classification Mining

CS231M Project Report - Automated Real-Time Face Tracking and Blending

Load balancing in a heterogeneous computer system by self-organizing Kohonen network

Knowledge Discovery from patents using KMX Text Analytics

Virtual Landmarks for the Internet

Data Mining Cluster Analysis: Basic Concepts and Algorithms. Lecture Notes for Chapter 8. Introduction to Data Mining

Storing Measurement Data

Analecta Vol. 8, No. 2 ISSN

Integer Computation of Image Orthorectification for High Speed Throughput

Data, Measurements, Features

Face detection is a process of localizing and extracting the face region from the

Distance Metric Learning in Data Mining (Part I) Fei Wang and Jimeng Sun IBM TJ Watson Research Center

An Overview of Knowledge Discovery Database and Data mining Techniques

BIG DATA VISUALIZATION. Team Impossible Peter Vilim, Sruthi Mayuram Krithivasan, Matt Burrough, and Ismini Lourentzou

Clustering Big Data. Anil K. Jain. (with Radha Chitta and Rong Jin) Department of Computer Science Michigan State University November 29, 2012

Clustering & Visualization

The Value of Visualization 2

The Role of Size Normalization on the Recognition Rate of Handwritten Numerals

Distributed Dynamic Load Balancing for Iterative-Stencil Applications

Cluster Analysis for Evaluating Trading Strategies 1

Map-Reduce for Machine Learning on Multicore

Image Compression through DCT and Huffman Coding Technique

Visualization methods for patent data

Character Image Patterns as Big Data

Object Recognition and Template Matching

Chapter 5 Business Intelligence: Data Warehousing, Data Acquisition, Data Mining, Business Analytics, and Visualization

TOWARDS SIMPLE, EASY TO UNDERSTAND, AN INTERACTIVE DECISION TREE ALGORITHM

Large-Scale Data Sets Clustering Based on MapReduce and Hadoop

Face Model Fitting on Low Resolution Images

ECE 0142 Computer Organization. Lecture 3 Floating Point Representations

MINING THE DATA FROM DISTRIBUTED DATABASE USING AN IMPROVED MINING ALGORITHM

Advanced Big Data Analytics with R and Hadoop

How to Choose the Right Data Storage Format for Your Measurement System

Knowledge Discovery and Data Mining. Structured vs. Non-Structured Data

Course DSS. Business Intelligence: Data Warehousing, Data Acquisition, Data Mining, Business Analytics, and Visualization

DHL Data Mining Project. Customer Segmentation with Clustering

Statistics for BIG data

Applying Data Science to Sales Pipelines for Fun and Profit

Malay A. Dalal Madhav Erraguntla Perakath Benjamin. Knowledge Based Systems, Inc. (KBSI) College Station, TX 77840, U.S.A.

K-Means Clustering Tutorial

Prescriptive Analytics. A business guide

Visual Data Mining with Pixel-oriented Visualization Techniques

DATA MINING TECHNOLOGY. Keywords: data mining, data warehouse, knowledge discovery, OLAP, OLAM.

Big Data Text Mining and Visualization. Anton Heijs

LVQ Plug-In Algorithm for SQL Server

APPM4720/5720: Fast algorithms for big data. Gunnar Martinsson The University of Colorado at Boulder

Clustering Very Large Data Sets with Principal Direction Divisive Partitioning

Introduction. Chapter 1

Decision Support System Methodology Using a Visual Approach for Cluster Analysis Problems

A Comparison of General Approaches to Multiprocessor Scheduling

Scalable Developments for Big Data Analytics in Remote Sensing

Performance Metrics for Graph Mining Tasks

Forschungskolleg Data Analytics Methods and Techniques

Data Mining Clustering (2) Sheets are based on the those provided by Tan, Steinbach, and Kumar. Introduction to Data Mining

Non-negative Matrix Factorization (NMF) in Semi-supervised Learning Reducing Dimension and Maintaining Meaning

Support Vector Machines with Clustering for Training with Very Large Datasets

. Learn the number of classes and the structure of each class using similarity between unlabeled training patterns

In-Database Analytics

How To Fix Out Of Focus And Blur Images With A Dynamic Template Matching Algorithm

Big-data Analytics: Challenges and Opportunities

What is Visualization? Information Visualization An Overview. Information Visualization. Definitions

Use of Data Mining Techniques to Improve the Effectiveness of Sales and Marketing

CNFSAT: Predictive Models, Dimensional Reduction, and Phase Transition

Unsupervised Data Mining (Clustering)

Database Optimizing Services

BEHAVIOR BASED CREDIT CARD FRAUD DETECTION USING SUPPORT VECTOR MACHINES

Fast Analytics on Big Data with H20

Standardization and Its Effects on K-Means Clustering Algorithm

Chapter 5. Warehousing, Data Acquisition, Data. Visualization

Clustering Data Streams

ASSESSMENT OF VISUALIZATION SOFTWARE FOR SUPPORT OF CONSTRUCTION SITE INSPECTION TASKS USING DATA COLLECTED FROM REALITY CAPTURE TECHNOLOGIES

Transcription:

Big-Data Visualization Customizing Computational Methods for Visual Analytics with Big Data Jaegul Choo and Haesun Park Georgia Tech O wing to the complexities and obscurities in large-scale datasets ( big data ), interest has increased in visual analytics1,2 (VA) because of humans ability to quickly gain insight through visual analysis and decision processes. Unfortunately, most state-of-the-art VA tools or techniques don t properly accommodate big data. Computational methods The inherent complexities of can improve the scalability VA with big data have two main of visual analytics (VA) causes. The first is related to huby providing compact, man perception. When the number of visualized objects (data meaningful information about items or features) becomes large, the input data. However, the humans often have difficulty required computation time extracting meaningful informahinders real-time interactive tion. The second cause is the visualization of big data. By limited screen space, which often addressing discrepancies leads to significant visual clutter between these methods and when a visualization displays too VA, researchers have proposed many data items or features. ways to customize them for VA. To improve visual scalability, computational methods can provide compact, meaningful information about the raw data. Such methods include dimension reduction, clustering, and methods that exploit machine learning and data mining. These methods natural fit and appeal for VA for big data have led to their integration into VA. However, by themselves they don t effectively support realtime interactive VA for big data. Here, we suggest ways to customize them to leverage aspects specific to VA environments. 22 July/August 213 Hurdles to Full Integration Achieving appropriate integration faces two main hurdles. First, computational modules and their output can be difficult to understand. Without deep knowledge about the computational methods and data, analysts might find the methods output more difficult to understand than the original raw data. Many computational algorithms are complicated and often, for the sake of flexibility, involve parameters that must be carefully determined. If the analysts don t understand the parameters functions, they might improperly set the parameters values. Thus, many VA systems choose a specific computational method, treat it as a black box, and focus on analysis of its output. However, if the analysts don t properly understand the algorithm and its parameters, a computational module still might not perform well enough to analyze data properly. Second, computational methods require significant time. Most methods involve heavy computation. As they become more advanced and capable, they tend to require more intensive computation. Such computation usually has a squared or cubic order of complexity in relation to the number of data items or features. So, for big data, the significant computation time required hinders real-time visualization and subsequent interaction with the computational modules. The most important way over these hurdles is to make computational methods fast enough to ensure real-time visualization and interaction in VA. If computational methods become responsive Published by the IEEE Computer Society 272-1716/13/$31. 213 IEEE

in real time, difficulties in understanding them can be partly alleviated by letting users quickly test them in various ways interactively. An initial solution for making them fast could be to parallelize algorithms across multiple cores or CPUs. However, this requires significant effort and time and creates significant communication overhead. Furthermore, significant portions of some algorithms can t be parallelized. So, although this technique might achieve a minor amount of speedup, realtime VA demands much more. is, even though the results are represented in finegrained numbers, they re quantized into a much coarser grain owing to the limited resolution. For example, suppose a force-directed graph layout method visualizes data in a scatterplot. The visualization converts the resulting 2D coordinates to the data points positions on a screen with a limited number of pixels. For instance, if the screen resolution is 1,24 768, each 2D coordinate is quantized and mapped to 1,24 and Exploiting Discrepancies Many computational algorithms are complicated and often, for the sake of flexibility, involve parameters that must be carefully determined. To provide the necessary speed, we exploit several crucial discrepancies between computational methods and VA. To discuss these discrepancies, we focus on the two aspects of VA we mentioned earlier: human perception and screen space. Many computational methods don t consider these aspects because those methods aren t entirely intended for VA. So, they tend to compute excessively precise results compared to what humans can perceive in VA. If we could remove excessive computation, computational methods would become much faster and allow for real-time interaction while providing the human eye with comparable visual results. Here, we examine this excessive computation in more detail from two angles: precision and convergence. 768 different values, respectively. In most cases, such a granularity is coarser than what the computational algorithm used for example, single or double precision. Therefore, even if the graph layout computes a 2D coordinate of (1.34643678, 3.2862473), this might be converted to (1.35, 3.3) on the screen. In this sense, computational algorithms performed at the computers precision level are excessively accurate for visualization. Precision Convergence Most computational methods work with the precision of modern CPUs, which is typically double precision. This precision gives at least 1 significant decimal digits, and usually gives 15 to 17 digits. Computational methods have become so complicated that they often have no closed-form solution. Instead, many of them iteratively refine the solution until it converges to a final solution. The notion of convergence becomes critical in determining when to terminate the iterations, and algorithms have their own stopping criteria based on many well-studied theories and principles. Perception-based precision. Such precision, however, might be superfluous for humans perception capability. For example, most people know that is approximately 3.14. Although some people might know a more accurate value for example, 3.141592 many wouldn t usually care much about the exact value. Or, suppose that a document-topic-modeling algorithm gives a certain document s topical weight vector as (17.3952%, 78.1541%, 4.457%) for three topics: sports, science, and politics. People will likely perceive a topic s weight at a precision of tenths at most (17.4%, 78.2%, 4.5%). However, having more accurate numbers won t change their perception significantly. Screen-space-wise precision. The precision in VA is also bound by the limited resolution of the screen space displaying the computational results. That Perception-based convergence. For many computational methods, one important characteristic of convergence is that the major refinement of the solution typically occurs in early iterations, whereas only minor changes occur in later iterations. Considering that humans can quickly understand the overall structure or trend in data, they might be able to perceive enough information from an intermediate result obtained from an earlier iteration. For example, many clustering algorithms iteratively refine the cluster membership or coefficient for each data item. More specifically, given initial cluster memberships of data items, k-means clustering,3 a widely used algorithm, alternates two steps iteratively: IEEE Computer Graphics and Applications 23

Big-Data Visualization No. of per-iteration changes/accuracy (%) 1 9 8 7 6 5 4 3 2 1 Accuracy against final solution Per-iteration changes 5 1 15 2 25 3 35 4 No. of iterations Figure 1. The relative changes of cluster memberships between iterations, and the cluster membership accuracy with respect to the final converged solution. This example used k-means clustering to cluster 5, Reuter newswire articles into 2 clusters. Most of the time for running the algorithm could be curtailed because it doesn t contribute much to a human s perception in visual analytics (VA). 1. Compute each cluster s centroid by averaging the feature vectors of that cluster s data items. 2. Update each data item s cluster assignment on the basis of its closest cluster centroid. The iteration terminates when no membership changes occur. For instance, we used k-means clustering to cluster 5, Reuter newswire articles into 2 clusters. Figure 1 shows how many cluster membership changes occurred throughout the 4 iterations. Major changes occurred in only the first few iterations. For instance, fewer than 5 percent of the data items changed their memberships after the fifth iteration, as the blue line shows. After the seventh iteration, more than 9 percent of the data items had been correctly clustered, as the red line shows. In addition, each iteration of the k-means algorithm requires an equal amount of time. Therefore, most of the time for running the algorithm could be curtailed because it doesn t contribute much to a human s perception in VA. Screen-space-wise convergence. The coarse-grained quantization due to the screen space s limited resolution can also affect convergence. To better describe the idea, we show an example using multidimensional scaling (MDS), a common computational method. Basically, MDS tries to preserve all the pairwise distances or relationships of data items in the lower-dimensional space, which is typically a 2D or 3D screen space. In particular, our example uses nonmetric MDS, which tries to preserve the distance values orderings instead of their actual values. Nonmetric MDS is often better suited to VA than the original MDS because humans care more about data items ordering. However, it requires much more intensive computation than metric MDS. We used nonmetric MDS on 2, data items consisting of handwritten numbers. Of the 169 iterations, major changes occurred in only the first few (see Figure 2a). After the fourth iteration, a data item s average pixel-wise coordinate change was fewer than 1 pixels from the item s coordinates in the previous iteration, as the blue line shows. After the 3th iteration, each data item was on average fewer than 1 pixels away from the final converged coordinate, as the red line shows. Scatterplots generated by the fifth iteration and the converged result (see Figures 2b and 2c, respectively) confirm that the changes between the two are indeed minor. Customizing Computational Methods Here, we suggest how to customize computational methods by tackling the precision and convergence discrepancies. Low-Precision Computation One of the easiest ways to lower precision and thus accelerate computation is to change double precision to single precision. Figure 3 shows the results of using principal component analysis (PCA) 4 to generate a scatterplot of facial-image data with single and double precision. Single precision took much less time, but the two cases generated almost identical scatterplots. After analyzing the exact pixel-wise coordinates at 1,24 768 resolution, we found only two pixel-wise displacements between the two cases. You could more carefully determine the computational precision on the basis of human perception and the screen resolution. For instance, you could conduct a user study on how significantly a human s perception of the results degrades as the precision decreases. Conversely, you could formulate the minimum precision required for a given resolution of the screen space. So far, little research has focused on adopting a lower precision than the standard double precision to save computation time. Researchers have studied computation at an arbitrary precision, but their primary purpose was to support much higher precision than modern CPUs can handle. 5 However, considerably decreasing the precision might not always achieve computational efficiency owing to hardware issues. Specifically, most CPUs have a floating-point unit (FPU) a dedicated 24 July/August 213

coprocessor that specializes in double-precision floating-point operations. Therefore, computation with an arbitrarily low precision can t easily benefit from FPUs. Nonetheless, in embedded systems in mobile devices, which typically use low-cost microprocessors without an FPU, lowering the precision can significantly boost interactive visualization applications performance. In addition, such low-precision computation can turn most computation into fixed-point arithmetic, which essentially represents a number as an integer scaled by a specific binary or decimal factor. Although fixed-point arithmetic could break down the numerical stability, embedded systems have actively used it for efficient computation. Extending this idea to VA could accelerate many computational methods while maintaining their visual results quality when numerical stability isn t a critical concern. Iteration-Level Interactive Visualization As we discussed before, an algorithm can reach a viable solution for VA much earlier than its converged iteration. However, how to determine such convergence criteria still isn t clear. Instead, we propose iteration-level interactive visualization, which aims at visualizing intermediate results at various iterations and letting users interact with those results in real time. As Figure 4 shows, this approach exploits a useful characteristic of many iterative algorithms the intermediate result at each iteration shares the same form as the final output. For instance, many clustering algorithms, including k-means clustering (see Figure 1), give the cluster memberships or coefficients of the entire set of data items at each iteration and become more refined as iterations proceed. In other words, you don t just obtain the clustering result for the first item at the first iteration, the result for the second item at the next iteration, and so on. Therefore, visualizing the intermediate results can provide information about the entire data, although certain individual data items might not be as precise in earlier iterations. Because this approach dynamically visualizes the intermediate results, users can quickly get an overview of them. Furthermore, interaction with computational methods can become much more responsive because interactions can be reflected in later iterations. So, if users make a specific change, such as a parameter change, to a computational method, they won t need to wait through a complete run of iterations to see the change s results. Iteration-level visualization isn t a completely new idea. For instance, force-directed graphs implemented Average no. of pixel-wise changes 7 6 5 4 3 2 1 2 4 6 8 1 12 14 16 18.8.6.4.2.2.4.6.6.4.2.2.4.6.8.8.6.4.2.2.4 Pixel-wise changes from final solution Per-iteration pixel-wise changes.6.6.4.2.2.4.6.8 (c) No. of iterations Figure 2. A scatterplot using nonmetric multidimensional scaling. The averaged sum of the horizontal and vertical pixel position differences for each data item between iterations, and the same measures with respect to the final converged solution. The scatterplot generated by the fifth iteration. (c) The scatterplot generated by the converged result (the 169th iteration). In this example, we used 2, data items consisting of handwritten numbers and color-coded the number labels. The changes between Figures 2b and 2c are minor. 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 IEEE Computer Graphics and Applications 25

Big-Data Visualization Time (sec.) (c) 5 45 4 35 3 25 2 15 1 5.3.2.1.1.2.3.2.1.1.2 1, 2, 3, 4, 5,.2.15.1.2.15.1 Double precision Single precision 6, No. of data items.5.5.1.15.2.5.5.1.15.2 7, 8, 9, 1,.25.3.25.3 Figure 3. Using principal component analysis to generate scatterplots with single and double precision. The computation time depending on the data size. The scatterplot based on singleprecision computation. (c) The scatterplot based on double-precision computation. This example used facial-image data. For Figures 3b and 3c, we visualized 1,42 data items and color-coded them with their person ID. We represented each data item as an 11,264-dimensional vector. We found only two pixel-wise displacements between the two cases. with the D3 (Data-Driven Documents; http:// d3js.org) or Prefuse (http://prefuse.org) toolkits visualize data immediately after the first iteration. Nonetheless, we claim that researchers have overlooked the fact that many computational methods are iterative. This neglect is partly because customizing computational methods sometimes requires knowledge of how they work. For example, people unfamiliar with eigendecomposition, PCA s main algorithm, might consider PCA to be a black-box algorithm. Actually, eigendecomposition is an iterative algorithm consisting of, say, the power iteration, Lanczos iteration, and so on. So, you can redesign PCA for iteration-level visualization. Many other iterative algorithms could also be customized for real-time VA. Iterative Refinement of Computational Results Some user interactions might require more precise information than what we ve been describing. One obvious example is zooming in or out. Suppose the precision and convergence in the algorithm that generated a scatterplot have been adjusted on the basis of the screen s resolution. If the user zooms in on a specific area, the 2D coordinate information of data items in that area must be represented with a finer granularity. Unlike the traditional approaches that give fully precise results, our approaches require further computation to obtain more precise results to support zoom-in and zoom-out on demand. To improve this situation, we could iteratively refine the computational results to a higher precision. Figure 5 shows such an example. During refinement, each step employed the previous step s results, which made each step efficient. To determine a specific data item s position at a higher resolution, the refinement needed to examine only the nearby areas from the previous position. Research in other domains points to possible ways to realize this approach. Example techniques include adaptive mesh refinement 6 in numerical analysis and wavelet transform 7 in image coding or compression. Applying these ideas to integrate computational methods in VA would open up an interesting new research area. Data Scale Confinement As Figure 5a clearly shows, the screen space s resolution limits the number of data items that can be visualized. Suppose there are many more data items than available pixels. Processing the entire dataset doesn t make much sense because there s no way to visualize all the items. 26 July/August 213

Computational module Subroutine 1 Subroutine k Output Visualization/summarization Iterate Interaction Computational module Subroutine 1 Subroutine k Output Visualization/summarization Iterate Interaction Figure 4. Two approaches to applying computational methods to VA. In the standard approach, visualization and interaction occur only after the computational module finishes its iterations. In iterationlevel interactive visualization, intermediate results are visualized dynamically; users can interact with the computational module during iterations. Data scale confinement is particularly useful for dealing with computational complexity. In principle, as the number of data items increases, the algorithm complexity can t be more efficient than O(n), which assumes that every data item is processed at least once. Even such ideal complexity can cause a computational bottleneck in real-time VA. Having a fixed number of available pixels can turn algorithmic complexity into O(1), in that you can visualize only a specific number of data items at most. One of the easiest ways to select this data subset is random sampling, although you could adopt other more carefully designed sampling methods that better represent the entire dataset. Some user interaction such as zoom-in or zoomout might require the computational results for data items that haven t yet been processed. In this case, you can handle the situation through a different kind of efficient computation. For example, suppose you have a large-scale dataset for which only a certain subset of the data has been clustered. To obtain the remaining data items cluster labels, you can apply a simple classification method based on the already computed clusters. Or, in the case of dimension reduction, suppose PCA has been computed on a data subset. You can project the remaining data onto the same space via a linear transformation matrix given by PCA. This is much more efficient than computing PCA on the entire dataset. Although these approximated approaches can t give the exact same results as those generated by using the entire data from the beginning, they re a viable way to ensure real-time VA for big data. To achieve tight integration between computational methods and VA, researchers from each side must care more about the other side. In particular, researchers who design computational methods must realize that making an algorithm more interactive and interpretable in practical data analysis scenarios is just as important as addressing practical concerns such as the data s maximum applicable size, computation time, and memory requirements. On the other side, researchers who apply computational methods to VA need to understand the algorithm details as much as possible and tailor them to make them blend well in real-time VA. Acknowledgments US National Science Foundation (NSF) grant CCF- 88863 partly supported this research. Any opinions, findings, and conclusions or recommendations in this article are the authors and don t necessarily reflect the NSF s views. References 1. D. Keim, Information Visualization and Visual Data Mining, IEEE Trans. Visualization and Computer Graphics, vol. 8, no. 1, 22, pp. 1 8. 2. J. Thomas and K. Cook, Illuminating the Path: The IEEE Computer Graphics and Applications 27

Big-Data Visualization 12 16 Research and Development Agenda for Visual Analytics, IEEE CS, 25. 3. C. Bishop, Pattern Recognition and Machine Learning, Springer, 26. 4. I.T. Jolliffe, Principal Component Analysis, Springer, 1986. 5. D. Knuth, The Art of Computer Programming, Addison-Wesley, 26. 6. M. Berger and P. Colella, Local Adaptive Mesh Refinement for Shock Hydrodynamics, J. Computational Physics, vol. 82, no. 1, 1989, pp. 64 84. 7. C.K. Chui, An Introduction to Wavelets, Academic Press, 1992. 36 Jaegul Choo is a research scientist and PhD candidate in computational science and engineering at Georgia Tech. His research interests include visualization, data mining, and machine learning, focusing on dimension reduction and clustering methods. Choo received an MS in electrical engineering from Georgia Tech. Contact him at jaegul.choo@ cc.gatech.edu. 48 6 Haesun Park is a professor and an associate chair in Georgia Tech s School of Computational Science and Engineering. She s also the director of the Foundations of Data and Visual Analytics center and executive director of the Center for Data Analytics, both at Georgia Tech. Her research interests include numerical algorithms, data analysis, visual analytics, text mining, and parallel computing. Park received a PhD in computer science from Cornell University. She s a Society for Industrial and Applied Mathematics Fellow. Contact her at hpark@cc.gatech.edu. Selected CS articles and columns are also available for free at http://computingnow.computer.org. 8 (c) Figure 5. Hierarchical precision refinement of computational results for a scatterplot at 16 12, 48 36, and (c) 8 6 resolution. This figure uses the same data and method as in Figure 3. To determine a specific data item s position at a higher resolution, the refinement needed to examine only the nearby areas from the previous position. 28 July/August 213