Big Data V Model

The essence of “Big Data’ is often described with the so-called V model referring to important attributes of Big Data resources. In the first model, attention was paid to three basic attributes (3V): Volume, Velocity, and Variety. Today, Big Data is usually described in terms of the 7V model, including: Volume, Velocity, Variety, Veracity, Visualization, Variability, and Value (Figure 3-L Erl, Khattak, 6C Buhler, 2015; Manyika et ah, 2011).

V model

Figure 3.1 7 V model.

Volume

The amount of data collected today is counted in tera and petabytes. Such data mainly come from the Internet, streaming portals, various sensors, and mobile devices. For example, it is estimated that 300 hours of video are uploaded to YouTube every minute. An estimated 1.1 trillion photos were taken in 2016, and the number is projected to rise by 9% in 2017- As the same photo usually has multiple instantiations stored across different devices, photo or document sharing services as well as social media services, the total number of photos stored is also expected to grow from 3-9 trillion in 2016 to 4.7 trillion in 2017 In 2016, the estimated global mobile traffic amounted was 6.2 exabytes per month. That is equal to 6.2 billion gigabytes.

Most organizations do not have the infrastructure to store such enormous volumes of data. Thanks to distributed system technology that allows data collection and storage in different places, organizations have the chance to utilize large data sets.

Velocity

Velocity mainly refers to the speed at which data are generated, produced, created, and refreshed. Interestingly, Google alone processes on average more than “40,000 search queries every second,” which roughly translates into more than 3-5 billion searches per day. Velocity requires different processing algorithms generated in real mode. Currently, technologies are emerging that allow data analysis while generating them, without entering them into a traditional database.

Variety

Big Data are identified not only with huge amounts of incoming data but also with their diverse nature. Variety means that the data can be textual, numerical, graphic

(images), multimedia (movies), and sound; and that they can come from a variety of sources (e.g., social networking sites), sensors, and devices. Much of the data are weak or unstructured data, i.e., data that cannot be saved and stored in traditional relational database management systems (RDBMS). NoSQL databases are most often used to record such data.

Veracity

The veracity feature refers to the accuracy and integrity of data. The data to be subject of data analysis must contain true information as well as uniform and consistent descriptions of the value of individual data fields.

Visualization

Results obtained after Big Data processing should be presented in a readily accessible and understandable form. Sometimes dashboards are treated as an easy to read, often single page, real-time user interface showing a graphical presentation of the current status and historical trends of organization’s key performance indicators to enable instantaneous and informed decisions to be made at a glance. They extend static reporting with analytical elements. They aggregate and sensitize data using such methodologies as: BSC, Six Sigma, and Economic Value Added. Therefore, they enable managers to better assess operational and strategic information and better understand business.

Variability

Variability in Big Data context refers to a number of different things (Firican, 2017)- One is the number of inconsistencies in the data. These need to be found by anomaly and outlier detection methods in order for any meaningful analytics to take place. Big Data are also variable because of the multitude of data dimensions resulting from multiple disparate data types and sources. Variability can also refer to the inconsistent speed at which Big Data are loaded into different databases.

Value

This feature draws attention to the fact that Big Data resources have great business potential and provide opportunities to generate profits, thanks to information extracted from data. It is believed that Big Data analyzed together with traditional data enable organizations not only to better understand their business but to change it also and have new sources of revenues, stronger competitive position, and greater innovation.

Techniques for Big Data Analyzing

The complex nature of Big Data resources requires the use of advanced techniques for processing and analyzing them. These techniques are data mining, text mining, web mining, graph mining, network analysis, machine learning, deep learning, neural networks, genetic algorithms (GAs), spatial analysis, and search-based application (Table 3-1). These techniques impact on the functionality and possibilities of Big Data applications and consequently on the quality of decision-making, personalization of products and services, as well as the enhancement of business processes and customer relationship management (Chen, Chiang, &C Storey, 2012; Olszak, 2016).

Table 3.1 Techniques for Big Data Analyzing

Technique for BD Analyzing

Description

Data mining

An interactive process aimed at the analysis of large databases, with the purpose of extracting information and knowledge that may prove accurate and potentially useful for knowledge workers engaged in decision-making and problem-solving. The main purpose of the data mining analysis is interpretation and prediction. Different mathematical models and methods can be used in data mining. Most important include regression, time series, classification, association rules, and clustering.

Text mining

Text mining offers the discovery of dominant patterns of word use and patterns of relationships between words or documents that come from various sources: mail communication, Internet documents as well as data coming from social networks. Text mining is used, inter alia, in: identifying relationships, detecting subjectivity and generating abstracts. Text analytics techniques have been actively pursued in several emerging areas, including information extraction, topic models, question answering, event detection, and opinion mining.

