Blog for regular updates on GSoC project
Table of Contents
- Community Bonding Period: April 23-May 20
- Coding Week 1: May 21-May 27
- Coding Week 2: May 28-June 3
- Coding Week 3: June 4-June 10
- Coding Week 4: June 11-June 17
- Coding Week 5: June 18-June 24
- Coding Week 6: June 26-July 1
- Coding Week 7: July 2-July 8
- Coding Week 8: July 9-July 15
- Coding Week 9: July 16-July 22
- Coding Week 10: July 23-July 29
- Coding Week 11: July 30-August 5
- Coding Week 12: August 6-August 12
- Coding Week 13: August 13-August 20 (Final evaluation based on work up …
Community Bonding Period: April 23-May 20
- Checking out and building the code.
- Getting well versed with existing LETOR code.
- Read and understand the Xapian Internals (https://xapian.org/docs/internals.html)
- Build a small demo to get well versed with the Torch 3 library.
- Get help in finalizing the technical details, usability of features, details of algorithms and other specifications.
- Brush up on all required knowledge of the algorithms.
- Implement basic Neural Networks using the library.
- Incorporate minor changes in the leor_internals.cc file to make it compatible for the different modules.
Coding Week 1: May 21-May 27
- Created my Git repoitory.
- Learnt how to push changes and submit pull request to Master branch.
- Looked in to refactoring of the existing letor code.
Coding Week 2: May 28-June 3
- Updated the FeatureManager class with the various feature calculating methods.
- Made changes in Letor_Internals_updated.cc to reflect the changed structure of FeatureManager.
- Created FeatureVector.h to handle the FeatureManager class.
- Updated the function definitions of FeatureVector.h.
Coding Week 3: June 4-June 10
- Changed the structure of LETOR to include Letor_Features.h and Letor_Features.cc to handle all the feature calculation tasks.
- Made changes in the definition of Ranklist.h to create a ranklist of documents which would represent the ranked documents.
- Added definition of normalize() method in Ranklist.cc.
- Modified load_Relevance() method of featurevector.cc
Coding Week 4: June 11-June 17
- Made changes in the refactored code to make it compile successfully.
- Added definitions in ranker.cc and updated the Letor_Internal.cc to adapt to the new refactored code.
- Looked into Torch library to understand their framework for our use in ListMLE algorithm.
- Made changes to GradientMachines.cc in Torch/gradients/ to better understand its working.
- Understood MultiLayeredPerceptron.cc code of Torch.
- Made a few changes in MLP.cc for its usage in Letor(testing the changes left).
Coding Week 5: June 18-June 24
- Dealt with handling parameters of the neural network.
- Looked into the update rule of SGD parameters.
- Wrote the function to calculate the score of the ranklist elements as needed by the ListMLE algorithm.
- Updated code for calculating gradient.
Coding Week 6: June 26-July 1
- Looked into Permutation probabilities for Listwise approach for Learning to Rank.
- Wrote code that calculates the Top-1 Probability given a permutation.
- Understood and tried examples related to the Loss function of ListMLE algorithm.
- Wrote code for the ListMLE loss function.
- Working on the bridge between Xapian ranklist and the ListMLE code written till now.
Coding Week 7: July 2-July 8
- Worked on listmle_train()function to calculate the parameters from the training data.
- Wrote code for update_params part using the gradient descent algorithm.
- Integrated learn_model() function with listmle_train().
Coding Week 8: July 9-July 15
- Started implementing Autoencoder class.
- Wrote code for train_autoencoder() function.
- Implemented the score_doc() function of the ListMLE class.
- Integrated the score_doc function with the rank() function.
Coding Week 9: July 16-July 22
- Wrote code forsort_by_score()function in RankList class.
- Implemented get_data() function in RankList class.
- Implemented the load_model() and save_model() function in ListMLE class.
- Wrote code for get_score()in FeatureVector class.
- Implemented set_score(double score1) and get_fvals() in FeatureVector class which are to be used by RankList and ListMLE class.
- Implemented get_feature_value(int index) method in FeatureVector class; used by RankList class.
- Completed the implementation of ListMLE class.
Coding Week 10: July 23-July 29
- Implemented the normalize function of the RankList class.
- Modified the questletor file to adapt it for the refactored code.
- Made few changes in the learn_model function of letor_internal.cc.
Coding Week 11: July 30-August 5
Coding Week 12: August 6-August 12
Coding Week 13: August 13-August 20 (Final evaluation based on work up to August 20)
Last modified
9 years ago
Last modified on 01/26/16 10:10:43
Note:
See TracWiki
for help on using the wiki.