Table of Contents
- Community Bonding: April 25-May 22
- Coding Week 1: May 23-May 29
- Coding Week 2: May 30-June 5
- Coding Week 3: June 6-June 12
- Coding Week 4: June 13-June 19
- Coding Week 5: June 20-June 26 (Midterm Evaluation)
- Coding Week 6: June 27-July 3
- Coding Week 7: July 4-July 10
- Coding Week 8: July 11-July 17
- Coding Week 9: July 18-July 24
- Coding Week 10: July 25-July 31
- Coding Week 11: August 1-August 7
- Coding Week 12: August 8-August 14
- Submit code and evaluations: August 15-August 23
Community Bonding: April 25-May 22
During this period, my focus is to:
- complete further research required for understanding the weighting functions I'll be implementing. [done]
- understand Xapian::weight base class and its inherited classes. [done]
- understand the testing of existing weighting scheme functions. [done]
- get familiar with the evaluation module in Xapian. [done]
- prepare draft/pseudo-code for implementation of BM25+, PL2+, Dir+ & Piv+ for helpful review by mentors.
Coding Week 1: May 23-May 29
End semester exams continue until the end of this week.
Coding Week 2: May 30-June 5
- Start working on the deficiency of existing BM25 by implementing proposed changes.
- Start implementing the BM25+ function.
Coding Week 3: June 6-June 12
- Complete the implementation of BM25+ function.
- Start testing implemented BM25+ function -- automated test cases.
Coding Week 4: June 13-June 19
- Write documentations for BM25+ Note: This wouldn't take much time so most of the time can be utilized for testing.
- Refactor and test BM25+ to improve test coverage.
Coding Week 5: June 20-June 26 (Midterm Evaluation)
- Submit implemented BM25+ function (with test cases + documentations) for mid-term evaluations
- Start implementing the PL2+ function.
- Setup evaluation module and obtain required data to conduct evaluation.
Coding Week 6: June 27-July 3
- Complete the implementation of PL2+ weighting function.
- Test and refactor PL2+ weighting function.
Coding Week 7: July 4-July 10
Evaluation: BM25+ and PL2+
- Finish testing and write documentation for PL2+ function.
- Perform evaluation of BM25+ and PL2+ both.
Coding Week 8: July 11-July 17
- Start implementing the Dir+ weighting function.
- Test and refactor Dir+ function.
- Write documentation for it.
Coding Week 9: July 18-July 24
- Start working on the implementation of Piv+ normalization function.
Coding Week 10: July 25-July 31
- Complete implementation and start testing it.
- Test and refactor the code.
Coding Week 11: August 1-August 7
Evaluation: Dir+ and Piv+
- Complete testing of Piv+ function.
- Write documentations for Piv+ function..
- Evaluate effectiveness of Dir+ & Piv+ normalization function.
Coding Week 12: August 8-August 14
This week is kept as buffer to adjust any unexpected delays in the scheduled project plan and also, this is the time to start looking at Additional tasks
Submit code and evaluations: August 15-August 23
Further clean all the code, improve documentation, and then after consulting with mentors, I will submit my code samples.This will mark the successful completion of my project and an awesome summer of code!