Web mining

Web mining is used to process and analyze unstructured web contents based on XML, Internet protocol (HTTP, SMTP), and application programming interface (API). It enables developers to integrate diverse content from different web-enabled systems. Web mining may include: (1) content mining that involves analyzing documents published on the Internet and websites; (2) user mining that relates to the analysis of user behaviors, consisting in the analysis of network traffic and ways users behave; and (3) structure mining where the subject of analyses is interrelationships between various objects in the network (e.g., websites).

Table 3.1 Continued

Technique for BD Analyzing

Description

Graph mining

Graph mining is a set of methods for facilitating the detection of interesting associations within the analyzed graph structure. Graph mining techniques have been categorized into three main groups: graph clustering, graph classification, and subgraph mining. Graph mining techniques may be based on different algorithms. They include mainly: D-Walks, multilevel kernel к-means, genetic algorithm (GA), CFFTree, coring method, bipartite graph co-clustering, clique matrix, SSHGCA, K-NN, HSG, and distributed algorithm.

Network

analysis

One of the most known network analysis is social media mining (SMM). SMM is the process of representing, analyzing, and extracting actionable patterns from social media data. SMM introduces basic concepts and principal algorithms suitable for investigating massive social media data. Network analysis can provide consumers' behavior and preference information for the business as well as express the change of the public mood and even predict the trend of stock market. It can also identify target audience groups through brand influence based on customer big data on the social media platform and support location-based personalized messaging services.

Machine

learning

Machine learning is the process of using computers to imitate a person to acquire skills through learning. Machine learning is trained through extensive data and algorithms that allow machines to own the ability to predict management trends and make decisions in the process of analyzing and optimizing operating management of Big Data. Machine learning can build models from mass data or discover various relationships implied in the observed data according to the specific needs of users.

Deep learning

Deep learning is a nonlinear combination of Multi-layer Representation Learning method. Representation Learning means learning representation (or feature) from data in order to extract useful information from the data when categorizing and predicting. Deep learning begins with raw data and transforms each representation (or feature) layer into higher and more abstract representation, thereby discovering the intricate structure in high-dimensional data.

(Continued)

Table 3.1 Continued

Technique for BD Analyzing

Description

Neural

networks

Neural networks are the most advanced methods of artificial intelligence. They are used especially for pattern recognition and prediction. The most important types of neural networks include: Multilayer Perceptron, Radial Basis Function Network, Support Vector Machine, Generalized Regression Neural Network, and Self-Organizing Map.

Genetic

algorithms

GA is applied over the problem domain where the outcome is very unpredictable and the process of outcome contains complex interrelated modules. GA is used to obtain optimized solutions from a number of candidate solutions. GA is inspired by evolutionary theory: weak and unit species are faced with extinction by natural selection and the strong ones have greater opportunity to pass their genes to future generations via reproduction.

Spatial analysis

Spatial data mining is the process of discovering interesting and previously unknown, but potentially useful, patterns from large spatial data sets. The content of spatial data can be the value of point height, road length, polygon area, building volume and imagery pixel, also the string of geographical name and annotation, and further the graphics, images, multimedia, relationships, and autocorrelation. Compared with the general data, spatial data are distinct, e.g., geographic location, temporal change, multidimensional massive volume, complex relationships, and so on.

Search-based

applications

Search-based application is a category of application that enables users to find information from any source and in any format. The user can enter anything he knows about the customer or product and the search engine will try to find those customers or products that resemble the keywords entered by the user.

Data Mining

Data mining activities constitute an interactive process aimed at analyzing large databases, with the purpose of extracting information and knowledge that may prove accurate and potentially useful for knowledge workers involved in decisionmaking and problem-solving (Vercellis, 2009). Data mining activities can be subdivided into two major investigation streams, according to the main purpose of the analysis, that are interpretation and prediction (Poul, Gautman &C Balint, 2003).

The purpose of interpretation is to identify regular patterns in the data and express them through rules and criteria that can be easily understood by experts in the application domain. The purpose of prediction is to anticipate the value that a random variable will assume in the future or estimate the likelihood of the future events. Different mathematical models and methods are used in such advanced data mining. Tlie most important procedures include: regression, time series, classification, association rules, and clustering (Han, Kamber 6C Pei, 2011; Larose, 2005; Vercellis, 2009).

Regression Models

