Tải bản đầy đủ (.pdf) (263 trang)

Efficient learning machines theories, concepts, and applications for engineers and system designers awad khanna 2015 04 30

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (7.93 MB, 263 trang )


For your convenience Apress has placed some of the front
matter material after the index. Please use the Bookmarks
and Contents at a Glance links to access them.


Contents at a Glance
About the Authors����������������������������������������������������������������������������������������������������xv
About the Technical Reviewers�����������������������������������������������������������������������������xvii
Acknowledgments��������������������������������������������������������������������������������������������������xix
■■Chapter 1: Machine Learning�������������������������������������������������������������������������������� 1
■■Chapter 2: Machine Learning and Knowledge Discovery������������������������������������ 19
■■Chapter 3: Support Vector Machines for Classification��������������������������������������� 39
■■Chapter 4: Support Vector Regression���������������������������������������������������������������� 67
■■Chapter 5: Hidden Markov Model������������������������������������������������������������������������ 81
■■Chapter 6: Bioinspired Computing: Swarm Intelligence������������������������������������ 105
■■Chapter 7: Deep Neural Networks��������������������������������������������������������������������� 127
■■Chapter 8: Cortical Algorithms�������������������������������������������������������������������������� 149
■■Chapter 9: Deep Learning���������������������������������������������������������������������������������� 167
■■Chapter 10: Multiobjective Optimization����������������������������������������������������������� 185
■■Chapter 11: Machine Learning in Action: Examples������������������������������������������ 209
Index��������������������������������������������������������������������������������������������������������������������� 241

v


Chapter 1

Machine Learning
Nature is a self-made machine, more perfectly automated than any automated machine.
To create something in the image of nature is to create a machine, and it was by learning


the inner working of nature that man became a builder of machines.
—Eric Hoffer, Reflections on the Human Condition
Machine learning (ML) is a branch of artificial intelligence that systematically applies algorithms to
synthesize the underlying relationships among data and information. For example, ML systems can be
trained on automatic speech recognition systems (such as iPhone’s Siri) to convert acoustic information in a
sequence of speech data into semantic structure expressed in the form of a string of words.
ML is already finding widespread uses in web search, ad placement, credit scoring, stock market
prediction, gene sequence analysis, behavior analysis, smart coupons, drug development, weather
forecasting, big data analytics, and many more applications. ML will play a decisive role in the development
of a host of user-centric innovations.
ML owes its burgeoning adoption to its ability to characterize underlying relationships within large
arrays of data in ways that solve problems in big data analytics, behavioral pattern recognition, and
information evolution. ML systems can moreover be trained to categorize the changing conditions of a
process so as to model variations in operating behavior. As bodies of knowledge evolve under the influence
of new ideas and technologies, ML systems can identify disruptions to the existing models and redesign and
retrain themselves to adapt to and coevolve with the new knowledge.
The computational characteristic of ML is to generalize the training experience (or examples) and
output a hypothesis that estimates the target function. The generalization attribute of ML allows the system
to perform well on unseen data instances by accurately predicting the future data. Unlike other optimization
problems, ML does not have a well-defined function that can be optimized. Instead, training errors serve
as a catalyst to test learning errors. The process of generalization requires classifiers that input discrete or
continuous feature vectors and output a class.
The goal of ML is to predict future events or scenarios that are unknown to the computer. In 1959,
Arthur Samuel described ML as the “field of study that gives computers the ability to learn without
being explicitly programmed” (Samuel 1959). He concluded that programming computers to learn from
experience should eventually eliminate the need for much of this detailed programming effort. According
to Tom M. Mitchell’s definition of ML: “A computer program is said to learn from experience E with respect
to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P,
improves with experience E.” Alan Turing’s seminal paper (Turing 1950) introduced a benchmark standard
for demonstrating machine intelligence, such that a machine has to be intelligent and responsive in a

manner that cannot be differentiated from that of a human being.

1


Chapter 1 ■ Machine Learning

The learning process plays a crucial role in generalizing the problem by acting on its historical experience.
Experience exists in the form of training datasets, which aid in achieving accurate results on new and unseen
tasks. The training datasets encompass an existing problem domain that the learner uses to build a general
model about that domain. This enables the model to generate largely accurate predictions in new cases.

Key Terminology
To facilitate the reader’s understanding of the concept of ML, this section defines and discusses some key
multidisciplinary conceptual terms in relation to ML.

2



classifier. A method that receives a new input as an unlabeled instance of an
observation or feature and identifies a category or class to which it belongs. Many
commonly used classifiers employ statistical inference (probability measure) to
categorize the best label for a given instance.



confusion matrix (aka error matrix). A matrix that visualizes the performance of
the classification algorithm using the data in the matrix. It compares ������������� 142


