wiki:GSoC2016/LetorStabilisation/Journal

Pre Community Bonding

  • Updated subdirectory structure of xapian-letor.
    1. Created subdirectories api/, ranker/, include/xapian-letor/, and move appropriate files to them.
    2. Created xapian-letor.h in include/
  • Refactoring xapian-letor
    1. PIMPL refactoring of FeatureVector class.
    2. Moved include/xapian-letor/letor_internal.h to api/. Since this header had private implementation details, include wasn't the right place for it.
    3. Removed evalmetric module since it was non-functional.
    4. PIMPL refactoring of FeatureManager class (Created featuremanager_internal.h and featuremanager_internal.cc in api/ which hides away the private implementation details).
    5. Updated/added documentation comments in public API headers.

Community Bonding Week 1: April 25-May 1

No contributions

Community Bonding Week 2: May 2-May 8

Working on features (FeatureVector, FeatureManager, Features classes) to see if there's anything left that needs refactoring. Making sure that my branch is in line with v-hasu's up till now and introducing code wherever required.

Community Bonding Week 3: May 9-May 15

University final exams. Making minor changes to the code to make sure that my branch is in line with v-hasu's up till now and introducing code wherever required.

Community Bonding Week 4: May 16-May 22

University exams continue.

Coding Week 1: May 23-May 29

University exams continue.

Coding Week 2: May 30-June 5

June 3: Resumed work on project full-time.

June 4, 5: Completed introducing code from v-hasu's branch for non-machine learning classes.

Coding Week 3: June 6-June 12

June 6, 7, 8: Re-introduced code due to the incorrect earlier introduction from v-hasu's master branch instead of gsoc2014. Opened PR.

June 9: Started working on the test suite for letor

June 10: Understood how test suite is working. Imported it to xapian-letor.

Coding Week 4: June 13-June 19

June 13: Successfully built the test suite for xapian-letor.

June 14: Started working on integrating ListNET and writing tests for the entire pipeline simultaneously.

June 15, 16, 17: Completed integrating ListNET and NDCGScore. Testing the code workflow.

Coding Week 5: June 20-June 26

Using this week to add some API tests, refactor existing methods and incorporating suggestions from the latest PR.

(Updated project timeline after mid-term discussion) Project plan

Coding Week 6: June 27-July 3 (Midterm deadline June 27)

June 27, 28: Refactoring and documentation updates.

June 29: Verifying v-hasu's implementation of ListNet as it doesn't seem correct. Using RankLib implementation and the paper as a reference.

June 30, July 1: Fixed bugs in ListNet implementation. Ran tests to check for correctness.

Coding Week 7: July 4-July 10

Opened PR for test suite integration (PR#110). Started integrating SVMRanker.

Coding Week 8: July 11-July 17

July 11-13: Integrated SVMRanker

July 14, 15: Started working on updating API structure, as discussed on the mailing list

Coding Week 9: July 18-July 24

July 18-21: Understanding implementation of ListMLE.

July 21-24: ListMLE ready for integration.

Read API design for C++ as a side reference

Coding Week 10: July 25-July 31

My laptop had a logic board failure. No major contributions this week. Spent time arranging and setting up a replacement system.

Coding Week 11: August 1-August 7

Opened up a PR for removing RankList and made minor fixes (PR#116). Spent time finalising API changes.

Coding Week 12: August 8-August 14

August 8 - 11: Worked on Feature and FeatureList API changes. (PR#120)

August 12: Started working on adding exception handling

August 13: Updated ListNET with API changes. Update questletor.cc and added trainletor.cc in /bin

Submit code and evaluations: August 15-August 23

August 15: Integrated NDCGScore with API changes. Updated letor.rst in /docs

August 16-19: Opened PR for integrating ListNET and NDCGScore (PR#123). Made fixes for points highlighted in code review.

August 19-20: Completed exception handling.

August 20: Started adding tests for the user-facing API.

Last modified 3 years ago Last modified on 20/08/16 22:14:04
Note: See TracWiki for help on using the wiki.