GSoC 2021 @ INCF¶
Project: Measure the Quality of CerebUnit Validation Tests
Hi!👋🏻, I would begin with Thanking You🤗 for your time to read about my stuff for GSoC 2021 @ INCF. Google Summer of Code (GSoC) is a great opportunity for students to meet with professionals from diverse communities and backgrounds with a chance to work and flourish under their guidance as a mentee.
I am Harsh Khilawala, Sophomore at Charotar University of Science and Technology (CHARUSAT), India. I would be contributing on the Project: Measure the Quality of CerebUnit’s Validation Tests. Also have great interest in the field of Research in the domains not limited to AI/ML, Neural Networks, Web Semantics.
Week 1 (June 7 - June 13)¶
Initial interaction with the mentor. 👋🏻
Learn more about the project.
Discussed mode of communication and its frequency. 🤝🏻
Discussed approaching the project during the initial phase.
Week 2 (June 14 - June 20)¶
Learn Docker and containerization. 🐳
Setting up the project locally.
Learn about agile methodologies.
Learn about Behavior Driven Development.
Learn about Test Driven Development.
Week 3 (June 21 - June 27)¶
Fixing issues faced during local installation of project due to dependencies issue (wild goose hunt along with the mentor to fix the bug 🐛!).
Running the validation test against sample data.
Get idea about the results obtained from validation.
Learn basic concepts of Statistics and Hypothesis Testing. 📔
Discussed possible approach with mentor to measure quality of validation tests. (Didn’t work 😐)
Week 4 (June 28 - July 4)¶
Make small changes in sample data.
Observe and analyse the change in results obtained from validation tests.
Develop Python script to generate set of JSON files with mock data generated at random. 👨🏻💻
Week 5 (July 5 - July 11)¶
Running the validation tests against the generated mock data.
Calculate the relative error percentage for result obtained from each mock data file.
Store the results obtained from validation tests in tabular format. 📋
Prepare a document for storing the table containing stats and error percentage. 📄
Week 6 (July 12 - July 18)¶
Running validation tests against different set of mock data values.
Keep track of all the results obtained in tabular format. 📚
Approach to obtain outcomes like True Positives, False Positives, True Negatives and False Negatives theoretically.
Theoretical Calculation of Specificity, Sensitivity, Negative Predictive Value and Positive Predictive Value from the obtained outcomes. 📊
Week 7 (July 19 - July 25)¶
Improve code efficiency by eliminating the redundant member variables. 🗑
Improvising code to change the class methods for MockData class to static methods.
Modified TestMetrics class to entirely have class instance methods instance of seperate kind of methods.
Week 8 (July 26 - August 1)¶
Work on Documentation for some of methods for MockData class using ReStructuredText. 📰
Work on Documentation for some of methods for TestMetrics class using ReStructuredText.
Make some minor changes in code as in context to user experience.
Week 9 (August 2 - August 8)¶
Complete Documentation for MockData Class.
Complete Documentation for TestMetrics Class.
Project Presentation to the community (Mentor and his working group). 📽
Build the documentation with the help of Sphinx. 🔧
Week 10 (August 9 - August 15)¶
Get the documentation up and working with Sphinx.
Improve code and documentation as in context for better user experience.
Prepare blog for sharing the GSoC journey in Weekly accomplisments. 🏆
Update the Final report.
Important Links¶
Link to Project Repository: CerebStats
Link to the PR which includes contributions made during GSoC’21: Pull Request
Link to CerebStats Documentation: CerebStats Documentation
Link to GSoC’21 Project Report: Project Report
- Link to Data Tables generated from the results obtained by running validation tests against varying mock data:
Link to Table for Theoretical calculation of various metrics: Metrics Table