References������������������������������������������������������������������������������������������������������������������� 142
■■Chapter 8: Cortical Algorithms�������������������������������������������������������������������������� 149
Cortical Algorithm Primer��������������������������������������������������������������������������������������������� 149
Cortical Algorithm Structure �������������������������������������������������������������������������������������������������������������� 149
Training of Cortical Algorithms����������������������������������������������������������������������������������������������������������� 152

Weight Update�������������������������������������������������������������������������������������������������������������� 154
Experimental Results ������������������������������������������������������������������������������������������������������������������������� 156

xi


■ Contents

Modified Cortical Algorithms Applied to Arabic Spoken Digits: Case Study����������������� 159
Entropy-Based Weight Update Rule���������������������������������������������������������������������������������������������������� 159
Experimental Validation���������������������������������������������������������������������������������������������������������������������� 160

References... ��������������������������������������������������������������������������������������������������������������� 164
■■Chapter 9: Deep Learning���������������������������������������������������������������������������������� 167
Overview of Hierarchical Temporal Memory���������������������������������������������������������������� 167
Hierarchical Temporal Memory Generations���������������������������������������������������������������� 168
Sparse Distributed Representation����������������������������������������������������������������������������������������������������� 171
Algorithmic Implementation �������������������������������������������������������������������������������������������������������������� 171
Spatial Pooler������������������������������������������������������������������������������������������������������������������������������������� 172
Temporal Pooler���������������������������������������������������������������������������������������������������������������������������������� 173

Related Work���������������������������������������������������������������������������������������������������������������� 174
Overview of Spiking Neural Networks�������������������������������������������������������������������������� 175
Hodgkin-Huxley Model����������������������������������������������������������������������������������������������������������������������� 176

Integrate-and-Fire Model������������������������������������������������������������������������������������������������������������������� 176
Leaky Integrate-and-Fire Model��������������������������������������������������������������������������������������������������������� 177
Izhikevich Model��������������������������������������������������������������������������������������������������������������������������������� 177
Thorpe’s Model����������������������������������������������������������������������������������������������������������������������������������� 178
Information Coding in SNN����������������������������������������������������������������������������������������������������������������� 178
Learning in SNN���������������������������������������������������������������������������������������������������������������������������������� 179
SNN Variants and Extensions�������������������������������������������������������������������������������������������������������������� 180

Conclusion�������������������������������������������������������������������������������������������������������������������� 182
References������������������������������������������������������������������������������������������������������������������� 182
■■Chapter 10: Multiobjective Optimization����������������������������������������������������������� 185
Formal Definition���������������������������������������������������������������������������������������������������������� 186
Pareto Optimality�������������������������������������������������������������������������������������������������������������������������������� 187
Dominance Relationship��������������������������������������������������������������������������������������������������������������������� 187
Performance Measure������������������������������������������������������������������������������������������������������������������������ 188

xii


■ Contents

Machine Learning: Evolutionary Algorithms����������������������������������������������������������������� 189
Genetic Algorithm������������������������������������������������������������������������������������������������������������������������������� 190
Genetic Programming������������������������������������������������������������������������������������������������������������������������� 191

Multiobjective Optimization: An Evolutionary Approach����������������������������������������������� 192
Weighted-Sum Approach�������������������������������������������������������������������������������������������������������������������� 192
Vector-Evaluated Genetic Algorithm��������������������������������������������������������������������������������������������������� 193
Multiobjective Genetic Algorithm�������������������������������������������������������������������������������������������������������� 194
Niched Pareto Genetic Algorithm�������������������������������������������������������������������������������������������������������� 194

Nondominated Sorting Genetic Algorithm������������������������������������������������������������������������������������������ 195
Strength Pareto Evolutionary Algorithm��������������������������������������������������������������������������������������������� 196
Strength Pareto Evolutionary Algorithm II������������������������������������������������������������������������������������������� 198
Pareto Archived Evolutionary Strategy����������������������������������������������������������������������������������������������� 199
Pareto Envelope-Based Selection Algorithm�������������������������������������������������������������������������������������� 200
Pareto Envelope-Based Selection Algorithm II����������������������������������������������������������������������������������� 201
Elitist Nondominated Sorting Genetic Algorithm�������������������������������������������������������������������������������� 201

Example: Multiobjective Optimization�������������������������������������������������������������������������� 204
Objective Functions������������������������������������������������������������������������������������������������������ 206
References������������������������������������������������������������������������������������������������������������������� 207
■■Chapter 11: Machine Learning in Action: Examples������������������������������������������ 209
Viable System Modeling����������������������������������������������������������������������������������������������� 211
Example 1: Workload Fingerprinting on a Compute Node�������������������������������������������� 213
Phase Determination�������������������������������������������������������������������������������������������������������������������������� 214
Fingerprinting������������������������������������������������������������������������������������������������������������������������������������� 218
Forecasting����������������������������������������������������������������������������������������������������������������������������������������� 221

