ChanServ changed the topic of #mlpack to: "mlpack: a fast, flexible machine learning library :: We don't always respond instantly, but we will respond; please be patient :: Logs at http://www.mlpack.org/irc/
ImQ009 has joined #mlpack
rcurtin[m] has quit [Quit: Idle for 30+ days]
knightxerons has joined #mlpack
knightxerons has quit [Remote host closed the connection]
< KimSangYeon-DGU[>
<rcurtin "looks like t-shirts are set up c"> Looks so nice
< rcurtin>
yeah, agreed, let's see what they look like in person :-D
< KimSangYeon-DGU[>
Awesome!
< KimSangYeon-DGU[>
Hi sakshamb189 kartikdutt18 Are you there?
< sakshamb189[m]>
yes I am here
< kartikdutt18[m]>
Hi KimSangYeon-DGU , sakshamb189 , I'm here.
< KimSangYeon-DGU[>
Ok, did you guys have a chance to look at the email?
< kartikdutt18[m]>
I did.
< sakshamb189[m]>
KimSangYeon-DGU: yes
< KimSangYeon-DGU[>
I think we need to prioritize the work
< kartikdutt18[m]>
So first, I can hard code the running mean and variance as PoC, right?
< KimSangYeon-DGU[>
Yes, by doing so, we can check if the convertedweight works or not
< KimSangYeon-DGU[>
* Yes, by doing so, we can check if the converted weight works or not
< KimSangYeon-DGU[>
Does it make sense?
< kartikdutt18[m]>
Right makes sense, I can get it done by tomorrow and then test it.
< KimSangYeon-DGU[>
Cool
< KimSangYeon-DGU[>
After that, I think it's better to finish the Darknet PR
< sakshamb189[m]>
and I think we are going to leave the work on the yolo pre-processor for now
< sakshamb189[m]>
?
< sakshamb189[m]>
Also kartikdutt18 I thought you were training YOLO from scratch. Did you get any results from that?
< kartikdutt18[m]>
Sure makes sense, I completed the implementation part for it and we can come back to it after darknet.
< kartikdutt18[m]>
<sakshamb189[m] "Also kartikdutt18 I thought you "> I was training Darknetv1 (same as YOLO but the top part is for classification) and I got 35% training and 23% validation accuracy in 37 epochs.
< KimSangYeon-DGU[>
Is the training still in progress?
< kartikdutt18[m]>
Yes it is, currently at 37th epoch.
< KimSangYeon-DGU[>
Oh, what dataset did you use?
< KimSangYeon-DGU[>
imagenette
< kartikdutt18[m]>
Cifar10 (10k subset), I tried imagenette however loading time for it was very larger than the time for first epoch.
< sakshamb189[m]>
I would say the accuracy is still quite a bit low. Maybe the model is not meant to be used with the CIFAR dataset considering that we are also not able to find any examples online.
< kartikdutt18[m]>
* Cifar10 (10k subset), I tried imagenette however loading time for it was larger than the time for first epoch.
< kartikdutt18[m]>
Should I switch to imagenette (with transfered weights)?
< sakshamb189[m]>
yes I think we could use that just for computing the accuracy and testing. But I wouldn't use it for training because it would take too long and be unrealistic.
< kartikdutt18[m]>
Imagenette has the same number of images as Cifar10 subset, I tried a single epoch on it and the training time didn't differ much.
< sakshamb189[m]>
oh wait I thought we were talking about ImageNet
< KimSangYeon-DGU[>
Imagenette is a subsetof ImageNet
< KimSangYeon-DGU[>
* Imagenette is a subset of ImageNet
< sakshamb189[m]>
Do we have previous benchmarks of this dataset with darknet?
< kartikdutt18[m]>
I think KimSangYeon-DGU , trained Darknet19 on it and got more than 80% accuracy with 100 or more epochs if I remember right. I'll check the logs.
< KimSangYeon-DGU[>
Let me check as well
< kartikdutt18[m]>
<KimSangYeon-DGU[ "@kartikdutt18:matrix.org: With t"> This was the last message.
< KimSangYeon-DGU[>
Yes
< KimSangYeon-DGU[>
And, also I trained the model with CIFAR 10
< KimSangYeon-DGU[>
the validation accuracy was less than 20% I remember(?)
< KimSangYeon-DGU[>
kartikdutt18: Can you find my log?
< kartikdutt18[m]>
<KimSangYeon-DGU[ "It was 10% accuracy"> I think this message was for CIFAR with Darknet19
< KimSangYeon-DGU[>
Oh... fast
< KimSangYeon-DGU[>
I tried also though
< kartikdutt18[m]>
Also I'm training Darknetv1 (same as tinyYOLOv1) and not darknet19 which has training time of two hours and half hour or more for evaluation on training and validation set.
< kartikdutt18[m]>
It has half the size of Darknet19.
< KimSangYeon-DGU[>
with CIFAR 10 dataset?
< kartikdutt18[m]>
Yes.
< KimSangYeon-DGU[>
sakshamb189: I think the ImageNet is too large to be trained with CPU operation.
< sakshamb189[m]>
so, yeah that's why we were using Imagenette right?
< kartikdutt18[m]>
Agreed. Even loading the imagenet would be a tedious task.
< KimSangYeon-DGU[>
Yeah
< KimSangYeon-DGU[>
Does the imagenette make sense?
< kartikdutt18[m]>
Imagenette with Darknet 19?
< KimSangYeon-DGU[>
Yes
< kartikdutt18[m]>
or v1?
< KimSangYeon-DGU[>
Darknet 19
< kartikdutt18[m]>
Sure, I can put it on train (with transferred weights) so number of epochs required will be less.
< KimSangYeon-DGU[>
I guess we can see the higher accuracy than the one with CIFAR10 with the benchmark I tried
< KimSangYeon-DGU[>
sakshamb189: does it make sense to train Darknet-19 with imagenette ?
< sakshamb189[m]>
yes sure. I think it would be a good idea since you have already tested it out.
< KimSangYeon-DGU[>
BTW, if we had the converter, we don't need to train it from scratch right?
< KimSangYeon-DGU[>
<sakshamb189[m] "yes sure. I think it would be a "> Great!
< sakshamb189[m]>
what dataset is the original model trained on?
< kartikdutt18[m]>
<KimSangYeon-DGU[ "BTW, if we had the converter, we"> Since we can transfer the weights, we only need to set the right running mean and variance. If we can set that as well, we don't need to train it at all.
< kartikdutt18[m]>
<sakshamb189[m] "what dataset is the original mod"> Darknet19/53 are trained on imagenet.
< sakshamb189[m]>
yes so, it should work
< kartikdutt18[m]>
<KimSangYeon-DGU[ "BTW, if we had the converter, we"> We don't need to do that right now as well. We can transfer weights and training with transfered weights and low lr won't change the weights much however the will set the running mean and variance.
< kartikdutt18[m]>
> <@kimsangyeon-dgu:matrix.org> BTW, if we had the converter, we don't need to train it from scratch right?
< kartikdutt18[m]>
* We don't need to do that right now as well. We can transfer weights and training with transfered weights and low lr won't change the weights much however it will set the running mean and variance.
< KimSangYeon-DGU[>
Ok, then, what work do we need to focus on?
< KimSangYeon-DGU[>
first
< kartikdutt18[m]>
Let me know if this makes sense, I will put the darknet19 on train with transferred weights tonight and I will hardcode running mean and variance as PoC while the model is training.
< kartikdutt18[m]>
2. Then we can work on adding more tests to the PreProcessor.
< kartikdutt18[m]>
3. We can define the Loss function for YOLO model and transfer weights and run inference.
< sakshamb189[m]>
I am not sure if the darknet model is already trained on the Imagenet why do we need to train it further?
< kartikdutt18[m]>
While running inference the output of batch norm layer is dependent on running mean and variance as well aside from trainable parameters. If running mean and variance are 0 then the output will not be normalized.
< kartikdutt18[m]>
So they are an extra parameter that we need to transfer to reproduce same results. Kindly let me know if this makes sense.
< sakshamb189[m]>
alright sounds good. Let's try to finish this soon.
< KimSangYeon-DGU[>
Ok, do you guys have anything to discuss?
< KimSangYeon-DGU[>
I'm fine with that
< kartikdutt18[m]>
Great, I think that's it from my side.
< KimSangYeon-DGU[>
Ok, I'm done as well
< sakshamb189[m]>
Alright then let's meet next week. Have a nice weekend.
< kartikdutt18[m]>
Great, Have a great week everyone.
< KimSangYeon-DGU[>
Have a nice week!
< shrit[m]>
rcurtin I have tried to resolve the serialization of arma::matrix as pointed out by conrad. I have extracted the functions outside the classes. The only issue I am facing now is the duplicated of the typdef in the Bones files.
< shrit[m]>
If you can help me with this, that would be great
< shrit[m]>
typedef SpCol<elem_type> vec_type; This is repeated when doing: typedef Col<elem_type> vec_type;
< rcurtin>
sure, I will try and look later today (a bit overwhelmed with meetings at the moment)
< rcurtin>
ah, I can help quickly herer if it is small
< shrit[m]>
Ok no worries,
< shrit[m]>
Maybe we need to rename them, but I am afraid of the usage in mlpack
< rcurtin>
try removing the `serialize` functions from `Mat_extra_bones.hpp` and `Mat_extra_meat.hpp` and putting them in their own file
< rcurtin>
basically, they do not need to be a part of the file defined in arma_extend.hpp as ARMA_EXTRA_MAT_PROTO, etc.