The purpose of regression models is to identify a functional relationship between a target variable and a subset of remaining attributes contained in a data set (Vercellis, 2009). The aim of regression models is twofold. Regression models can serve to highlight and interpret the dependency of the target variable on other variables. They can also be used to predict the future value of the target attributes, based upon the functional relationship identified and the future value of the explanatory attributes (Tan, Steinbach, & Kumar, 2005). Therefore, the development of regression models allows knowledge workers to acquire a deeper understanding of the phenomenon analyzed and evaluate the effects determined on the target variable by different combinations of values assigned to the remaining attributes (Vercellis, 2009). Regression models may refer to: (a) simple linear regression representing the most widely known family of regression models that are based on a class of hypothesis consisting of linear functions; and (b) multiple linear regression illustrating how to derive the regression coefficient in the general case. In other words, multiple linear regression attempts to model the relationship between two or more explanatory variables and a response variable by fitting a linear equation to observed data.

Time Series Model

Tlie time series model refers to the data sets in which the target attribute is time dependent. It is a statistical method of analyzing data from repeated observations on a single unit or individual at regular intervals over a large number of observations. Tlie aim is to find any regular pattern of observations relative to the past, with the purpose of making predictions for future periods (Larose, 2005). There are two main goals of time series analysis: (a) identifying the nature of the phenomenon represented by the sequence of observations and (b) forecasting (predicting future values of the time series variable). Both of these goals require that the pattern of observed time series data is identified and more or less formally described. Time series analysis can be viewed as an example of longitudinal designs. Classic time series analysis methods focus on decomposing series changes and building forecasting models. The most widely employed approach is based on the class of models known as Autoregressive Integrated Moving Average (ARIMA) models. ARIMA models can address several major classes of research questions, including an analysis of basic processes, intervention analysis, and analysis of the pattern of treatment effects over time. Time series analysis has many applications in business, financial, socioeconomic, environmental, and industrial domains. Depending on the specific application, predictions may refer to future sales of products and services, trends in economic and financial indicators, or sequences of measurements relative to ecosystems.

Classification

Classification is to assign a new object to the correct class. The allocation of objects to a given class is determined on the basis of the characteristics of the values that particular attributes of a given object take. The purpose of classification is, therefore, to find a relationship between the classification of objects and their characteristics. Classification requires defining classes, i.e., dividing the set into mutually exclusive groups in such a way that the objects included in one class are close to each other, while the groups are maximally distant. There are two main stages of the classification. The first stage consists of building a certain model based on historical data, used to implement the function whose values are class indexes, and variable attributes of objects. In turn, the second stage is determining the classes for new data. Modeling is mainly about setting classes and boundaries between them. Various techniques and algorithms are used here, among which the most popular are decision trees and the nearest neighbor algorithm.

Decision trees are one of the most popular techniques for setting boundaries between classes. Each branch of a tree is a classification question and tree leaves form an appropriately classified data group. In the process of building a tree, a question is searched for each branch of the tree that delimits the data as much as possible. The process of splitting data is carried out until a segment of data with identical characteristics is achieved or when making further splitting does not bring relevant information. The most commonly used tree building techniques include Classification and Regression Trees (CART) and Chi Squared Automatic Interaction Detection (CHAID). The first technique divides the set into halves. The second one is similar to the first, but thanks to setting the Chi-square test, it allows the division of sets into many subsets.

According to the nearest neighbor algorithm, in order to classify a new object described by several features, it is necessary to analyze of the objects nearest (most similar) to it. It is necessary to specify a measure of similarity for the input variables and then assign a new object to the class to which the most of the examined objects (neighbors) belong. The algorithm is based on the assumption that objects that are similar to the input variables also have similar values of the resulting variable (they belong to the same category).

Association Rules

The main aim of association rules is to select regular patterns and recurrences within a large set of transactions. Rules have the form of an zyimplication (set of conditions) then (set of facts). Probabilistic rules are the modified form of association rules. They take the form of if A then В with probability p. Conditional probability p is called the “accuracy” or “confidence” of the rule. The rule “accuracy” means the probability that В is true provided that A is true. The associative rule is also combined with the concept of “support” (or frequency) and a frequent set. Frequency defines this part of all objects to which the rule applies (i.e., how often a given rule applies). The frequent set is, in turn, a simple pattern that says that variables in this set often occur together, where “often” means that they occur at least as often as “support” defines. Association rules are fairly simple and intuitive and are frequently used to investigate sales transactions in a market basket analysis, navigation paths within websites, as well as fraud detection and purchases with a credit card (Vercellis, 2009).

Clustering

