Learn Data Science, Deep Learning, Machine Learning, NLP & R

Learn Data Science, Deep Learning, Machine Learning, NLP & R

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 70.5 Hours | 22.0 GB

Learn Data Science, Deep Learning, Machine Learning, Natural Language Processing, R and Python Language with libraries.

|| DATA SCIENCE ||

Data science continues to evolve as one of the most promising and in-demand career paths for skilled professionals. Today, successful data professionals understand that they must advance past the traditional skills of analyzing large amounts of data, data mining, and programming skills.

What Does a Data Scientist Do?

In the past decade, data scientists have become necessary assets and are present in almost all organizations. These professionals are well-rounded, data-driven individuals with high-level technical skills who are capable of building complex quantitative algorithms to organize and synthesize large amounts of information used to answer questions and drive strategy in their organization. This is coupled with the experience in communication and leadership needed to deliver tangible results to various stakeholders across an organization or business.

Data scientists need to be curious and result-oriented, with exceptional industry-specific knowledge and communication skills that allow them to explain highly technical results to their non-technical counterparts. They possess a strong quantitative background in statistics and linear algebra as well as programming knowledge with focuses in data warehousing, mining, and modeling to build and analyze algorithms.

Glassdoor ranked data scientist as the #1 Best Job in America in 2018 for the third year in a row. 4 As increasing amounts of data become more accessible, large tech companies are no longer the only ones in need of data scientists. The growing demand for data science professionals across industries, big and small, is being challenged by a shortage of qualified candidates available to fill the open positions.

The need for data scientists shows no sign of slowing down in the coming years. LinkedIn listed data scientist as one of the most promising jobs in 2017 and 2018, along with multiple data-science-related skills as the most in-demand by companies.

Where Do You Fit in Data Science?

Data is everywhere and expansive. A variety of terms related to mining, cleaning, analyzing, and interpreting data are often used interchangeably, but they can actually involve different skill sets and complexity of data.

Data Scientist

Data scientists examine which questions need answering and where to find the related data. They have business acumen and analytical skills as well as the ability to mine, clean, and present data. Businesses use data scientists to source, manage, and analyze large amounts of unstructured data. Results are then synthesized and communicated to key stakeholders to drive strategic decision-making in the organization.

Skills needed: Programming skills (SAS, R, Python), statistical and mathematical skills, storytelling and data visualization, Hadoop, SQL, machine learning

Data Analyst

Data analysts bridge the gap between data scientists and business analysts. They are provided with the questions that need answering from an organization and then organize and analyze data to find results that align with high-level business strategy. Data analysts are responsible for translating technical analysis to qualitative action items and effectively communicating their findings to diverse stakeholders.

Skills needed: Programming skills (SAS, R, Python), statistical and mathematical skills, data wrangling, data visualization

Data Engineer

Data engineers manage exponential amounts of rapidly changing data. They focus on the development, deployment, management, and optimization of data pipelines and infrastructure to transform and transfer data to data scientists for querying.

Skills needed: Programming languages (Java, Scala), NoSQL databases (MongoDB, Cassandra DB), frameworks (Apache Hadoop)

Data Science Career Outlook and Salary Opportunities

Data science professionals are rewarded for their highly technical skill set with competitive salaries and great job opportunities at big and small companies in most industries. With over 4,500 open positions listed on Glassdoor, data science professionals with the appropriate experience and education have the opportunity to make their mark in some of the most forward-thinking companies in the world.

So, Data Science is primarily used to make decisions and predictions making use of predictive causal analytics, prescriptive analytics (predictive plus decision science) and machine learning.

Predictive causal analytics – If you want a model which can predict the possibilities of a particular event in the future, you need to apply predictive causal analytics. Say, if you are providing money on credit, then the probability of customers making future credit payments on time is a matter of concern for you. Here, you can build a model which can perform predictive analytics on the payment history of the customer to predict if the future payments will be on time or not.

Prescriptive analytics: If you want a model which has the intelligence of taking its own decisions and the ability to modify it with dynamic parameters, you certainly need prescriptive analytics for it. This relatively new field is all about providing advice. In other terms, it not only predicts but suggests a range of prescribed actions and associated outcomes.
The best example for this is Google’s self-driving car which I had discussed earlier too. The data gathered by vehicles can be used to train self-driving cars. You can run algorithms on this data to bring intelligence to it. This will enable your car to take decisions like when to turn, which path to take, when to slow down or speed up.

