Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Cover
Title Page
Copyright Page
Table of Contents
Preface
Part I: Cloud, Big Data, and Cognitive Computing
1. Principles of Cloud Computing Systems
1.1 Elastic Cloud Systems for Scalable Computing
1.1.1 Enabling Technologies for Cloud Computing
1.1.2 Evolution of Scalable Distributed/Parallel Computing
1.1.3 Virtualized Resources in Cloud Systems
1.1.4 Cloud Computing versus On-Premise Computing
1.2 Cloud Architectures Compared with Distributed Systems
1.2.1 Basic Cloud Platform Architectures
1.2.2 Public, Private, Community, and Hybrid Clouds
1.2.3 Physical Clusters versus Virtual Clusters
1.2.4 Comparison with Other Parallel/Distributed Systems
1.3 Service Models, Ecosystems, and Scalability Analysis
1.3.1 Cloud Service Models: IaaS, PaaS, and SaaS
1.3.2 Scalability Laws in Evaluating Cloud Performance
1.3.3 Cloud Ecosystem and User Environments
1.3.4 Gartner Hype Cycle for Cloud Computing
1.3.5 Interaction among SMACT Technologies
1.4 Availability, Mobility, and Cluster Optimization
1.4.1 Availability Analysis of Cloud Server Clusters
1.4.2 Fault Tolerance in Virtual Cluster Operations
1.4.3 Queueing Model of Multiserver Clusters in Clouds
1.4.4 Multiserver Cluster Optimization for Cloud Computing
1.5 Conclusions
Homework Problems
2. Data Analytics, Internet of Things and Cognitive Computing
2.1 Big Data Science and Application Challenges
2.1.1 Data Science and Big Data Characteristics
2.1.2 Gartner Hype Cyde for the Internet of Things
2.1.3 Towards a Big Data Industry
2.1.4 Big Data Applications: An Overview
2.2 The Internet of Things and Cloud Interactions
2.2.1 IoT Sensing and Platform Architecture
2.2.2 IoT Value Chains and Development Road Map
2.2.3 Stand-alone and Cloud-centric IoT Applications
2.2.4 Smart City and Smart Community Development
2.3 Data Collection, Mining, and Analytics on Clouds
2.3.1 Data Quality Control and Representations
2.3.2 Data Mining and Data Analytics
2.3.3 Upgrading Data Analytics on Clouds
2.3.4 Cloud Resources for Supporting Big Data Analytics
2.4 Neuromorphic Hardware and Cognitive Computing
2.4.1 Cognitive Computing and Neuromorphic Processors
2.4.2 SyNAPSE and Related Neurocomputer Projects at IBM
2.4.3 Cambricom NPU at the Chinese Academy of Sciences
2.4.4 Google’s TPU and Related AI Programs
2.5 Conclusions
Homework Problems
Part II: Cloud Architecture and Service Platform Design
3. Virtual Machines, Docker Containers, and Server Clusters
3.1 Virtualization in Cloud Computing Systems
3.1.1 Basic Concept of Machine Virtualization
3.1.2 Implementation Levels of Virtualization
3.1.3 Resources Virtualization in Cluster or Cloud Systems
3.2 Hypervisors for Creating Native Virtual Machines
3.2.1 Virtual Machine Architecture Types
3.2.2 Full Virtualization and Hosted Virtualization
3.2.3 Paravirtualization with Guest OS Modification
3.2.4 Comparison of Platform Virtualization Software Products and Toolkits
3.3 Docker Engine and Application Containers
3.3.1 Virtualization at Linux Kernel Level
3.4 Docker Containers and Deployment Requirements
3.4.1 Docker Containers Created with Linux Kernel Functions
3.4.2 Docker Containers versus Virtual Machines
3.4.3 Architectural Evolution from VMs to Containers and Unikernel
3.5 Virtual Machine Management and Container Orchestration
3.5.1 VM Management Solutions
3.5.2 VM Migration for Disaster Recovery
3.5.3 Docker Container Scheduling and Orchestration
3.6 Eucalyptus, OpenStack, and VMware for Cloud Construction
3.6.1 Eucalyptus for Virtual Clustering in Private Clouds
3.6.2 OpenStack Software for Building Private or Public Clouds
3.6.3 VMware Virtualization Support for Building Hybrid Clouds
3.7 Conclusions
Homework Problems
4. Cloud Architectures and Service Platform Design
4.1 Cloud Architecture and Infrastructure Design
4.1.1 Public Clouds and Service Offerings
4.1.2 Business Models of Cloud Services
4.1.3 Converting Data Centers to Cloud Platforms
4.1.4 Elastic Resources Provisioning Methods
4.2 Dynamic Deployment of Virtual Clusters
4.2.1 Virtual Cluster Deployment Projects
4.2.2 Virtual Cluster Configuration Adaptation
4.2.3 Virtualization Support for Data Center Clusters
4.2.4 VMware vSphere 6: A Commercial Cloud Operating System
4.3 Amazon AWS Cloud and Service Offerings
4.3.1 Three Cloud Architectures and Services Convergence
4.3.2 AWS EC2 Compute Engine and S3 Storage Cloud
4.3.3 Other AWS Cloud Service Offerings
4.4 Google App Engine and Microsoft Azure
4.4.1 Google App Engine and Compute Engine
4.4.2 Google Hardware/Software Support for Machine Learning Services
4.4.3 Microsoft Azure and Service Offerings
4.5 Salesforce, IBM SmartCloud, and Other Clouds
4.5.1 Salesforce Clouds for SaaS Services
4.5.2 IBM SmartCloud, IoT, and Cognitive Projects
4.5.3 Clouds at SGI, NASA, and CERN
4.6 Conclusions
Homework Problems
5. Clouds for Mobile, IoT, Social Media, and Mashup Services
5.1 Wireless Internet and Mobile Cloud Computing
5.1.1 Mobile Devices and Internet Edge Networks
5.1.2 Wi-Fi, Bluetooth, and Wireless Sensor Networks
5.1.3 Cloudlet Mesh for Mobile Cloud Computing
5.1.4 Mobile Clouds and Colocation Clouds
5.2 IoT Sensing and Interaction with Clouds
5.2.1 Local and Global Positioning Systems
5.2.2 Cloud-Based RAN for Building Mobile Networks
5.2.3 IoT Interaction Frameworks with Clouds and Devices
5.3 Cloud Computing in Social Media Applications
5.3.1 Social Media Big-Data Industrial Applications
5.3.2 Social Networks and API for Social Media Applications
5.3.3 Social Graph Properties and Representations
5.3.4 Social Graph Analysis on Smart Clouds
5.4 Multicloud Mashup Architecture and Service
5.4.1 Cloud Mashup Architecture for Agility and Scalability
5.4.2 Multicloud Mashup Service Architecture
5.4.3 Skyline Discovery of Mashup Services
5.4.4 Dynamic Composition of Mashup Services
5.5 Conclusions
Homework Problems
Part III: Principles of Machine Learning and Artificial Intelligence Machines
6. Machine Learning Algorithms and Model Fitting
6.1 Taxonomy of Machine Learning Methods
6.1.1 Categories of Machine Learning Algorithms
6.1.2 Supervised Machine Learning Algorithms
6.1.3 Unsupervised Machine Learning Algorithms
6.2 Supervised Regression and Classification Methods
6.2.1 Linear Regression for Prediction or Forecasting
6.2.2 Decision Trees for Machine Learning
6.2.3 Bayesian Classifier with Training Samples
6.2.4 Support Vector Machines (SVM)
6.3 Clustering and Dimensionality Reduction Methods
6.3.1 Cluster Analysis and K-Means Clustering
6.3.2 Dimensionality Reduction and Reinforcement Learning
6.3.3 Principal Component Analysis
6.3.4 Semi-Supervised Learning Methods
6.4 Model Development for Machine Learning Applications
6.4.1 Performance Metrics and Model-Fitting Cases
6.4.2 Methods to Reduce Model Over-Fitting
6.4.3 Methods to Avoid Model Under-Fitting
6.5.4 Machine Learning Model Selection Options
6.5 Conclusions
Homework Problems
7. Intelligent Machines and Deep Learning Networks
7.1 Artificial Intelligence and Smart Machine Development
7.1.1 Analysis of 2016 Gartner Hype Cycle on Smart Machines
7.1.2 Google’s Development of AI Products and Services
7.1.3 Cognitive Services at IBM and Other Companies
7.1.4 Deep Learning Chips at Intel, Nvidia, and CAS/ICT
7.2 Augmented/Virtual Reality and Blockchain Technology
7.2.1 Augmented, Mediated, and Virtual Realities (AR, MR, VR)
7.2.2 Virtual Reality and Product Reviews
7.2.3 Block Chaining for Securing Business Transactions
7.3 Artificial Neural Networks for Deep Learning
7.3.1 Deep Learning Mimics Human Cognitive Functions
7.3.2 Evolution of ANNs and Reported Applications
7.3.3 Mathematical Description of an Artificial Neuron
7.3.4 Multilayer Artificial Neural Network
7.3.5 Forward Propagation and Backward Propagation in ANN
7.4 Taxonomy of Deep Learning Networks
7.4.1 Classes and Types of Deep Learning Networks
7.4.2 Convolutional Neural Networks
7.4.3 Connectivity in Deep Neural Networks
7.4.4 Recurrent Neural Networks (RNNs)
7.5 Deep Learning of Other Brain Functions
7.5.1 Restricted Boltzmann Machines
7.5.2 Deep Belief Networks
7.5.3 Deep Learning to Explore Other Brain Functions
7.6 Conclusions
Homework Problems
Part IV: Cloud Programming and Performance Boosters
8. Cloud Programming with Hadoop and Spark
8.1 Scalable Parallel Computing Over Large Clusters
8.1.1 Characteristics of Scalable Computing
8.1.2 From MapReduce to Hadoop and Spark
8.1.3 Application Software Libraries for Big Data Processing
8.2 Hadoop Programming with YARN and HDFS
8.2.1 The MapReduce Compute Engine
8.2.2 MapReduce for Parallel Matrix Multiplication
8.2.3 Hadoop Architecture and Recent Extensions
8.2.4 Hadoop Distributed File System
8.2.5 Hadoop YARN for Resource Management
8.3 Spark Core and Resilient Distributed Data Sets
8.3.1 Spark Core for General-Purpose Applications
8.3.2 Resilient Distributed Data Sets
8.3.3 Spark Programming with RDDs for DAG Tasks
8.4 Spark SQL and Streaming Programming
8.4.1 Spark SQL with Structured Data
8.4.2 Spark Streaming with Live Stream of Data
8.4.3 Spark Streaming Application Examples
8.5 Spark MLlib for Machine Learning and GraphX for Graph Processing
8.5.1 Spark MLlib Library for Machine Learning
8.5.2 Some MLlib Application Examples
8.5.3 Spark GraphX for Graph Processing
8.5.4 Some GraphX Programming Examples
8.6 Conclusions
Homework Problems
9. TensorFlow, Keras, DeepMind, and Graph Analytics
9.1 TensorFlow for Neural Network Computing
9.1.1 Key Concepts of TensorFlow
9.1.2 Tensors, Variables, Feed, and Fetch Operations
9.1.3 Distributed TensorFlow Execution Environment
9.1.4 Execution Sessions in TensorFlow Programs
9.2 TensorFlow System for Deep Learning
9.2.1 Layered TensorFlow System Architecture
9.2.2 TensorFlow Installation on Various Host Machines
9.2.3 TensorFlow Ecosystem for Distributed Resources Sharing
9.2.4 TensorFlow for Handwritten Digit Recognition
9.2.5 TensorFlow Applications for Cognitive Services
9.3 Google’s DeepMind and Other AI Programs
9.3.1 Reinforcement Deep Learning Algorithm
9.3.2 Interaction Between Policy Network and Value Network
9.3.3 Reinforcement Learning in the AlphaGo Program
9.3.4 DeepMind Health Project in the United Kingdom
9.4 Predictive Software, Keras, DIGITS, and Graph Libraries
9.4.1 Predictive Software Libraries for Cognitive Applications
9.4.2 Keras Library and DIGITS 5 for Deep learning
9.4.3 Graph-Parallel Computations on Clouds
9.4.4 Community Detection in Social networks
9.5 Conclusions
Homework Problems
10. Cloud Performance, Security, and Data Privacy
10.1 Introduction
10.1.1 What Are Cloud Performance and QoS?
10.1.2 How Do You Secure Clouds and Protect Shared Data?
10.2 Cloud Performance Metrics and Benchmarks
10.2.1 Auto-Scaling, Scale-Out, and Scale-Up Strategies
10.2.2 Cloud Performance Metrics
10.2.3 Cloud Performance Models Expressed in Radar Charts
10.3 Performance Analysis of Cloud Benchmark Results
10.3.1 Elastic Analysis of Scalable Cloud Performance
10.3.2 Scale-Out, Scale-Up, and Mixed Scaling Performance
10.3.3 Relative Merits of Scaling Strategies
10.4 Cloud Security and Data Privacy Protection
10.4.1 Cloud Security and Privacy Issues
10.4.2 Cloud Security Infrastructure
10.4.4 Mobile Clouds and Security Threats
10.5 Trust Management in Clouds and Datacenters
10.5.1 Distributed Intrusion and Anomaly Detection
10.5.2 Reputation-Based Trust Management in Clouds
10.5.3 P2P Trust Overlay Network over Multiple Data Centers
10.6 Conclusions
Homework Problems
Index
← Prev
Back
Next →
← Prev
Back
Next →