Clustering is a popular technique used for classifying a data set into groups (Jain et al., 1999)- Data points under particular group share similar features. The purpose of clustering is to find homogeneous groups of records called clusters. Cluster analysis seeks to identify natural subgroups in data with closer resemblance between items within a subgroup than between items in different subgroups. It represents a form of unsupervised learning, where the algorithm is not provided with known examples from the number of prespecified classes or other information on the nature of the classes. Instead, the classes and their profiles are derived from data without additional guidance. The grouping into clusters of a set of multidimensional observations represented as data points scattered through an N-dimensional data space is a fundamental procedure which has been used in a wide variety of scientific and engineering applications.

Data clustering can take place using various algorithms (Kanungo et ah, 2002; Senthilnath, Omkar, & Mani, 2011). The most common are hierarchical (i.e., hierarchical grouping) or nonhierarchical (i.e., split-based) algorithms. In the first case, a cluster hierarchy is created in which each cluster consists of more specific subclusters. The top-level cluster contains all elements of the analyzed file (all database records) and the lowest-level clusters are identical elements of the set. The hierarchical clustering algorithm works without user intervention. It only requires an indication of whether the grouping should be done by the top-down or bottom- up method. In the top-down method, the top-level cluster is determined first and then it is divided until elementary clusters are obtained. In the bottom-up method, elementary clusters with homogeneous content are established first and then they are merged at the subsequent levels of the hierarchy.

In contrast, in the case of nonhierarchical algorithms, the cooperation of the user is necessary to specify the target number of clusters or a similarity condition whereby two records should be included in one cluster. The algorithm begins by creating the desired number of clusters at random and then “shuffle” the data on every iteration until the best breakdown is achieved. The goal is to divide the data set into disjoint subsets so that the elements of each subset are as homogeneous as possible.

Shekhar et al. (2005) distinguished, in addition to hierarchical clustering methods, other groups of clustering algorithms. They included: partitional clustering algorithms, density-based clustering algorithms, and grid-based clustering algorithms.

Partitional clustering algorithms start with each pattern as a single cluster and iteratively reallocate data points to each cluster until a stopping criterion is met. These methods tend to find clusters of spherical shape. К-means and K-medoids are commonly used partitional algorithms. The squared error is the most frequently used a criterion function in partitional clustering. The recent algorithms in this category include partitioning around medoids, clustering large applications, clustering large applications based on randomized search, and expectation maximization.

In turn, density-based clustering algorithms try to find clusters based on the density of data points in a region. These algorithms treat clusters as dense regions of objects in the data space. The density-based clustering algorithms include density- based spatial clustering of applications with noise, ordering points to identify clustering structure, and density-based clustering.

Then, grid-based clustering algorithms first quantize the clustering space into a finite number of cells and then perform the required operations on the quantized space. Cells that contain more than a certain number of points are treated as dense. The dense cells are connected to form the clusters. Grid-based clustering algorithms are primarily developed for analyzing large spatial data sets. The grid-based clustering algorithms include the statistical information grid-based method, WaveCluster, BANG-clustering, and clustering-in-quest.

In some applications, the clusters generated may provide a meaningful interpretation of the phenomenon of interest. For example, grouping customers on their purchase behaviors may reveal the existence of a cluster corresponding to a market niche to which it might be appropriate to address specific marketing actions for promotional purpose (Han, Kamber, & Pei, 2011).

Text Mining

Text mining is used to discover the dominant patterns of word usage and patterns of relationships between words or documents that come from various sources: mail communication, Internet documents as well as data coming from social networks (Chen et al., 2012; O’Connor, Bamman, Sc Smith, 2011). In particular, text mining is used for (Blake, 2011) following processes:

■ Relationship identification: Keywords in a specific field are marked in the source texts. Next, phrases characterized by frequent occurrence in the vicinity of given keywords are identified. The pairs of phrases identified this way are candidates for consideration as association compounds.

■ Detecting subjectivity: In this application, the analysis of the text is aimed at detecting characteristic phrases indicating the speculation, guesses or expressing private opinions carried out by the author. Such assessment has a significant impact on determining the reliability of the analyzed source.

■ Generating abstracts: The essence of the problem in this case is the algorithmic execution of a short text summarizing the content of the analyzed source. The analyzed source can be both a single document and their entire collection.

■ Information synthesis: The application is based on the identification of relationships between scientific publications. These relationships are identified based on the content of the entire publication, not just titles, keyword lists, and abstracts. This is to allow for the emergence of previously unknown interactions between the studied phenomena and to indicate new research directions not yet realized by the authors.