Machine learning for making predictions — If you have transactional data of a finance company and need to build a model to determine the future trend, then machine learning algorithms are the best bet. This falls under the paradigm of supervised learning. It is called supervised because you already have the data based on which you can train your machines. For example, a fraud detection model can be trained using a historical record of fraudulent purchases.

Machine learning for pattern discovery — If you don’t have the parameters based on which you can make predictions, then you need to find out the hidden patterns within the dataset to be able to make meaningful predictions. This is nothing but the unsupervised model as you don’t have any predefined labels for grouping. The most common algorithm used for pattern discovery is Clustering.
Let’s say you are working in a telephone company and you need to establish a network by putting towers in a region. Then, you can use the clustering technique to find those tower locations which will ensure that all the users receive optimum signal strength.

|| DEEP LEARNING ||

Deep learning is a machine learning technique that teaches computers to do what comes naturally to humans: learn by example. Deep learning is a key technology behind driverless cars, enabling them to recognize a stop sign, or to distinguish a pedestrian from a lamppost. It is the key to voice control in consumer devices like phones, tablets, TVs, and hands-free speakers. Deep learning is getting lots of attention lately and for good reason. It’s achieving results that were not possible before.

In deep learning, a computer model learns to perform classification tasks directly from images, text, or sound. Deep learning models can achieve state-of-the-art accuracy, sometimes exceeding human-level performance. Models are trained by using a large set of labeled data and neural network architectures that contain many layers.

How does deep learning attain such impressive results?

In a word, accuracy. Deep learning achieves recognition accuracy at higher levels than ever before. This helps consumer electronics meet user expectations, and it is crucial for safety-critical applications like driverless cars. Recent advances in deep learning have improved to the point where deep learning outperforms humans in some tasks like classifying objects in images.

While deep learning was first theorized in the 1980s, there are two main reasons it has only recently become useful:

Deep learning requires large amounts of labeled data. For example, driverless car development requires millions of images and thousands of hours of video.

Deep learning requires substantial computing power. High-performance GPUs have a parallel architecture that is efficient for deep learning. When combined with clusters or cloud computing, this enables development teams to reduce training time for a deep learning network from weeks to hours or less.

Examples of Deep Learning at Work

Deep learning applications are used in industries from automated driving to medical devices.

Automated Driving: Automotive researchers are using deep learning to automatically detect objects such as stop signs and traffic lights. In addition, deep learning is used to detect pedestrians, which helps decrease accidents.

Aerospace and Defense: Deep learning is used to identify objects from satellites that locate areas of interest, and identify safe or unsafe zones for troops.

Medical Research: Cancer researchers are using deep learning to automatically detect cancer cells. Teams at UCLA built an advanced microscope that yields a high-dimensional data set used to train a deep learning application to accurately identify cancer cells.

Industrial Automation: Deep learning is helping to improve worker safety around heavy machinery by automatically detecting when people or objects are within an unsafe distance of machines.

Electronics: Deep learning is being used in automated hearing and speech translation. For example, home assistance devices that respond to your voice and know your preferences are powered by deep learning applications.

What’s the Difference Between Machine Learning and Deep Learning?

Deep learning is a specialized form of machine learning. A machine learning workflow starts with relevant features being manually extracted from images. The features are then used to create a model that categorizes the objects in the image. With a deep learning workflow, relevant features are automatically extracted from images. In addition, deep learning performs “end-to-end learning” – where a network is given raw data and a task to perform, such as classification, and it learns how to do this automatically.

Another key difference is deep learning algorithms scale with data, whereas shallow learning converges. Shallow learning refers to machine learning methods that plateau at a certain level of performance when you add more examples and training data to the network.

A key advantage of deep learning networks is that they often continue to improve as the size of your data increases.

MACHINE LEARNING

What is the definition of machine learning?

Machine-learning algorithms use statistics to find patterns in massive* amounts of data. And data, here, encompasses a lot of things—numbers, words, images, clicks, what have you. If it can be digitally stored, it can be fed into a machine-learning algorithm.

Machine learning is the process that powers many of the services we use today—recommendation systems like those on Netflix, YouTube, and Spotify; search engines like Google and Baidu; social-media feeds like Facebook and Twitter; voice assistants like Siri and Alexa. The list goes on.