Example 2: Dynamic Energy Allocation������������������������������������������������������������������������ 221
Learning Process: Feature Selection�������������������������������������������������������������������������������������������������� 222
Learning Process: Optimization Planning������������������������������������������������������������������������������������������� 224
Learning Process: Monitoring������������������������������������������������������������������������������������������������������������� 225

xiii


■ Contents

Model Training: Procedure and Evaluation������������������������������������������������������������������� 227
Example 3: System Approach to Intrusion Detection��������������������������������������������������� 230

Modeling Scheme������������������������������������������������������������������������������������������������������������������������������� 231
Intrusion Detection System Architecture�������������������������������������������������������������������������������������������� 233

Profiles and System Considerations����������������������������������������������������������������������������� 236
Sensor Data Measurements����������������������������������������������������������������������������������������� 237
Summary���������������������������������������������������������������������������������������������������������������������� 239
References������������������������������������������������������������������������������������������������������������������� 239
Index��������������������������������������������������������������������������������������������������������������������� 241

xiv


About the Authors
Mariette Awad is an assistant professor in the Department of Electrical
and Computer Engineering at the American University of Beirut.
She was also a visiting professor at Virginia Commonwealth University,
Intel (Mobile and Communications Group), and the Massachusetts
Institute of Technology and was invited by the Computer Vision Center
at the Autonomous University of Barcelona, Google, and Qualcomm
to present her work on machine learning and image processing.
Additionally, she has published in numerous conference proceedings and
journals. Prior to her academic position, she was with the IBM Systems
and Technology Group, in Essex Junction, Vermont, as a wireless product
engineer. Over the years, her technical leadership and innovative spirit
have earned her management recognition and several business awards
as well as multiple IBM patents. Mariette holds a PhD in Electrical
Engineering from the University of Vermont.
Rahul Khanna is currently a principal engineer working as a platform
architect at Intel involved in the development of energy-efficient
algorithms. Over the past 20 years he has worked on server system

software technologies, including platform automation, power/thermal
optimization techniques, reliability, and predictive methodologies.
He has authored numerous technical papers and book chapters on
energy optimization, platform wireless interconnect, sensor networks,
interconnect reliability, predictive modeling, motion estimation,
and security and has coauthored a book on platform autonomy. He
holds 33 patents. He is also the coinventor of the Intel Interconnect
Built-in Self-Test (IBIST), a methodology for high-speed interconnect
testing. His research interests include machine learning–based power/
thermal optimization algorithms, narrow-channel high-speed wireless
interconnects, and information retrieval in dense sensor networks.
Rahul is a member of the Institute of Electrical and Electronic Engineers and the recipient of three Intel
Achievement Awards for his contributions in areas related to the advancement of platform technologies.

xv


About the Technical Reviewers
Abishai Daniel is a staff reliability engineer with Intel’s Datacenter Group. He works in the areas of device,
component, architectural reliability, and input-output (I/O) signal integrity, with a focus on statistical
predictive model development based on reliability data and the application of machine learning techniques
to reliability modeling. He has served as both program committee member and session chair for various
Institute of Electrical and Electronic Engineer conferences, mainly on the topics of reliability and design for
reliability, and has published more than 15 papers. Abishai has an AB from Wabash College and an MSEE
and a PhD from the University of Michigan.
Myron Porter has served in a variety of roles at Intel, including systems programmer, manager, board
validation program manager, and technical writer. Previously, he had positions at other Fortune 500
companies. He has lived in Bush Alaska and Sakha (Russian Yakutia) but was raised in the Ozarks. He got his
start in business selling Christmas cards door-to-door at the age of eight. Myron later sold fireworks and has
worked as a cabdriver, a pollster/political interviewer, a grant writer, a cook, a substitute teacher, a fuel truck

deliveryman, a college English instructor, a copywriter, a restaurant manager, an ESL teacher, and a technical
contractor. Additionally, he has done volunteer work for a veterinarian and two college radio stations and as
technical support to a regional women’s shelter.
Melissa Stockman is currently in the Division of Surgery at the American University of Beirut Medical
Center, focusing on the analysis of medical data. She also worked as a senior software engineer in the United
States and was the director, for more than 10 years, of Information Technology Infrastructure and Support
at the Lebanese American University. She holds a PhD in Electrical and Computer Engineering from the
American University of Beirut as well as a BA in Mathematics from New York University and an
MA in Computer Science from George Mason University. Melissa’s research areas include machine learning,
support vector machines, and computer architecture.

xvii


Acknowledgments
Many thanks to Yara Rizk (Chapter 7), Nadine Hajj (Chapter 8), Nicolas Mitri (Chapter 9), and
Obada Al Zoubi (Chapter 9) for their contributions to this book.
We would also like to thank Kshitij Doshi, Christian Le, John J. Jaiber, Martin Dimitrov, and
Karthik Kumar, who helped develop the concepts of phase detection and workload fingerprinting detailed
in Chapter 11.

xix



×