Text mining may refer to: (1) data processing: preprocessing of the data to the needed format; (2) concept extraction: extraction of important concepts and terms through initial text analysis; (3) narrative analysis: writing a narrative analysis to identify patterns and co-occurrences of identified concepts; (4) automatic categorization: developing an automated solution; and (5) ontology building: building ontology for future analysis.

Leveraging the power of Big Data and statistical natural language processing (NLP), text analytics techniques have been actively pursued in several emerging areas including information extraction, topic models, question answering (Q/A), event detection, and opinion mining.

Information extraction aims at automatic extraction of specific kinds of structured information from documents. As a building block of information extraction, named entity recognition (NER) is a process that identifies atomic elements in a text and classifies them into predefined categories. NER techniques have been successfully developed for news analysis and biomedical applications (Witten et ah, 2011).

Q/A systems rely on techniques from NLP, informational retrieval, and human- computer interaction. Primarily designed to answer factual questions (who, what, when, and where kinds of questions), Q/A systems involve different techniques for question analysis, source retrieval, answer extraction, and answer presentation (Maybury, 2004).

Event detection focuses on identifying information about events, such as type, time, place, participants, and date of the event. Examples of a business event appearing in a newspaper could be a company establishing a new production facility or releasing a new product. Event detection process consists of three steps: event topic reasoning, event property extracting, and similarity comparison. The event topic reasoning step includes: representing the input text by a feature set pertaining to each event topic (e.g., when, who, where, and what) and classifying the text into an appropriate event topic based on the event categorization patterns. Event property extraction refers to extracting the event properties (e.g., names of participating companies, dates, time, and place of the event) based on event ontology. Event similarity comparison refers to the process of determining whether a new input document discusses a new or a previously known event.

Opinion mining, also known as sentiment analysis, is intended to analyze people’s opinions, sentiments, evaluations, appraisals, attitudes, and emotions toward entities, such as products, services, organizations, individuals, issues, events, topics, and their attributes. It refers to the computational techniques for extraction, classifying, understanding, and assessing the opinions expressed in various online news sources, social media comments, and other user-generated content (Chen, Chiang, &C Storey, 2012; Newman, 2010). It attempts to automatically measure human opinions from a text written in a natural language. Sentiment analysis uses NLP techniques to read and attribute meaning to textual information, such as whether the author felt positive, negative, or neutral. It can provide broad insights into public reactions to a particular event in ways that have not previously been possible. There are two main approaches used in sentiment analysis. The first approach is called the list or corpus approach, where software is used to search for particular words that are considered to have positive or negative meanings. This is the quickest and least labor-intensive approach. The second approach refers to the machine learning approach, which builds on the list approach using machine learning algorithms. This involves a human analyst manually indicating how the program should interpret the use of specific terms or phrases in different contexts using text samples. This requires more human input, but produces more accurate results, for example, by detecting humor or irony.

Finally, an interesting application of text mining in social research can be mentioned which was used to create a contextual sarcasm detector—a model built on Twitter entries (Baumman &C Smith, 2015). Google translator is also a very popular tool and constantly improved, thanks to text mining. Elements of text mining are also an important part of the well-known Google Flu Trends project. It provided estimates of influenza activity for more than 25 countries. By aggregating Google Search queries, it attempted to make accurate predictions about flu activity. This project was first launched in 2008 by Google.org to help predict outbreaks of flu.

Web Mining

The analysis of data obtained from the World Wide Web is called web mining (Fiimkranz, 2010). Web mining is used to process and analyze unstructured web contents, based on XML, Internet protocol (HTTP, SMTP), and application programming interface (API). It enables developers to integrate diverse content from different web-enabled systems. Web mining may comprise (Chang et al., 2001):

■ content mining which concerns the analysis of documents published on the web and websites;

■ user mining which concerns the analysis of user behaviors consisting of analyzing network traffic and ways the users behave; and

■ structure mining in which the subject of analyses are interrelationships between various objects on the web (e.g., websites).

Content mining is the field most closely connected to text mining. In this case, the source of data for analysis is not only files containing typical text but mainly the content of websites (written in HTML) and the content of XML files (Chen &C Chau, 2004).

The goal of user mining is to identify patterns of user behaviors on the web (Kumar & Gosul, 2011). The sources of data are primarily user entry registers stored on servers, history of transactions carried out in online stores and online banking as well as information about downloaded, and saved files. At this point it should be noted that this way of collecting information about users often raises a lot of controversy. It is sometimes treated as a breach of privacy and security of personal data protection. However, it is also believed that among others, this way of obtaining data allows better understanding of customer preferences and the use of increasingly effective methods of personalizing products and services.