In all of these instances, each platform is collecting as much data about you as possible—what genres you like watching, what links you are clicking, which statuses you are reacting to—and using machine learning to make a highly educated guess about what you might want next. Or, in the case of a voice assistant, about which words match best with the funny sounds coming out of your mouth.

WHY IS MACHINE LEARNING SO SUCCESSFUL?

While machine learning is not a new technique, interest in the field has exploded in recent years.

This resurgence comes on the back of a series of breakthroughs, with deep learning setting new records for accuracy in areas such as speech and language recognition, and computer vision.

What’s made these successes possible are primarily two factors, one being the vast quantities of images, speech, video and text that is accessible to researchers looking to train machine-learning systems.

But even more important is the availability of vast amounts of parallel-processing power, courtesy of modern graphics processing units (GPUs), which can be linked together into clusters to form machine-learning powerhouses.

Today anyone with an internet connection can use these clusters to train machine-learning models, via cloud services provided by firms like Amazon, Google and Microsoft.

As the use of machine-learning has taken off, so companies are now creating specialized hardware tailored to running and training machine-learning models. An example of one of these custom chips is Google’s Tensor Processing Unit (TPU), the latest version of which accelerates the rate at which machine-learning models built using Google’s TensorFlow software library can infer information from data, as well as the rate at which they can be trained.

These chips are not just used to train models for Google DeepMind and Google Brain, but also the models that underpin Google Translate and the image recognition in Google Photo, as well as services that allow the public to build machine learning models using Google’s TensorFlow Research Cloud. The second generation of these chips was unveiled at Google’s I/O conference in May last year, with an array of these new TPUs able to train a Google machine-learning model used for translation in half the time it would take an array of the top-end GPUs, and the recently announced third-generation TPUs able to accelerate training and inference even further.

As hardware becomes increasingly specialized and machine-learning software frameworks are refined, it’s becoming increasingly common for ML tasks to be carried out on consumer-grade phones and computers, rather than in cloud datacenters. In the summer of 2018, Google took a step towards offering the same quality of automated translation on phones that are offline as is available online, by rolling out local neural machine translation for 59 languages to the Google Translate app for iOS and Android.

Natural Language Processing

Large volumes of textual data

Natural language processing helps computers communicate with humans in their own language and scales other language-related tasks. For example, NLP makes it possible for computers to read text, hear speech, interpret it, measure sentiment and determine which parts are important.

Today’s machines can analyze more language-based data than humans, without fatigue and in a consistent, unbiased way. Considering the staggering amount of unstructured data that’s generated every day, from medical records to social media, automation will be critical to fully analyze text and speech data efficiently.

Structuring a highly unstructured data source

Human language is astoundingly complex and diverse. We express ourselves in infinite ways, both verbally and in writing. Not only are there hundreds of languages and dialects, but within each language is a unique set of grammar and syntax rules, terms and slang. When we write, we often misspell or abbreviate words, or omit punctuation. When we speak, we have regional accents, and we mumble, stutter and borrow terms from other languages.

While supervised and unsupervised learning, and specifically deep learning, are now widely used for modeling human language, there’s also a need for syntactic and semantic understanding and domain expertise that are not necessarily present in these machine learning approaches. NLP is important because it helps resolve ambiguity in language and adds useful numeric structure to the data for many downstream applications, such as speech recognition or text analytics.

How does NLP work?

Breaking down the elemental pieces of language

Natural language processing includes many different techniques for interpreting human language, ranging from statistical and machine learning methods to rules-based and algorithmic approaches. We need a broad array of approaches because the text- and voice-based data varies widely, as do the practical applications.

Basic NLP tasks include tokenization and parsing, lemmatization/stemming, part-of-speech tagging, language detection and identification of semantic relationships. If you ever diagramed sentences in grade school, you’ve done these tasks manually before.

In general terms, NLP tasks break down language into shorter, elemental pieces, try to understand relationships between the pieces and explore how the pieces work together to create meaning.

These underlying tasks are often used in higher-level NLP capabilities, such as:

Content categorization. A linguistic-based document summary, including search and indexing, content alerts and duplication detection.

Topic discovery and modeling. Accurately capture the meaning and themes in text collections, and apply advanced analytics to text, like optimization and forecasting.

Contextual extraction. Automatically pull structured information from text-based sources.

Sentiment analysis. Identifying the mood or subjective opinions within large amounts of text, including average sentiment and opinion mining.

Speech-to-text and text-to-speech conversion. Transforming voice commands into written text, and vice versa.

