Chapter 5. Neural Networks in a Nutshell
In Chapter 2, we briefly touched on the topic of neural networks in our exploration of the machine learning landscape. A neural network is a set of equations that we use to calculate an outcome. They aren’t so scary if we think of them as a brain made out of computer code. In some cases, this is closer to reality than we should expect from such a cartoony example. Depending on the number of features we have in our data, the neural network almost becomes a “black box.” In principle, we can display the equations that make up a neural network, but at a certain level, the amount of information becomes too cumbersome to intuit easily.
Neural networks are used far and wide in industry largely due to their accuracy. Sometimes, there are trade-offs between having a highly accurate model, but slow computation speeds, however. Therefore, it’s best to try multiple models and use neural networks only if they work for your particular dataset.
Single-Layer Neural Networks
In Chapter 2, we looked at the development of an AND gate. An AND gate follows logic like this:
x1
<-
c
(
0
,
0
,
1
,
1
)
x2
<-
c
(
0
,
1
,
0
,
1
)
logic
<-
data.frame
(
x1
,
x2
)
logic
$
AND
<-
as.numeric
(
x1
&
x2
)
logic
## x1 x2 AND
## 1 0 0 0
## 2 0 1 0
## 3 1 0 0
## 4 1 1 1
If you have two 1 inputs (both TRUE), your output is 1 (TRUE). However, if either of them, or both, are 0 (FALSE), your output is also 0 (FALSE). This computation is somewhat similar to our analysis of logistic regression. In ...
Get Introduction to Machine Learning with R now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.