During this week I started implementing DBN in ann module of mlpack library. My first approach was to use already present RBM code by converting it to layer and use it with DBN class just like we do with FFN in mlpack but I faced some problems and after some struggle I changed my approach.

Problems I faced:-

While changing implementation of RBM I faced multiple problems such as I don’t have any access to Train() of RBM if I used it as a layer because we don’t have implementation of TrainVisitor in visitors. …

This week I was working with two problem finishing up the kernel_svm pr and starting my work DBN. So, all the work which is related to kernel_svm pr is pretty much done and I now to wait for some reviews on my pr. Waiting for getting it merged.

I have also started my work with DBN also. My first task is to change implementation of RBM module of mlpack such that I can use that as a layer and then I have to create a DBN class for training all those layers by Greedy approach. …

Hello everyone, during this week I managed to solve the memory issue with my kernel svm pr. It took extra-time to solve that memory issue. It was quite frustrating to solve that issue because I am quite new to these and it was hard for me to find where the problem is.

But at the end after multiple run of valgrind and and trying with multiple compilers I managed to find out the problem.

Multi-Class Classification:-

After the complete implementation of smo my next task was to implement code for Multi-Class Classification. I implemented one-vs-one method to train multiple…

Most of the time during this I was busy in solving the memory. It is the most mysterious thing to find out where the problem is with memory.

I am trying to run valgrind multiple times over my test code to find the problem. Some, of the problems with memory build I was able to solve but now, there are 35 memory issues which are needed to solve. I want to complete this kernel svm as soon as possible (may be this week) because there is a lot of work with DBN I have to start. …

This week I promised to complete the implementation of kernel_svm. I have completed the implementation and added tests but this implementation contains some problems when I am using any kernel function like gaussian, polynomial etc. It is not able to calculate the scores to return prediction. Otherwise implementation of smo algorithm inside the svm is working correctly but there is the problem with calculating score.


I have also implemented some tests for my kernel_svm. I am using multiple datasets such as mnist, concentric circles and two gaussian etc to test my implementation. …

During this week I learnt a lot about kernel-svm. So, this week goal was to complete the implementation of kernel-svm I have implemented the basic structure but right now it is not returning good prediction.


During this week I did a lot of debugging. I have a bad habit of writing buggy code which backfired me this week. As I wasted a lot of time in debugging that messy code of mine and the process is not yet completed. I am still struggling with my code because it is not returning the prediction as I assumed.

The problem…

This week I want to announce that finally all work for RBFN is complete and it is now merged and working. So, here is the link to my pr. I am happy that I have completed one milestone of my project.

Preparing for Next task.

So, this week I was just preparing for my next task to implement kernel svm. I was not much familiar with training the kernel svm most of the time of this week was spent in getting some understanding of kernel svm’s.

After realizing how little knowledge I have :)

Work on Kernel SVM:-

So, after…

This week was not that productive but at the end of week I started to implement Kernel-SVM in mlpack library.

Completed one module:-

So, in this week their is no work left for in the RBFN module. Now, it is complete and ready to be merged. This week I handled all the problems which are there in my implementation. The implementation to calculate maximum distance between two centers was wrong I changed that and now the RBFN module is in working condition.

Implementing Kernel-SVM:-

So, now I have started implementing the kernel-svm. I am trying to implement Gaussian kernel. It…

So, as I discussed in my previous week update about my struggle with testing RBFN and setting beta values in RBFN. There are multiple ways to set beta values every article represent represent a different way to do that. It was overwhelming to decide which way I should use to calculate beta values.

GSOC - Week 0

Hello, everyone thanks for reading my blog. First week of GSOC was filled with excitements for me. Now, I am a part mlpack community it is a great opportunity for me to work with such great members. This blog is a part of my project on which I am working on during this summer.

Description about my project:-

I am focusing on adding some Radial Basis Function Network and Deep Belief Network in ann module of mlpack Library also adding Radial Basis Function kernel as a part of my project. …

Himanshu Pathak

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store