Document summarization. Automatically generating synopses of large bodies of text.

Machine translation. Automatic translation of text or speech from one language to another.

In all these cases, the overarching goal is to take raw language input and use linguistics and algorithms to transform or enrich the text in such a way that it delivers greater value.

R Language

What is R?

R is a programming language developed by Ross Ihaka and Robert Gentleman in 1993. R possesses an extensive catalog of statistical and graphical methods. It includes machine learning algorithms, linear regression, time series, statistical inference to name a few. Most of the R libraries are written in R, but for heavy computational tasks, C, C++ and Fortran codes are preferred.

R is not only entrusted by academic, but many large companies also use R programming language, including Uber, Google, Airbnb, Facebook and so on.

Data analysis with R is done in a series of steps; programming, transforming, discovering, modeling and communicate the results

Program: R is a clear and accessible programming tool

Transform: R is made up of a collection of libraries designed specifically for data science

Discover: Investigate the data, refine your hypothesis and analyze them

Model: R provides a wide array of tools to capture the right model for your data

Communicate: Integrate codes, graphs, and outputs to a report with R Markdown or build Shiny apps to share with the world

What is R used for?

Statistical inference

Data analysis

Machine learning algorithm

R package

The primary uses of R is and will always be, statistic, visualization, and machine learning. The picture below shows which R package got the most questions in Stack Overflow. In the top 10, most of them are related to the workflow of a data scientist: data preparation and communicate the results.

What you’ll learn

  • Mathematics and Statistics behind Machine Learning
  • Mathematics and Statistics behind Deep Learning
  • Mathematics and Statistics behind Artificial Intelligence
  • Python Programming Language from Scratch
  • Python with it’s Libraries
  • Learn Numpy, Pandas, Matplotlib, Scikit-Learn
  • Learn Natural Language Processing
  • Learn R Language
  • Learn Tokenization in Natural Language Processing
  • Learn Implementation of R Packages and Libraries on Different Data Sets
  • Learn Implementation of Python Libraries on Different Data Sets
  • Algorithms and Models of Machine Learning
  • Algorithms and Models of Deep Learning
  • Learn Data Science
  • k-Nearest Neighbors, Naive Bayes etc
  • Supervised and Unsupervised Learning
  • Clustering
  • Different Theorems
Table of Contents

Introduction
1 Introduction

Installing Software
2 How to Download Anaconda
3 VERY IMPORTANT NOTE FOR STUDENTS!!
4 How to Download R Studio

Data Science with Python
5 Introduction to NumPy
6 Understanding Data Types in Python
7 Fixed Type Arrays in Python
8 Creating Arrays from Scratch
9 The Basics of NumPy Arrays
10 Array Slicing – Accessing Subarrays
11 Reshaping of Arrays
12 Splitting of Arrays
13 Splitting of Arrays – 2
14 Exploring NumPy’s UFuncs
15 Exponents and Logarithms
16 Advanced UFunc Functions
17 Aggregations
18 Example US Presidents
19 Computation on Arrays – Broadcasting
20 Broadcasting Example
21 Broadcasting in Practice
22 Comparisons, Masks and Boolean Logic
23 Boolean Operators
24 Boolean Arrays as Masks
25 Fancy Indexing
26 Combined Indexing
27 Modifying values with Fancy Indexing
28 Example Binning Data
29 Sorting Arrays
30 Fast Sorting in NumPy
31 Example k-Nearest Neighbors
32 Structured Data – NumPy’s Structured Arrays
33 More Advanced Component Types