The purpose of structure mining is to determine the interrelationships between resources operating in the network. This issue mainly concerns the identification of relationships between individual websites (Chang et al., 2001). This is especially important for building search algorithms (Kumar &C Gosul, 2011).

A major component in web analytics is cloud computing which includes applications, systems software, and hardware delivered as services over the Internet (Chen, Chiang, & Storey, 2012; Newman, 2010; Riad Hassan, 2008).

Graph Mining

Graph mining can be defined as a set of methods facilitating the detection of interesting associations within the analyzed graph structure. A graph is a pair of sets G = (V,E). V is the set of vertices and the number of vertices n = |V| is the order of the graph (Rehman, Khan, & Fong, 2012). The set E contains the edges of the graph. In an undirected graph, each edge is an unordered pair {v, w}. In a directed graph, edges are ordered pairs. The verticals v and w are named the endpoints of the edge. The graphical representation of graph is a usually a set of circles representing the nodes connected with lines representing the edges (Jensen, 2010).

According to Rehman, Khan and Fong (2012), graph mining techniques have been categorized into three main groups: graph clustering, graph classification, and subgraph mining. The main task of graph clustering is grouping of verticals of the graph into clusters taking into consideration the edge structure of the graph in such a way that there should be many edges within each cluster and relatively few between clusters. The graph clusters are formed on the basis of some similarities in the underlying structured data graph. In turn, graph classification is based on supervised/semi-supervised learning technique in which the classes of the data are defined in prior. A subgraph is a graph whose verticals and edges are subset of another graph. The subgraph mining problem is to produce the set of subgraphs occurring in at least some given threshold of the given n input sample graphs (Ketkar, Holder, & Cook, 2009).

It is emphasized that graph mining techniques may be based on different algorithms (Rehman, Khan & Fong, 2012). They include mainly: D-walks (Callut et al., 2008), multilevel kernel к-means (Kashima & Inokuchi, 2002), GA (Dias 8c Ochi, 2003), CFFTree (Zhao & Yu, 2007), coring method (Le, Kulikowski, 8c Muchnik, 2008), bipartite graph co-clustering (Chen & Fonseca, 2004), clique matrix (Barber, 2008), SSHGCA (Kraus, Palm &C Kestler, 2007), K-NN (Schenker et ah, 2003), HSG (Ozaki & Ohkawa, 2008), and distributed algorithm (Fatat & Borthold, 2005).

An interesting algorithm with advanced visualization software is ForceAtlas2. This algorithm is developed by the Gephi team as an all-around solution to Gephi users’ typical networks (scale-free, 10-10,000 nodes) (Bastian, Heymann, & Jacomy, 2009). Gephi is a network visualization software used in various disciplines (social network analysis, biology, genomics etc.). One of its key features is the ability to display the spatialization process, aiming at transforming the network into a map. ForceAtlas2 is a force-directed layout close to other algorithms used for network spatialization. According to Jacomy et ah (2014), ForceAtlas2 is a force- directed layout. The principle of the ForceAtlas2 algorithm is based on the physical aspects. Tlie key concepts used to describe the algorithm are the attracting and repulsive forces. A repulsive force occurs between each pair of connected nodes vx and v2. It is analogous to the interaction between like electrical charges.

The most important features of the ForceAtlas2 algorithm can be summarized as (Jacomy et ah, 2014): (a) algorithm stop condition is to exceed the set number of iterations; (b) the result of the algorithm is mapping the neighborhood of the analyzed objects by the proximity of the nodes on the visualized graph; and (c) in the interpretation of the resulting graph, one should concentrate on the mutual position of the nodes.

A typical use case of ForceAtlas2 is the social network. A common feature of this type of network is the presence of many “leaves” (nodes that have only one neighbor). This is due to the power law distribution of degrees that characterizes many real-world data. The forests of “leaves” surrounding the few highly connected nodes are one of the principal sources of visual cluttering.

Graph mining finds its application in various problem domains, including scientific data mining (Raymond & Belbin, 2006), software engineering (Eichinger & Boehm, 2010), bioinformatics, chemical reactions, program flow structures, computer networks (Rehman, Khan, & Fong, 2012), consumer behavior analysis (Yada et al., 2004), video image analysis (Koga et el., 2010), decision support systems (Omar & Salleh, 2012), social network analysis (Bezerianos et al. 2010), Big Data analysis (Aridhi & Nguifi, 2016), and creativity support systems design (Olszak, Bartus, 8c Lorek, 2017). All these examples of applications are based on the analysis of nonstructural data but with clearly emphasized relational nature.

