Ch1 & Ch2 End-of-Chapter Questions Flashcards

1
Q

What was the the name of the first device that was based on the principle of the artificial neuron?

A

Mark I Perceptron (Rosenblatt)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What were the two theoretical misunderstandings that held back the field of neural networks?

A
  1. Marvin Minsky and Syemour Papert wrote book called Perceptrons, where they showed that a single layer of these devices was unable to learn even simple mathematical functions. They also showed that adding more layers solved the problem, but only the first insight became widely known.
  2. In the 80s, people started building models with two layers, which theoretically was enough to allow any mathematical function to be approximated. However, these networks were too big and too slow to be useful in practice.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a GPU?

A

Graphics Processing Unit, a.k.a. graphics card. A kind of computer processor that can handle thousands of single tasks at the same time. GPUs can run neural networks hundreds of times faster than regular CPUs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Why is it hard to use a traditional computer program to recognize images in a photo?

A

Because the steps we take to recognize an image are ambiguous since they happen in our brain. Without knowing the steps, we can’t write a program.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the name of the theorem that shows that a neural network can solve any mathematical problem to any level of accuracy?

A

The universal approximation theorem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is a metric? How does it differ from loss?

A

A metric measures the quality of a model’s predictions using the validation set, and it’s chosen to be something easy for people to understand. Loss is a measure of performance that the training system can use to update weights automatically, and it’s chosen to be something easy for SGD to use.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the “head” of a model?

A

The head of a model is the part that is newly added to the pretrained model to be specific to the new dataset.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is an architecture?

A

It’s the functional form of a model. Model and architecture have been used interchangeably.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is segmentation?

A

Creating a model that can recognize the content of every individual pixel in an image

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Where do neural networks used for text models have a major deficiency?

A

Deep learning is good at imitating human text, but it is not good at generating correct responses. So, it sounds like a human, but it’s saying the wrong things.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are possible negative societal implications of text generation models?

A

Neural networks could be used to generate text that sounds good, but that could spread disinformation, create unrest, and encourage conflict.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

In situations where a model might make mistakes, and those mistakes could be harmful, what is a good alternative to automating a process?

A

Start out with a manual process and the model running at the same time. A person would check the results of the model and fully control any decisions until we know the model is doing what we want.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What’s a key downside of directly using a deep learning model for recommendation systems?

A

The model will tell you which products the customer likes (based on past purchases), but it is not good at giving recommendation of new products (ones that are not the same as what she has bought already) that would be useful for the customer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What does the splitter parameter to DataBlock do?

A

It defines how to split the data into a training and validation sets.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What 4 things do we need to tell fastai to create DataLoaders?

A
  1. What kinds of data we have
  2. How to get the list of items
  3. How to label these items
  4. How to create the validation set
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is data augmentation? Why is it useful for vision tasks?

A

Data augmentation refers to creating random variations of our input data so that they appear different but do not change the meaning of the data. We can use this to increase the amount of input data and to have our neural network learn different versions of pictures of the same object.

17
Q

What is the difference between item_tfms and batch_tfms?

A

item_tfms refers to item transforms that run on each individual item, e.g. an image.

batch_tfms refers to transforms that run on a batch of items

18
Q

What is it called when we use a model for making predictions, instead of training?

A

inference

19
Q

What are IPython widgets?

A

IPython widgets are GUI components that bring together JavaScript and Python functionality in a web browser, and can be created and used within a Jupyter notebook.

20
Q

When would you use a CPU for deployment?

When might a GPU be better?

A

In most cases, you should use a CPU for deployment. You should only consider using a GPU if your app gets so popular that it would be faster to start running batches of data in parallel.

21
Q

What are the downsides of deploying your app to a server, instead of to a client (or edge) device such as a phone or PC?

A
  • You app will require a network connection
  • There will be some latency each time the model is called
  • There could be concerns about data privacy if the data has to go to a remote server
  • Managing the complexity and scaling the server can create additional overhead. If a model is run on edge devices, each user is bringing their own compute resources, which is easier to scale with an increasing number of users.
22
Q

What is out-of-domain data?

A

It’s data seen in production that is significantly different than the data the model was trained on.

23
Q

What is domain shift?

A

It’s when the type of data that our model sees changes over time. Data could change so much over time that the original training data becomes irrelevant.

24
Q

What are the 3 steps in the deployment process?

A
  1. Manual process: Use an entirely manual process to drive decisions and run the deep learning model in parallel. Humans check all predictions.
  2. Limited scope deployment: Roll out the model in limited locations or for a limited time under careful human supervision.
  3. Gradual expansion: Expand the use of the model to more locations or for a longer amount of time gradually. Consider all the ways in which the system could go wrong and, based on this, create really good reporting systems so that you are aware of any changes in the model’s behavior.