Data Manipulation with Pandas
34 Introduction
35 Installing and Using Pandas
36 Introducing Pandas Objects
37 Constructing Series Objects
38 The Pandas DataFrame Object
39 DataFrame as a specialized Dictionary
40 The Pandas Index Object
41 Data Indexing and Selection
42 Data Selection in DataFrame
43 DataFrame as two-dimensional array
44 Operating on Data in Pandas
45 UFuncs Index Alignment
46 Index alignment in DataFrame
47 Ufuncs Operations Between DataFrame and Series
48 Handling Missing Data
49 Missing Data in Pandas
50 NaN and None in Pandas
51 Operating on Null Values
52 Hierarchical Indexing
53 The better way Pandas MultiIndex
54 Methods of MultiIndex Creation
55 MultiIndex for columns
56 Indexing and Slicing a MultiIndex
57 Rearranging Multi-Indices
58 Index setting and resetting
59 Data Aggregations on Multi-Indices
60 Combining Datasets Concat and Append
61 Duplicate indices
62 Catching the repeats as an error
63 Combining Datasets Merge and Join
64 Specification of the Merge Key
65 Specifying Set Arithmetic for Joins
66 Example US States Data
67 Example US States Data – 2
68 Aggregation and Grouping
69 GroupBy Split, Apply, Combine
70 Iteration over groups
71 Aggregate, filter, transform, apply
72 Transformation
73 Pivot Tables
74 Pivot Table Syntax
75 Example Birthrate Data
76 Vectorized String Operations
77 Methods using regular expressions
78 Working with Time Series
79 Dates and times in Pandas Best of both worlds
80 Pandas Time Series Data Structures
81 Example Visualizing Seattle Bicycle Counts
82 Example Visualizing Seattle Bicycle Counts – 1
83 High-Performance Pandas eval() and query()
84 pandas.eval() for Efficient Operations
85 DataFrame.eval() for Column-Wise Operations

Data Visualization with Matplotlib
86 Visualization with Matplotlib
87 Plotting from an IPython Shell
88 Two Interfaces for the Price of one
89 Simple Line Plots
90 Adjusting the Plot – Axes Limits
91 Simple Scatter Plots
92 Scatter Plots with plt.scatter
93 Basic Errorbars
94 Density and Contour Plots
95 Histograms, Binnings, and Density
96 plt.hexbin – Hexagonal binnings
97 Customizing Plot Legends
98 Legend for Size of Points
99 Multiple Legends
100 Customizing Color-bars
101 Color limits and extensions
102 Example Handwritten Digits
103 Multiple Subplots
104 plt.subplots The Whole Grid in One Go
105 Text and Annotation
106 Arrows and Annotation
107 Major and Minor Ticks
108 Reducing or Increasing the Number of Ticks
109 Customizing Matplotlib Configurations and Stylesheets
110 Changing the Defaults rcParams
111 Stylesheets
112 Three-Dimensional Plotting in Matplotlib
113 Wireframes and Surface Plots
114 Example Visualizing a Möbius strip
115 Geographic Data with Basemap
116 Map Projections
117 Seaborn Versus Matplotlib
118 Pair plots
119 Bar Plots

Machine Learning with Python
120 Data Wrangling
121 Creating a DataFrame
122 Describing the Data
123 Selecting Rows based on Conditionals
124 Renaming Columns
125 Finding the Minimum, Maximum, Sum, Average and Count
126 Handling Missing Values
127 Deleting a Row & Dropping Duplicate Rows
128 Grouping Values by Variables
129 Looping over a column
130 Concatenating DataFrames
131 Merging DataFrames

Handling Categorical Data
132 Encoding Nominal Categorical Data
133 Encoding Ordinal Categorical Features
134 Encoding Dictionaries of Features
135 Imputing Missing Class Values
136 Handling Imbalanced Classes

Handling Missing Values
137 Rescaling a Feature
138 Normalizing Observations

Handling Numerical Data
139 Transforming Features
140 Detecting Outliers
141 Handling Outliers
142 Discretizating Features
143 Grouping Observations using Clustering

Loading Data
144 Loading Data

Vectors, Matrices and Arrays
145 Vectors, Matrices and Arrays
146 One or more elements in a matrix
147 Finding Minimum and Maximum Values in an Array and Matrix + Vector
148 Flattening a Matrix
149 Calculating the trace of a Matrix
150 Calculating the Dot Products

Deep Learning
151 Introduction
152 MNIST and Softmax Regression
153 Softmax Regression
154 Softmax Regression Code Explanation
155 Computation Graphs
156 Graphs, Sessions, Fetches
157 Constructing and Managing Graph & Fetches
158 Flowing Tensors
159 Data Types, Casting, Tensor Arrays and Shapes
160 Matrix Multiplication
161 Names
162 Variables, Placeholders, and Simple Optimization
163 Placeholders
164 Optimization
165 The Gradient Descent Optimizer
166 Gradient Descent in TensorFlow
167 Example Linear Regression
168 Convolutional Neural Networks
169 Convolution, Pooling, Dropout
170 The Model
171 MNIST Data Set
172 Working with TensorfBoard
173 Introduction to Recurrent Neural Networks
174 MNIST Images as Sequences
175 Input and Label Placeholders
176 The RNN Step
177 Applying the RNN step with tfscan
178 Sequential Outputs
179 TensorFlow Built-in RNN Functions
180 RNN for Text Sequences
181 Text Sequences
182 contrib.learn

