Lesson 3 In-Class Discussion ✅

Jeremy will cover NLP and ULMFit in much more detail in a future lesson. This was just a brief example.

7 Likes

Very similar yes. I haven’t read the details of the proof, but I’m pretty sure both of them use the same mathematical theorem behind the scenes.

2 Likes

Yes, I think it’s the same concept.

1 Like

I understand how fully connected layers relate to linear models, but don’t convolution layers do something sort of different?

1 Like

Use SentencePiece Byte-Pair-Encoding (BPE): https://github.com/google/sentencepiece ?

4 Likes

Some satellite images has 4 channels, how can we deal with 4 channels or 2 channels datasets using pretrained models?

17 Likes

Character level language models are interesting too http://karpathy.github.io/2015/05/21/rnn-effectiveness/

1 Like

For 2 channels you could create a dummy 3rd channel that is the average of the 2 channels

2 Likes

Like if another channel is from a depth sensor, like in the head pose data from the Kinect?

1 Like

are certain shapes, or classification problems, more suited to say relu. for example with fourier (sp) transforms takes a ton of terms to build a step change, but one term to build a sine wave. is there something analogous four relu and the size of architecture, or size of middle layers?

For 4 channels, you could try to do some kind of dimensionality reduction (linear combinations of channels?) to transform to 3 channels.

1 Like

Does predict function return multiple labels for multi-label classification?

2 Likes

Is it possible to create a model that can predict a class and a regression number by just creating the correct databunch?

1 Like

Well, you can train two separate learners for that purpose.

1 Like

Thank you! As always, great class

1 Like

btw, congrats to everyone on still being here live. We have lost a lot of live viewers :wink:
lesson 1 had >1000, lesson 2 still >500, today we were down to a max of 278 youtube watchers if I saw correctly! (edit: others saw 400 watchers in the beginning) I still think it’s worth it getting up early! :+1:

8 Likes

But it might be better to learn the class and the regression number simultaneously.

1 Like

After having converted the dicom images to png files i created the following open_image substitute. The you can use the pretrained model for rgb images as in the course resnet34, resnet50 …

#Function to open 16bit grayscale (fx an xray as png) and convert it to an rgb-tensor without loss of precision
#then you can assing it to the datasets like so: dsTrain.image_opener = dsValid.image_opener = open_image_16bit2rgb
#or use the datablock logic (i have not tried that)

def open_image_16bit2rgb( fn ):
a = np.asarray(PIL.Image.open( fn ))
a = np.expand_dims(a,axis=2)
a = np.repeat(a, 3, axis=2)
return Image( pil2tensor(a, np.float32 ).div(65535) )

3 Likes

https://www.youtube.com/watch?v=VPg2ZlRPiXI

2 Likes

Question: In the notebook it says we need to use “ImageMultiDataset” and it sounds like something to do manually or pay attention to. But I cannot find any reference to that afterwards. Is that change done automatically when using the .label_from_csv()? After running the notebook and looking at predictions (learn.TTA()),it seems like the output goes through a softmax and not sigmoid. This should not be the case for a mulitlabel problem?!

3 Likes