Network Analysis

One of the best known network analysis is social media mining (SMM). SMM is the process of representing, analyzing, and extracting actionable patterns from social media data. SMM introduces basic concepts and principal algorithms suitable for investigating massive social media data. It discusses theories and methodologies from different disciplines such as computer science, data mining, machine learning, social network analysis, network science, sociology, ethnography, statistics, optimization, and mathematics. It encompasses the tools to formally represent, measure, model, and mine meaningful patterns from large-scale social media data (Zagarani, Abbasi, & Liu, 2014). Network analysis can provide consumers’ behavior and preference information for the business as well as express the change of the public mood and even predict the trend of stock market (Bollen et al., 2011). It can also identify target audience groups through brand influence based on customer Big Data on the social media platform (Zhang et al., 2016) and support location- based personalized messaging services (Wang Kai et al., 2015).

Machine Learning

Machine learning is a process of using computers to imitate a person to acquire skills through learning. Machine learning is trained through extensive data and algorithms that allow machines to own the ability to predict management trends and make decisions in the process of analyzing and optimizing operating management of Big Data. Machine learning can build models from mass data or discover various relationships implied in the observed data according to the specific needs of users. The mainstream machine learning algorithms in Big Data environments include: large-scale data classification, Big Data cluster learning, Big Data correlation analysis algorithms, and Big Data parallel algorithms, such as Bayesian network, decision tree, and support vector machine Big Data classification model, К-means and K-mediods Big Data cluster algorithm, big data correlation analysis method based on MapReduce parallel processing model, etc.

Deep Learning

Deep learning has evolved from machine learning and Multilayer Perceptron Architecture, and it is the frontier of current research and analysis of Big Data. The key problem of processing Big Data is how to communicate, interpret, and learn from the data effectively, whatever it is in image, sound, or textual form.

Deep learning is essentially a nonlinear combination of Multilayer Representation Learning method. Representation Learning means learning representation (or feature) from data in order to extract useful information in the data when categorizing and predicting. Deep learning begins with raw data and transforms each representation (or feature) layer into higher and more abstract representation, thereby discovering the intricate structure in high-dimensional data. The key technologies of Google’s AI Robot AlphaGo and AlphaGo 2.0 are deep learning and intensive learning of convolutional neural networks (CNN) structures. Deep learning methods are also used in areas such as computer image recognition, speech recognition, NLP, and information retrieval. Krizhevsky, who works in Google, and his mentor Hinton use deep CNNs to recognize and classify social network images. Collobert et al. trained a deep neural network containing a convolutional layer to solve the multiple NLP problems simultaneously using learned intermediate expressions. The study of deep learning in the future will be evolved to more complex problems of deep structure and deep learning algorithm, especially the combination of deep neural networks (DNN) and recurrent neural networks (RNN) which make the use of reinforcement, expecting to learn visual initiative of human being.

Neural Networks

Neural networks are among the most advanced methods of artificial intelligence.

In particular, they are used for (Osowski, 2006) the following:

■ pattern recognition that concerns recognizing by the neural network characteristic features that determine if a classified pattern belongs to a particular class; and

■ predictions, where the forecast value ytt/ is determined based on past values У.-Р- ■

Neural networks are a very effective method for dealing with (Cios et ah, 2000):

■ cluster analysis, which is a search for the characteristics of the classes to which processed patterns belong (a particularly important issue in data mining and compression);

■ associative memory that allows reproduction of the full form of the pattern based on incomplete, noisy, or distorted data (relevant process in the case of data transmission).

Tlie most frequently mentioned advantages of neural networks include (Kordon, 2010):

■ Extraction of features from source data: The neural network does not require making any assumptions about the source data. It is possible to discover potentially previously unknown patterns in the data related to the studied phenomenon. The learning process is relatively fast, and the correct and effective operation of the neural network is not determined by knowledge of the nature of the studied problem;

■ High approximation capacity: The neural network is able to approximate any continuous and nonlinear relationship between specific factors. The only essential requirement is that the approximated relationship should be deterministic. If such a relationship exists, it can be discovered and successfully approximated; and

■ Speed of development: Algorithms for training neural networks are characterized by relatively good performance. However, access to the right amount of learning data may be an important limitation. Too few learning samples can lead to an insufficient level of network modeling of the relationships or to a discrepancy in the learning algorithm.