Natural Language Processing
183 Computing with Language Texts and Words
184 Searching Texts
185 Counting Vocabulary
186 Lexical Diversity
187 Lexical diversity of various genres in the Brown Corpus
188 Lists
189 Indexing Lists
190 Variables
191 Strings
192 Computing with Language Simple Statistics
193 Frequency Distributions
194 Fine-Grained Selection of Words
195 Collocations and Bigrams
196 Counting other Things
197 Making Decisions and Taking Control
198 Operating on Every Element
199 Nested Code Blocks
200 Looping with Conditionals
201 Accessing Text Corposa
202 Web and Chat Texts
203 Brown Corpus
204 Brown Corpus – 2
205 Reuters Corpus
206 Inaugural Address Corpus
207 Conditional Frequency Distribution
208 Plotting and Tabulating Distributions
209 Generating Random Texts with Bigram
210 Function

Machine Learning with Python Introductory
211 Essential Libraries and Tools
212 A First Application Classifying Iris Species
213 Measuring Success Training and Testing Data
214 First Things Fast – Look at your Data
215 Building your first model k-Nearest Neighbors
216 Making Predictions

Supervised Learning with Python
217 Supervised Learning
218 load breast cancer function from scikit-learn
219 Dataset Analysis
220 Analyzing KNeighborsClassifier
221 Evaluation of Test Performance
222 k-Neighbors Regression
223 Analyzing KNeighborsRegressor
224 Linear Models
225 Linear regression (aka ordinary least squares)
226 Ridge regression
227 Boston Housing dataset and evaluated LinearRegression
228 Lasso
229 Linear Models for Classification
230 Decision boundaries of a linear SVM
231 Coefficients Learned by the models with the three different settings
232 Linear Models for Multiclass Classification
233 Predictions for all regions of the 2D
234 Strengths, weaknesses, and parameter
235 Decision Trees

R Language
236 Using R as a Calculator
237 Assignments
238 Vector of Values
239 Indexing of Vectors
240 Vectorized Expressions
241 Comments
242 Functions
243 Writing your own Functions
244 Vectorized Expressions and Functions
245 Control Structures
246 Fucnctor
247 Factors
248 Factors – 2
249 Data Frames
250 Dealing with Missing Values
251 Installing Packages
252 Data Pipelines
253 Writing Pipelines of Functional Calls
254 Writing Functions that work with the Pipelines
255 The Magical . Argument
256 Defining Functions Using
257 Anonymous Functions
258 Data Manipulation
259 Quickly Reviewing the Data
260 Breast Cancer Dataset
261 Breast Cancer Dataset – 2
262 Breast Cancer Dataset – 3
263 Boston Housing Dataset
264 The readr Package
265 Manipulating Data with dplyr
266 Some Useful dplyr Functions
267 Select()
268 Mutate()
269 Transmute()
270 Group by()
271 Tidying Data with tidyr
272 Visualizing Data
273 Longley Data
274 Longley Data and Geom point
275 Grammer of Graphics and ggplo2
276 qplot
277 Using Geometries
278 Making Graphs through ggplot
279 Using ggplot
280 Facets
281 Facet grid
282 Scaling
283 Using Iris Data Set
284 Themes and Other Graphical Transformation
285 Iris Dataset
286 Figures with Multiple Plots
287 Working with Large Dataset
288 Running out of Memory

Python X
289 Integer Values
290 Variables and Assignment
291 Identifiers
292 Floating-Point Types
293 Control Codes within Strings
294 User Input
295 The eval Function
296 Controlling the Print Function

Expressions and Arithmetic
297 Expressions
298 Operator Precedence and Associativity
299 Comments
300 Errors
301 Syntax Errors
302 Run-Time Errors
303 Logic Errors
304 Arithmetic Examples
305 More Arithmetic Operators
306 Algorithms

Conditional Execution
307 Boolean Expressions
308 Boolean Expressions 2.0
309 The Simple if Statement
310 The if-else Statement
311 Compound Boolean Expressions
312 Nested Conditionals
313 Multiway Decision Statements
314 Conditional Expressions
315 Errors in Conditional Statements

Iteration
316 The while statement
317 Definite Loops vs Indefinite Loops
318 The for statement
319 Nested Loops
320 Abnormal Loop Termination
321 The break statement
322 The continue statement
323 Infinite Loops
324 Iteration Examples
325 Computing Square root
326 Drawing a Tree
327 Printing Prime Number
328 Insisting on the Proper Input

Using Functions
329 Introduction to Using Functions
330 Standard Mathematical Functions
331 time Functions
332 Random Numbers
333 Importing Issues

Writing Functions
334 Function Basics
335 Using Functions
336 Main Function
337 Parameter Passing
338 Function examples
339 Better Organized Prime Generator
340 Command Interpreter
341 Restricted Input
342 Better Die Rolling Simulator
343 Tree Drawing Functions
344 Floating Point Equality
345 Custom Functions vs Standard Functions

More on Functions
346 Global Variables
347 Default Parameters
348 Recursion
349 Making Functions Reusable
350 Documenting Functions and Modules
351 Functions as Data

Lists
352 Lists
353 Using Lists
354 List Assignment and Equivalence
355 List Bounds
356 Slicing
357 Lists and Functions
358 Prime Generation with a List

List Processing
359 Sorting
360 Flexible Sorting
361 Search
362 Linear Search
363 Binary Search
364 List Permutations
365 Randomly Permuting a List
366 Reversing a List

Objects
367 Using Objects
368 String Objects

Python DIY
369 The Background of Software Development
370 Software
371 Development Tools
372 Learning Programming with Python
373 Writing a Python Program
374 A Longer Python program

Values and Variables
375 Values and Variables
376 Integer Values
377 Variables and Assignment
378 Identifiers
379 Floating-point Types
380 Control Codes within Strings
381 User Input
382 The Eval Function
383 Controlling the Print Function

Expressions and Arithmetic
384 Expressions and Arithmetic
385 Expressions
386 Operator Precedence and Associativity
387 Comments
388 Errors
389 Syntax Errors
390 Run-Time Errors
391 Logic Errors
392 Arithmetic Examples
393 More Arithmetic Operators
394 Algorithms

Conditional Execution
395 Conditional Execution
396 Boolean Expressions
397 Boolean Expressions 2.0
398 The Simple if Statement
399 The if-else Statement
400 Compound Boolean Expressions
401 Nested Conditionals
402 Multiway Decision Statements
403 Conditional Expressions
404 Errors in Conditional Statements

Iteration
405 Iteration
406 The while statement
407 Definite Loops vs Indefinite Loops
408 The for statement
409 Nested Loops
410 Abnormal Loop Termination
411 The break statement
412 The continue statement
413 Infinite Loops
414 Iteration Examples
415 Computing Square root
416 Drawing a Tree
417 Printing Prime Number

Using Functions
418 Using Functions
419 Introduction to Using Functions
420 Standard Mathematical Functions
421 time Functions
422 Random Numbers
423 Introduction to Using Functions
424 Importing Issues

Writing Functions
425 Writing Functions
426 Function Basics
427 Using Functions
428 Main Function
429 Parameter Passing
430 Function examples
431 Better Organized Prime Generator
432 Command Interpreter
433 Restricted Input
434 Better Die Rolling Simulator
435 Tree Drawing Functions
436 Floating Point Equality
437 Custom Functions vs Standard Functions

More on Functions
438 More on Functions
439 Global Variables
440 Default Parameters
441 Making Functions Reusable
442 Documenting Functions and Modules
443 Functions as Data

Lists
444 Lists
445 Using Lists
446 List Assignment and Equivalence
447 List Bounds
448 Slicing
449 Lists and Functions
450 Prime Generation with a List

List Processing
451 List Processing
452 Sorting
453 Flexible Sorting
454 Search
455 Linear Search
456 Binary Search
457 List Permutations
458 Randomly Permuting a List
459 Reversing a List

Objects
460 Objects
461 Using Objects
462 String Objects
463 List Objects

Custom Types
464 Custom Types
465 Geometric Points
466 Methods
467 Custom Type Examples
468 Stopwatch
469 Automated Testing
470 Class Inheritance

Mathematics and Statistics for Machine Learning
471 Introduction
472 What is Machine Learning
473 Examples of Machine Learning Applications
474 Learning Association
475 Classification
476 Regression
477 Unsupervised Learning
478 Reinforcement Learning