Furthermore, there is a comprehensive set of learning algorithms and a large variety of network types. The selection of the learning algorithm is partly determined by the type of network used. The most important types of neural networks include: Multilayer Perceptron, Radial Basis Function Network, Support Vector Machine, Generalized Regression Neural Network, and self-organizing feature map [Self- Organizing Map). Choosing the type of network for a particular application usually involves the need for experimental verification. Performing experiments involves a fairly large amount of work as well as the demand for the right amount of source data needed to be used as learning data (Lorek, 2017).

Genetic Algorithms

GA is applied over the problem domain where the outcome is very unpredictable and the process of outcome contains complex interrelated modules (Hassan, 2014). GA is used to obtain optimized solutions from a number of candidate solutions (Mitchel, 1998). GA is inspired by evolutionary theory: weak and unit species are faced with extinction by natural selection and the strong ones have greater opportunity to pass their genes to future generations via reproduction (Konak, Coit, & Smith, 2006). Compared with other classic or optimization methods, GAs have their specific advantages in terms of their broad applicability, ease of use, and global perspective (Deb, 1999; Lu, Li, & Zhang, 2015; Thede, 2004;).

GA is also very apt for such class of problems where problem specification is very difficult to formulate. The whole process of GA is based on the idea of natural evolution and selection. This knowledge of evolution and selection is encoded in a chromosome and can be analyzed with conditional or random probability.

Using GA over data mining creates great robust, computationally efficient, and adaptive systems. In the past, there were several researches focused on data mining using statistical techniques. The statistics that have heavily contributed are the ANOVA, ANCOVA, Poisson’s Distribution, and Random Indicator Variables etc.

The biggest drawback of any statistical tactics lies in its tuning. With exponential explosion of data, this tuning goes on taking more time and inversely affects the throughput. Also, due to their static nature, often complex hidden patterns are left out. The idea here is to use genes to mine out data with great efficiency (Hasan, 2014).

Spatial Analysis

In Big Data, spatial data specifically account for the vast majority. About 80% of data are associated with the spatial position (Grossner, Goodchild, & Clarke, 2008). Any kind of object or structure may be related to a geospatial location such as buildings, roads, places, bridges, or rivers. The content of spatial data can be the value of point height, road length, polygon area, building volume and imagery pixel, also the string of geographical name and annotation, and further the graphics, images, multimedia, relationships, and autocorrelation (Shekhar, & Chawla,

2003).

Spatial data mining is a process of discovering interesting and previously unknown, but potentially useful, patterns from large spatial data sets. Extracting interesting and useful patterns from spatial data sets is more difficult than extracting the corresponding patterns from traditional numeric and categorical data due to the complexity of spatial data types, spatial relationships, and spatial autocorrelation (Shekhar et ah, 2005).

Specific features of geographical data that preclude the use of general purpose data mining algorithms are (Shekhar et al., 2005): (a) spatial relationships among the variables; (b) spatial structure of errors; (c) mixed distributions as opposed to commonly assumed normal distributions; (d) observations that are not independent; (e) spatial autocorrelation among the features; and (f) nonlinear interaction in feature space.

The complexity of spatial data and intrinsic spatial relationships limit the usefulness of conventional data mining techniques for extracting spatial patterns. Efficient tools for extracting information from geospatial data are crucial to organizations which make decisions based on large spatial data sets, including NASA, the National Imagery and Mapping Agency, the National Cancer Institute, and the United States Department of Transportation. These organizations are spread across many application domains, including: ecology and environmental management, public safety, transportation, Earth science, epidemiology, and climatology (Shekhar et ah, 2005).

Search-Based Application

Search-based application is a category of application that enables users to find information from any source and in any format. The users can enter anything they know about the customer or product and the search engine will try to find those customers or products that resemble the keywords entered by the user. According to Capgemini (2013). there are different reasons for using search engines: (a) they are very flexible in handling any format and type of information, be it structured, unstructured, or external; (b) they are able to cope with continuously evolving data structures. Indexing both existing and new data does not require extensive data-modeling; (c) search engines enable content-driven dimensional navigation. At each step of navigation search engines propose different possibilities to filter results according to the content of the data sets that are being indexed and analyzed in near real time; (4) search engines, unlike solutions based on RDBMS, are able to analyze data without the need to know the various data types; (5) end users are now quite familiar with the “Google” interface. As a consequence, they are much more independent from IT departments if they can access decision support data through a search engine; (6) when external and unstructured data are needed to support decision-making, traditional data warehouse architectures are limited and search engines can help to fill the gap; (7) search engines include functionality to automatically generate categories and clusters, hence improve the contextualization and meaning of data; and (8) search engines can work with existing information systems (e.g., data warehouses, data marts, production systems, etc.) and provide a uniform view of data without compromising performance.

 
Source