Supervised Learning
479 Supervised Learning
480 Learning a Class from Examples
481 Vapnik-Chervonenkis (VC) Dimension
482 Probably Approximately Correct (PAC) Learning
483 Noise
484 Learning Multiple Classes
485 Regression
486 Model Selection and Generalization
487 Dimensions of a Supervised Machine Learning Algorithm

Bayesian Decision Theory
488 Bayesian Decision Theory
489 Introduction
490 Classification
491 Losses and Risks
492 Discriminant Functions
493 Utility Theory
494 Association Rules

Parametric Methods
495 Parametric Methods
496 Introduction
497 Maximum Likelihood Estimation
498 Bernoulli Density
499 Multinomial Density
500 Gaussian (Normal) Density
501 Evaluating an Estimator
502 The Bayes’ Estimator
503 Parametric Classification
504 Regression
505 Tuning Model Complexity
506 Model Selection Procedures

Dimensionality Reduction
507 Dimensionality Reduction
508 Introduction
509 Subset Selection
510 Principal Components Analysis
511 Factor Analysis
512 Multidimensional Scaling
513 Linear Discriminant Analysis
514 Locally Linear Embedding

Clustering
515 Clustering
516 Introduction
517 Mixture Densities
518 k-Means Clustering
519 Expectation-Maximization Algorithm
520 Mixtures of Latent Variable Models
521 Supervised Learning after Clustering
522 Hierarchical Clustering
523 Choosing the Number of Clusters

Nonparametric Methods
524 Nonparametric Methods
525 Introduction
526 Nonparametric Density Estimation
527 Histogram Estimator
528 Kernel Estimator
529 k-Nearest Neighbor Estimator
530 Generalization to Multivariate Data
531 Nonparametric Classification
532 Condensed Nearest Neighbor
533 Nonparametric Regression
534 Running Mean Smoother
535 Kernel Smoother
536 Running Line Smoother
537 How to Choose the Smoothing Parameter

Decision Trees
538 Decision Trees
539 Introduction
540 Univariate Trees
541 Classification Trees
542 Regression Trees
543 Pruning
544 Rule Extraction from Trees
545 Learning Rules from Data
546 Multivariate Trees

Linear Discrimination
547 Linear Discrimination
548 Introduction
549 Generalizing the Linear Model
550 Geometry of the Linear Discriminant
551 Two Classes
552 Multiple Classes
553 Pairwise Separation
554 Parametric Discrimination Revisited
555 Gradient Descent
556 Logistic Discrimination
557 Two Classes
558 Multiple Classes
559 Discrimination by Regression

Multilayer Perceptrons
560 Multilayer Perceptrons
561 Introduction
562 Understanding the Brain
563 Neural Networks as a Paradigm for Parallel Processing
564 The Perceptron
565 Training a Perceptron
566 Learning Boolean Functions
567 Multilayer Perceptrons
568 MLP as a Universal Approximator
569 Backpropagation Algorithm
570 Nonlinear Regression
571 Two-Class Discrimination
572 Multiclass Discrimination
573 Multiple Hidden Layers
574 Training Procedures
575 Improving Convergence
576 Over training
577 Structuring the Network
578 Hints
579 Tuning the Network Size
580 Bayesian View of Learning
581 Dimensionality Reduction
582 Learning Time
583 Time Delay Neural Networks
584 Recurrent Networks

Local Models
585 Local Models
586 Introduction
587 Competitive Learning
588 Online k-Means
589 Adaptive Resonance Theory
590 Self-Organizing Maps
591 Radial Basis Functions
592 Incorporating Rule-Based Knowledge
593 Normalized Basis Functions
594 Competitive Basis Functions
595 Learning Vector Quantization
596 Cooperative Experts
597 Competitive Experts

Hidden Markov Models
598 Hidden Markov Models
599 Introduction
600 Discrete Markov Processes
601 Hidden Markov Models
602 Three Basic Problems of HMMs
603 Evaluation Problem
604 Finding the State Sequence
605 Learning Model Parameters
606 Continuous Observations
607 The HMM with Input
608 Model Selection in HMM

Combining Multiple Learners
609 Combining Multiple Learners
610 Rationale
611 Generating Diverse Learners
612 Model Combination Schemes
613 Voting
614 Error-Correcting Output Codes
615 Bagging
616 Boosting
617 Mixture of Experts Revisited
618 Stacked Generalization
619 Fine-Tuning an Ensemble
620 Cascading