<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SummerofReproducibility23 | UCSC OSPO</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/category/summerofreproducibility23/</link><atom:link href="https://deploy-preview-1007--ucsc-ospo.netlify.app/category/summerofreproducibility23/index.xml" rel="self" type="application/rss+xml"/><description>SummerofReproducibility23</description><generator>Wowchemy (https://wowchemy.com)</generator><language>en-us</language><lastBuildDate>Fri, 20 Oct 2023 00:00:00 +0000</lastBuildDate><image><url>https://deploy-preview-1007--ucsc-ospo.netlify.app/media/logo_hub6795c39d7c5d58c9535d13299c9651f_74810_300x300_fit_lanczos_3.png</url><title>SummerofReproducibility23</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/category/summerofreproducibility23/</link></image><item><title>Final Blog on Teaching Computer Networks with Reproducible Research: Developing a 'classroom competition' for adaptive video delivery</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edunet/20230820-srishti-j18/</link><pubDate>Fri, 20 Oct 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edunet/20230820-srishti-j18/</guid><description>&lt;p>Hello Again!&lt;/p>
&lt;p>I&amp;rsquo;m excited to present my final blog post summarizing the progress and achievements made over the 2023 Summer of Reproducibility Fellowship.I will be sharing the work I&amp;rsquo;ve created for the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/edunet">Teaching Computer Networks with Reproducible Research: Developing a &amp;lsquo;classroom competition&amp;rsquo; for adaptive video delivery&lt;/a>.&lt;/p>
&lt;h2 id="recap-of-the-journey">Recap of the Journey&lt;/h2>
&lt;p>In my &lt;a href="content/report/osre23/nyu/edunet/20230801-Srishti-j18">mid-term&lt;/a> evaluation, I discussed the initial milestones and challenges I encountered during this program. At that point, I studied the key figures from the research paper &amp;lsquo;&lt;a href="https://dl.acm.org/doi/10.1145/2491172.2491179" target="_blank" rel="noopener">Downton Abbey Without the Hiccups: Buffer-Based Rate Adaptation for HTTP Video Streaming&lt;/a>&amp;rsquo;. My primary objectives were to ensure compatibility with both Python 2 and Python 3 and to incorporate an &amp;lsquo;Estimated Download Rate&amp;rsquo; metric into the output file generated by the adaptive video client. Furthermore, I expanded the project to include two crucial visualizations: buffer occupancy vs. time and estimated download rate vs. time.&lt;/p>
&lt;h2 id="final-project-progress">Final Project Progress&lt;/h2>
&lt;p>In the final weeks of my internship, I worked towards my ultimate goal, which was to reproduce existing work and create a clear guide for future students. I aimed to enable them to build upon and improve this work. To achieve this, I created a new experiment using an existing one,&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="" srcset="
/report/osre23/nyu/edunet/20230820-srishti-j18/feature1_hu9d52f6d5cbdd1ece23828e42c8b71316_147352_f279db1f4805fb171d3cff4ae4a908dc.webp 400w,
/report/osre23/nyu/edunet/20230820-srishti-j18/feature1_hu9d52f6d5cbdd1ece23828e42c8b71316_147352_9e5cf37b8721460bee97304092b3b9fa.webp 760w,
/report/osre23/nyu/edunet/20230820-srishti-j18/feature1_hu9d52f6d5cbdd1ece23828e42c8b71316_147352_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edunet/20230820-srishti-j18/feature1_hu9d52f6d5cbdd1ece23828e42c8b71316_147352_f279db1f4805fb171d3cff4ae4a908dc.webp"
width="760"
height="442"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>which I titled &amp;ldquo;&lt;a href="https://github.com/Srishti-j18/adaptive-video/blob/68bd537a65eeec0f221ae095b35b18c1e8ffd2ef//notebooks/exec_policy.ipynb" target="_blank" rel="noopener">Compare Adaptive Video Policies&lt;/a>&amp;rdquo;&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="" srcset="
/report/osre23/nyu/edunet/20230820-srishti-j18/featured_hu28a6c98f585340505adb453b1827e333_184681_9db9d6a3e27e1f9a70c791dbc5fb72d7.webp 400w,
/report/osre23/nyu/edunet/20230820-srishti-j18/featured_hu28a6c98f585340505adb453b1827e333_184681_12adfaacac4f310f07b71c83727dd13e.webp 760w,
/report/osre23/nyu/edunet/20230820-srishti-j18/featured_hu28a6c98f585340505adb453b1827e333_184681_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edunet/20230820-srishti-j18/featured_hu28a6c98f585340505adb453b1827e333_184681_9db9d6a3e27e1f9a70c791dbc5fb72d7.webp"
width="760"
height="575"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>This experiment compares two policies: rate-based (basic) policy and
buffer-based (Netflix) policy. In the experiment, I covered the following key aspects:&lt;/p>
&lt;p>How Both Policies Work: I detailed the workings of both the rate-based and buffer-based policies, explaining how each policy selects the next bitrate, among other relevant information.&lt;/p>
&lt;p>Instructions for Execution of Policies: After conducting several experiments with different settings, I determined the most appropriate settings for this experiment. These settings have been added to the instructions for executing both policies, with a focus on ensuring similar &amp;ldquo;high&amp;rdquo; network rates, &amp;ldquo;low&amp;rdquo; data rates, similar durations of the &amp;ldquo;high&amp;rdquo; data rate before the
interruption, and similar durations of the &amp;ldquo;interruption.&amp;rdquo; This setup allows for an easy and clear comparison of the two policies.&lt;/p>
&lt;p>Discussion Part: In the discussion section, I addressed the differences that students can observe after conducting the experiment and visualising the graphs and videos.&lt;/p>
&lt;p>In conclusion, I would like to thank my mentor, &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a>, who has given me excellent guidance and would like to express my gratitude to OSRE23, where I have learned so much. This experience has been amazing for my personal and professional growth.&lt;/p></description></item><item><title>Final Blog on Using Reproducibility in Machine Learning Education</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20231018-msaeed/</link><pubDate>Wed, 18 Oct 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20231018-msaeed/</guid><description>&lt;p>Welcome back!&lt;/p>
&lt;p>In my final blog post for the 2023 Summer of Reproducibility Fellowship, I&amp;rsquo;ll be sharing my experiences and the materials I&amp;rsquo;ve created for the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/eduml">Using Reproducibility in Machine Learning Education project&lt;/a>. As a quick reminder, my mentor &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a> and I have been working on developing interactive open-source educational resources that teach reproducibility and reproducible research in machine learning. You can find my &lt;a href="https://drive.google.com/file/d/13HnCMZawpabiLdBoOiaJFF2mNXIPLCVJ/view?usp=sharing" target="_blank" rel="noopener">proposal here&lt;/a>.&lt;/p>
&lt;p>In this post, I&amp;rsquo;ll give you a rundown of my experience and share the materials I&amp;rsquo;ve created. If you haven&amp;rsquo;t checked out my previous blog posts, definitely take a look before diving into this one. Let&amp;rsquo;s get started!&lt;/p>
&lt;h2 id="why-is-this-project-important-">Why is this project important 🤔&lt;/h2>
&lt;p>Reproducibility is an essential aspect of scientific research, and it&amp;rsquo;s becoming increasingly important in the field of computer science. However, most efforts to promote reproducibility in education focus on students who are actively involved in research, leaving a significant gap in the curriculum for introductory courses. Our project aims to address this issue by incorporating reproducibility experiences into machine learning education.&lt;/p>
&lt;h2 id="why-reproducibility-matters-in-education-">Why Reproducibility Matters in Education 🎓&lt;/h2>
&lt;p>There are two primary reasons why we believe reproducibility belongs in the computer science classroom. Firstly, it allows students to experience the process of reproducing research firsthand, giving them a deeper understanding of the scientific method and its importance in the field. This exposure can inspire students to adopt reproducible practices in their future careers, contributing to a more transparent and reliable scientific community.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="" srcset="
/report/osre23/nyu/eduml/20231018-msaeed/reproducibilityBenifits_hudb7baafb83412fd51973fc577da0863d_141778_0f4e9e6ba00e070430ccd90e09800a28.webp 400w,
/report/osre23/nyu/eduml/20231018-msaeed/reproducibilityBenifits_hudb7baafb83412fd51973fc577da0863d_141778_22ad37d3ef94bfc2aa93cf4ba651684e.webp 760w,
/report/osre23/nyu/eduml/20231018-msaeed/reproducibilityBenifits_hudb7baafb83412fd51973fc577da0863d_141778_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20231018-msaeed/reproducibilityBenifits_hudb7baafb83412fd51973fc577da0863d_141778_0f4e9e6ba00e070430ccd90e09800a28.webp"
width="760"
height="207"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;em>Source: Fund, Fraida. &amp;ldquo;We Need More Reproducibility Content Across the Computer Science Curriculum.&amp;rdquo; Proceedings of the 2023 ACM Conference on Reproducibility and Replicability. 2023.&lt;/em>&lt;/p>
&lt;p>Secondly, as shown in the figure, involving students in reproducibility efforts can have a significant impact on the reproducibility ecosystem itself. Students can create reproducibility artifacts, such as replicable experiments or data analysis, that can be used by other researchers, including authors and graduate students. Additionally, students can consume reproducibility artifacts created by the research community, provide feedback, and suggest improvements. Authors appreciate this type of engagement, as it adds value to their work and promotes open science.&lt;/p>
&lt;h2 id="focusing-on-machine-learning-">Focusing on Machine Learning 🧐&lt;/h2>
&lt;p>Given the growing interest in machine learning and its relevance to reproducibility, our project decided to focus on this area. Machine learning already has a strong culture of reproducibility, with initiatives like &lt;a href="https://paperswithcode.com/" target="_blank" rel="noopener">Papers with Code&lt;/a> and the &lt;a href="https://paperswithcode.com/rc2022" target="_blank" rel="noopener">ML Reproducibility Challenge&lt;/a>. These efforts encourage researchers to share their code and reproduce recent machine learning papers, validating their results. By leveraging these existing resources, we can create learning materials that utilize real-world examples and foster hands-on reproducibility experiences for students.&lt;/p>
&lt;h2 id="the-interactive-notebooks-">The Interactive Notebooks 📖&lt;/h2>
&lt;p>We have created two learning materials that focus on machine learning and reproducibility. &lt;strong>The first material&lt;/strong> looks at a paper titled &lt;a href="https://arxiv.org/abs/1910.08475" target="_blank" rel="noopener">&amp;ldquo;On Warm Starting Neural Network Training&amp;rdquo;&lt;/a> by Jordan T. Ash and Ryan P. Adams. This paper discusses the concept of warm-starting, which involves using weights from a previously trained model on a subset of the dataset to train a new model. The authors compare the performance of warm-started models with randomly initialized models and find that the warm-started models perform worse as shown in the below figure.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="" srcset="
/report/osre23/nyu/eduml/20231018-msaeed/figure1_hu9d945c7dbee9ef6ef608a89a33d817c5_76602_5815498dd015ebc84b00505c90a65354.webp 400w,
/report/osre23/nyu/eduml/20231018-msaeed/figure1_hu9d945c7dbee9ef6ef608a89a33d817c5_76602_df01d4772e731cee04ae4783ac0cc994.webp 760w,
/report/osre23/nyu/eduml/20231018-msaeed/figure1_hu9d945c7dbee9ef6ef608a89a33d817c5_76602_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20231018-msaeed/figure1_hu9d945c7dbee9ef6ef608a89a33d817c5_76602_5815498dd015ebc84b00505c90a65354.webp"
width="760"
height="306"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Our material takes students through the process of identifying the different claims made in the paper and finding the corresponding experiments that support them. They will also learn how to use open-source code and available data to reproduce these experiments and understand the computational complexity associated with reproducing each experiment. This material can be found on both &lt;a href="https://github.com/mohammed183/re_warm_start_nn/tree/main" target="_blank" rel="noopener">github&lt;/a> and &lt;a href="https://chameleoncloud.org/experiment/share/5b5717df-9aa9-470f-b393-c1e189c008a8" target="_blank" rel="noopener">chameleon&lt;/a> where you can use chameleon to run the material on the required resources.&lt;/p>
&lt;p>&lt;strong>The second material&lt;/strong> examines the paper &lt;a href="https://arxiv.org/abs/2010.11929" target="_blank" rel="noopener">&amp;ldquo;An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale&amp;rdquo;&lt;/a> by Dosovitskiy et al., which introduces a novel way of applying the transformer architecture, which was originally designed for natural language processing, to image recognition tasks. The paper shows that transformers can achieve state-of-the-art results on several image classification benchmarks, such as ImageNet, when trained on large-scale datasets as shown in the following table.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="" srcset="
/report/osre23/nyu/eduml/20231018-msaeed/table1_hu639b2ac18dac1313dd35f10cc0ae8db7_237634_7faf7451ff08ac87e7d12ab941c77f8e.webp 400w,
/report/osre23/nyu/eduml/20231018-msaeed/table1_hu639b2ac18dac1313dd35f10cc0ae8db7_237634_5441e5e4c6ffed9b29244a3a3dcde852.webp 760w,
/report/osre23/nyu/eduml/20231018-msaeed/table1_hu639b2ac18dac1313dd35f10cc0ae8db7_237634_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20231018-msaeed/table1_hu639b2ac18dac1313dd35f10cc0ae8db7_237634_7faf7451ff08ac87e7d12ab941c77f8e.webp"
width="760"
height="354"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Our material guides students through the process of understanding which claims can and cannot be validated based on the available datasets and how complex it can be to validate each claim. Additionally, they will learn how to use pre-trained models to replicate computationally expensive experiments. Again this material can be on both &lt;a href="https://github.com/mohammed183/re_vit/tree/main" target="_blank" rel="noopener">github&lt;/a> and &lt;a href="https://chameleoncloud.org/experiment/share/8f0e34c5-d2c4-45be-8425-36686ad57650" target="_blank" rel="noopener">chameleon&lt;/a>.&lt;/p>
&lt;p>Both materials are designed to be easy to understand and interactive, allowing students to engage with the content and gain a deeper understanding of the concepts. Instructors can use these materials to assess their students&amp;rsquo; understanding of machine learning and reproducibility.&lt;/p>
&lt;h2 id="reflecting-on-the-journey">Reflecting on the Journey&lt;/h2>
&lt;p>As we wrap up our journey of creating beginner-friendly learning materials for machine learning using reproducibility, it&amp;rsquo;s time to reflect on the rewarding experiences and valuable lessons learned along the way. Our deep dive into the world of machine learning and reproducibility not only enriched our knowledge but also provided us with an opportunity to contribute to the community at the &lt;strong>UC Open Source Symposium 2023&lt;/strong> at UCSC.&lt;/p>
&lt;p>The symposium was a memorable event where we presented our work in a poster session. The diversity of the audience, ranging from professors and researchers to students, added depth to our understanding through their valuable feedback and insights. It was intriguing to see the potential applications of our work in various contexts and its capacity to benefit the broader community.&lt;/p>
&lt;p>This project has been a personal journey of growth, teaching me much more than just machine learning and reproducibility. It honed my skills in collaboration, communication, and problem-solving. I learned to distill complex ideas into simple, accessible language and create engaging, interactive learning experiences. The most fulfilling part of this journey has been seeing our work come alive and realizing its potential to positively impact many people. The gratification that comes from creating something useful for others is unparalleled, and we are thrilled to share our materials with the world.&lt;/p>
&lt;p>Your time and interest in our work are greatly appreciated! Hope you enjoyed this blog!&lt;/p></description></item><item><title>Learning Machine Learning by Reproducing Vision Transformers</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20231006-msaeed/</link><pubDate>Fri, 06 Oct 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20231006-msaeed/</guid><description>&lt;p>Hello again!&lt;/p>
&lt;p>In this blog post, I will be discussing the second material I created for the 2023 Summer of Reproducibility Fellowship. As you may recall from my &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230601-msaeed">first post&lt;/a>, I am working on the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/eduml">Using Reproducibility in Machine Learning Education&lt;/a> project with &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a> as my mentor. My goal is to create interactive open-source educational resources that teach reproducibility and reproducible research in machine learning (ML), as outlined in my &lt;a href="https://drive.google.com/file/d/13HnCMZawpabiLdBoOiaJFF2mNXIPLCVJ/view?usp=sharing" target="_blank" rel="noopener">proposal&lt;/a>.&lt;/p>
&lt;p>In this post, I will share with you my second material, and how it can be helpful in machine learning class to teach students about vision transformers and reproducibility at the same time. If you haven&amp;rsquo;t seen my first work, be sure to check out my &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230802-msaeed">previous blog post&lt;/a>. Without further ado, let&amp;rsquo;s dive in!&lt;/p>
&lt;h2 id="reproducing-an-image-is-worth-16x16-words-transformers-for-image-recognition-at-scale">Reproducing “An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale”&lt;/h2>
&lt;p>This material is a reproduction of Dosovitskiy et al.‘s 2020 paper, &lt;a href="https://arxiv.org/abs/2010.11929" target="_blank" rel="noopener">“An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale”&lt;/a>. This paper introduces the Vision Transformer (ViT), a novel architecture that applies the transformer model, originally designed for natural language processing tasks, to image recognition. The ViT model achieves state-of-the-art performance on several image classification benchmarks, demonstrating the potential of transformers for computer vision tasks.
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="" srcset="
/report/osre23/nyu/eduml/20231006-msaeed/ViT_hud9ed20979bb56dae4d8e9f4231875a17_383197_485ae1a0cccbdc73994be22901c125d5.webp 400w,
/report/osre23/nyu/eduml/20231006-msaeed/ViT_hud9ed20979bb56dae4d8e9f4231875a17_383197_f8af78acab4a91489ecff3308bc9c9c1.webp 760w,
/report/osre23/nyu/eduml/20231006-msaeed/ViT_hud9ed20979bb56dae4d8e9f4231875a17_383197_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20231006-msaeed/ViT_hud9ed20979bb56dae4d8e9f4231875a17_383197_485ae1a0cccbdc73994be22901c125d5.webp"
width="760"
height="229"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
The figure illustrates the key idea behind ViT, which is to treat an image as a sequence of patches, similar to how a transformer treats a sentence as a sequence of words. Each patch is flattened into a vector and fed into the transformer encoder, which learns to capture the complex relationships between these patches. The resulting representation is then fed into an MLP head, which produces a final prediction for the image. This approach allows ViT to handle large input images and capture both global context and fine-grained details. ViT models can also be pre-trained on large datasets and fine-tuned on smaller datasets for improved performance.&lt;/p>
&lt;p>To reproduce this paper, I followed a systematic approach to ensure reliable results:&lt;/p>
&lt;ul>
&lt;li>Critically analyze the paper&amp;rsquo;s qualitative and quantitative claims.&lt;/li>
&lt;li>Identify the necessary experiments to verify each claim.&lt;/li>
&lt;li>Determine the required data, code, and hyperparameters for each experiment.&lt;/li>
&lt;li>Utilize pre-trained models for validating claims that require high computational resources.&lt;/li>
&lt;li>Investigate resources shared by the authors, such as code, data, and models.&lt;/li>
&lt;li>Assess the feasibility of verifying different types of claims.&lt;/li>
&lt;li>Design new experiments for validating qualitative claims when certain models or datasets are unavailable.&lt;/li>
&lt;/ul>
&lt;p>I utilized &lt;a href="https://chameleoncloud.org/" target="_blank" rel="noopener">Chameleon&lt;/a> as my platform for conducting and documenting my reproduction experiments. Chameleon is a large-scale, reconfigurable experimental environment that supports computer science systems research. It enables users to create and share Jupyter notebooks capable of running Python code on Chameleon’s cloud servers. For this work, a GPU with 24GB or more memory is required to run the notebooks on GPU, which Chameleon offers in its variety of GPUs.&lt;/p>
&lt;p>I have set up a &lt;a href="https://github.com/mohammed183/re_vit" target="_blank" rel="noopener">GitHub repository&lt;/a> where you can access all of my reproduction work. The repository contains interactive Jupyter notebooks that will help you learn more about machine learning and the reproducibility of machine learning research. These notebooks provide a hands-on approach to understanding the concepts and techniques presented in my reproduction work.&lt;/p>
&lt;h2 id="challenges">Challenges&lt;/h2>
&lt;p>Reproducing a paper can be a challenging task, and I encountered several obstacles during the process, including:&lt;/p>
&lt;ul>
&lt;li>The unavailability of pretraining datasets and pretrained models&lt;/li>
&lt;li>Inexact or unspecified hyperparameters&lt;/li>
&lt;li>The need for expensive resources for some hyperparameters&lt;/li>
&lt;li>The use of different frameworks for baseline CNNs and Vision Transformers&lt;/li>
&lt;/ul>
&lt;p>These issues posed significant difficulties in replicating the following table, a key result from the Vision Transformer paper that demonstrates its superiority over prior state-of-the-art models.
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="" srcset="
/report/osre23/nyu/eduml/20231006-msaeed/table1_hu639b2ac18dac1313dd35f10cc0ae8db7_237634_7faf7451ff08ac87e7d12ab941c77f8e.webp 400w,
/report/osre23/nyu/eduml/20231006-msaeed/table1_hu639b2ac18dac1313dd35f10cc0ae8db7_237634_5441e5e4c6ffed9b29244a3a3dcde852.webp 760w,
/report/osre23/nyu/eduml/20231006-msaeed/table1_hu639b2ac18dac1313dd35f10cc0ae8db7_237634_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20231006-msaeed/table1_hu639b2ac18dac1313dd35f10cc0ae8db7_237634_7faf7451ff08ac87e7d12ab941c77f8e.webp"
width="760"
height="354"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>To overcome these challenges, I used the same models mentioned in the paper but pretrained on different datasets, experimented with various hyperparameter combinations to achieve the best results, and wrote my own code to ensure that both the baseline and Vision Transformer were fine-tuned using the same framework. I also faced other challenges, which I discussed in my notebooks along with the solutions I applied.&lt;/p>
&lt;h2 id="how-to-use-this-material">How to use this material?&lt;/h2>
&lt;p>This material consists of a series of notebooks that guide you through the paper, its claims, experiments, and results. You will learn how to analyze, interpret, and validate the authors&amp;rsquo; claims. To get started, I recommend briefly skimming the &lt;a href="https://arxiv.org/abs/2010.11929" target="_blank" rel="noopener">original paper&lt;/a> to gain an understanding of the main ideas and public information. This will help you see how the authors could have been more transparent and clear in certain sections. The notebooks provide clear instructions and explanations, as well as details on how I addressed any missing components.&lt;/p>
&lt;h2 id="conclusion">Conclusion&lt;/h2>
&lt;p>In this blog post, I&amp;rsquo;ve walked you through the contents of this material and the insights users can gain from it. This material is particularly intriguing as it replicates a paper that has significantly influenced the field of computer vision. The interactive nature of the material makes it not only educational but also engaging and enjoyable. I believe users will find this resource both fun and beneficial.&lt;/p>
&lt;p>I hope you found this post informative and interesting. If you have any questions or feedback, please feel free to contact me. Thank you for reading and stay tuned for more updates!&lt;/p></description></item><item><title>Mid Term Blog : Using Reproducibility in Machine Learning Education: Reproducibility with Incomplete Methodology Descriptions</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230804-indianspeedster/</link><pubDate>Fri, 04 Aug 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230804-indianspeedster/</guid><description>&lt;p>Hey,&lt;/p>
&lt;p>I am Shekhar and I am one of several students who are working on developing materials for reproducibility in machine learning education, under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a>. My &lt;a href="https://drive.google.com/file/d/1rCzLGIJ8HYCVjY_MfndgrQjAQa2SQbqZ/view?usp=sharing" target="_blank" rel="noopener">Proposal&lt;/a> aims to develop interactive educational materials about reproducibility in machine learning, for use in graduate and undergraduate classes. Our goal is to help students and researchers (1) understand some of the challenges they may face when trying to reproduce someone else&amp;rsquo;s published result, and (2) in their own publications, to specify the methodology so that the result will be more easily reproduced by others.&lt;/p>
&lt;h2 id="motivation">Motivation&lt;/h2>
&lt;p>My work is inspired by my participation in the &lt;a href="https://paperswithcode.com/rc2022" target="_blank" rel="noopener">2022 Machine Learning Reproducibility Challenge&lt;/a>, where I was reproducing a result related to bias in hate speech classifiers. The paper seemed at first to have complete methodology details. However, when I tried to implement their approach based on the description of the paper, I realized some important details were missing - for example, in the part where they replaced swear words in the text with other words having similar meaning. I wasn&amp;rsquo;t able to identify the exact list of swear words they used, or what approach they followed if the selected replacement was also a swear word. The choices I made when the authors&amp;rsquo; approach was left ambiguous had a significant impact on the magnitude of the final result.&lt;/p>
&lt;h2 id="milestones-and-accomplishments">Milestones and Accomplishments&lt;/h2>
&lt;p>To inform researchers and students about this problem, I created a fictitious machine learning research paper, and a sequence of accompanying Python notebooks to highlight various choices that can be made to fill in the gaps, and explore how these choices can impact the overall results of the research. Our &amp;ldquo;research paper&amp;rdquo; is about the impact of data augmentation on few-shot learning for intent classification. We implemented a basic data augmentation strategy with synonym replacement using the HWU64 dataset and a BERT classifier, and the results suggest that synonym replacement as a data augmentation technique leads to only minor improvement in accuracy.
In the fictitious paper, we left some of the methodology details ambiguous. When reproducing the results using the accompanying notebooks, the reader follows a &amp;ldquo;Choose Your Own Adventure&amp;rdquo; format, selecting a path through a tree, where each node represents ambiguous methodology details and branches out to different choices that are made at that instance. The leaf nodes will represent the final results, providing insights into the magnitude of the differences resulting from each node selection. Some of the choices that the reader makes are -&lt;/p>
&lt;ul>
&lt;li>what subset of the source dataset to use.&lt;/li>
&lt;li>some of the details of data pre-processing.&lt;/li>
&lt;li>some of the details of the synonym replacement data augmentation strategy.&lt;/li>
&lt;li>some training hyperparameters and the details of the hyperparameter search.&lt;/li>
&lt;/ul>
&lt;p>During the first phase of our project, we have implemented an initial draft of these notebooks, to explore various scenarios and see their impact on results. Next, we will further develop the interactive educational material around them.&lt;/p>
&lt;h2 id="challenges">Challenges&lt;/h2>
&lt;p>During the first half of the project, I faced two main challenges. First, I had to come up with a hypothetical research scenario that was realistic, yet easy for students without much expertise to understand. Attaining the right balance was essential to make it engaging and educational. The second challenge was to deliberately leave some details unclear in a realistic way while ensuring that the choices based on that ambiguity had a significant impact on the results. Fortunately, I had the guidance and support of my mentor, which allowed me to successfully tackle these challenges.&lt;/p>
&lt;p>Throughout this project, I faced various challenges and obstacles, but it turned out to be an incredible learning experience. I had the opportunity to dive deep into the domains of few-shot learning and meta-learning, which were entirely new to me. Moreover, I was able to find ambiguous methodologies present in academic papers and explore diverse scenarios related to them. Looking ahead, I am eager to continue working on this project throughout the summer, as it promises further learning and personal growth.&lt;/p></description></item><item><title>Introducing Levels of Reproduction and Replication in Machine Learning</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230802-msaeed/</link><pubDate>Wed, 02 Aug 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230802-msaeed/</guid><description>&lt;p>Hello again,&lt;/p>
&lt;p>I am Mohamed Saeed and this is my second blog post for the 2023 Summer of Reproducibility Fellowship. As you may recall from my &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230601-msaeed">previous post&lt;/a>, I am working on the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/eduml">Using Reproducibility in Machine Learning Education&lt;/a> project with &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a> as my mentor. My goal is to create interactive open educational resources that teach reproducibility and reproducible research in machine learning (ML) as I &lt;a href="https://drive.google.com/file/d/13HnCMZawpabiLdBoOiaJFF2mNXIPLCVJ/view?usp=sharing" target="_blank" rel="noopener">proposed&lt;/a>.&lt;/p>
&lt;p>In this post, I will share with you some of the progress I have made so far, as well as some of the challenges I have faced and how I overcame them. I will also highlight some of the specific accomplishments that I am proud of and what I plan to do next.&lt;/p>
&lt;h2 id="reproducing-on-warm-starting-neural-network-training">Reproducing &amp;ldquo;On Warm Starting Neural Network Training&amp;rdquo;&lt;/h2>
&lt;p>This material is a reproduction of the paper &lt;a href="https://arxiv.org/abs/1910.08475" target="_blank" rel="noopener">&amp;ldquo;On Warm Starting Neural Network Training&amp;rdquo;&lt;/a> by Jordan T. Ash and Ryan P. Adams (2020). This paper investigates the effect of warm-starting neural networks, which means using the weights of previous models trained on a subset of the data, to train on a new dataset that has more data.
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img alt="" srcset="
/report/osre23/nyu/eduml/20230802-msaeed/warm_start_huf40f540ab6672b609385b58179d23d2a_3423296_0c5af6e4428dce728fe7a643b2b8e6d3.webp 400w,
/report/osre23/nyu/eduml/20230802-msaeed/warm_start_huf40f540ab6672b609385b58179d23d2a_3423296_f3e332c8b81d6d3146e54527a273bbfe.webp 760w,
/report/osre23/nyu/eduml/20230802-msaeed/warm_start_huf40f540ab6672b609385b58179d23d2a_3423296_1200x1200_fit_q75_h2_lanczos_3.webp 1200w"
src="https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230802-msaeed/warm_start_huf40f540ab6672b609385b58179d23d2a_3423296_0c5af6e4428dce728fe7a643b2b8e6d3.webp"
width="760"
height="383"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
The figure illustrates how the new model uses the weights from the previous model as its initial values. This allows the new model to train on both the “Original” data, which it has already seen, and the new data, which it has not encountered before. In contrast, the randomly initialized model treats the entire data as unfamiliar and starts from scratch.&lt;/p>
&lt;p>The paper also shows that this method can lead to lower test accuracy than starting from scratch with random weights, even though the training loss is similar. The paper also proposes a simple way to improve the test accuracy of warm-starting by adding some noise to the previous weights.&lt;/p>
&lt;p>To reproduce this paper, I followed a systematic approach that ensured reliable results. This approach involved:&lt;/p>
&lt;ul>
&lt;li>Reading the paper and its main claims carefully.&lt;/li>
&lt;li>Finding out what resources the authors shared, such as code, data, and models.&lt;/li>
&lt;li>Looking for additional materials online that could help me save time and fill in the gaps left by the authors.&lt;/li>
&lt;li>Setting up the environment and dependencies needed to run the code smoothly.&lt;/li>
&lt;li>Writing code and updating any outdated functions that might cause errors.&lt;/li>
&lt;li>Running the code and verifying that it matched the results reported in the paper.&lt;/li>
&lt;li>Analyzing and interpreting the results and comparing them with the paper’s findings.&lt;/li>
&lt;/ul>
&lt;p>I used &lt;a href="https://chameleoncloud.org/" target="_blank" rel="noopener">Chameleon&lt;/a> as my platform for running and documenting my reproduction experiments. Chameleon is a large-scale, reconfigurable experimental platform that supports computer science systems research. It allows users to create and share Jupyter notebooks that can run Python code on Chameleon’s cloud servers.&lt;/p>
&lt;p>I created a &lt;a href="https://github.com/mohammed183/re_warm_start_nn" target="_blank" rel="noopener">GitHub repository&lt;/a> where you can find all related to my reproduction work in the form of interactive jupyter notebooks that will help you learn more about machine learning and reproducibility of machine learning research.&lt;/p>
&lt;h2 id="challenges">Challenges&lt;/h2>
&lt;p>Reproducing a paper is not an easy task. I faced several challenges along the way. One of the biggest challenges was the lack of code and pretrained models from the authors. This is a common problem for many reproducibility projects. Fortunately, I found a previous reproducibility publication for this paper on &lt;a href="https://rescience.github.io/bibliography/Kireev_2021.html" target="_blank" rel="noopener">ReScience journal&lt;/a>. I used some of their code and added some new functions and modifications to match the original paper’s descriptions. I also encountered other challenges that I discussed in the notebooks with the solutions that I applied.&lt;/p>
&lt;h2 id="how-to-use-this-material">How to use this material?&lt;/h2>
&lt;p>This material is a series of notebooks that walk you through the paper and its claims, experiments, and results. You will learn how to analyze, explain, and validate the authors’ claims. To get started, I suggest you skim the &lt;a href="https://arxiv.org/abs/1910.08475" target="_blank" rel="noopener">original paper&lt;/a> briefly to get the main idea and the public information. This will help you understand how the authors could have been more clear and transparent in some sections. I have given clear instructions and explanations in the notebooks, as well as how I dealt with the missing components. You can use this material for self-learning or as an assignment by hiding the final explanation notebook.&lt;/p>
&lt;h2 id="conclusion-and-future-work">Conclusion and Future Work&lt;/h2>
&lt;p>In this blog post, I have shared with you some of my work on reproducing warm starting neural network training. I have learned a lot from this experience and gained a deeper understanding of reproducibility and reproducible research principles in ML.&lt;/p>
&lt;p>I am very happy with what I have achieved so far, but I still have more work to do. I am working on reproducing the &lt;a href="https://arxiv.org/abs/2010.11929" target="_blank" rel="noopener">Vision Transformer: An Image is Worth 16x16 Words&lt;/a> paper by Alexey Dosovitskiy et al. This time my approach is to use the available pretrained models provided by the authors to verify the claims made in the paper. However, there are some challenges that I face in reproducing the paper. For example, some of the datasets and code that the authors used are not publicly available, which makes it hard to replicate their experiments exactly. These challenges are common in reproducing research papers, especially in computer vision. Therefore, it is important to learn how to deal with them and find ways to validate some of the claims.&lt;/p>
&lt;p>I hope you enjoyed reading this blog post and found it informative and interesting. If you have any questions or feedback, please feel free to contact me. Thank you for your attention and stay tuned for more updates!&lt;/p></description></item><item><title>ScaleBugs: Reproducible Scalability Bugs</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/ucdavis/scalebugs/20230802-boluwarinayinmode/</link><pubDate>Wed, 02 Aug 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/ucdavis/scalebugs/20230802-boluwarinayinmode/</guid><description>&lt;h2 id="introduction">Introduction&lt;/h2>
&lt;p>As part of the Scalebugs Project, we have worked on building a dataset of reproducible scalability bugs. To achieve this, we go through existing bug reports for popular distributed systems, which include Cassandra, HDFS, Ignite, and Kafka. Workloads are designed to reproduce these scalability bugs by triggering some functionalities of the system under different configurations (e.g., different numbers of nodes), for which we will observe the impact on performance.&lt;/p>
&lt;p>So far we have worked on packaging the buggy and fixed versions of scalability systems, a runtime environment that ensures reproducibility, and the workloads used to trigger the symptoms of the bug inside docker containers. By packaging these versions together, we are simplifying the process of deployment and testing. This enables us to switch between different versions efficiently, aiding in the identification and comparison of the bug&amp;rsquo;s behavior. For each scalability system, we have carefully built a runtime environment that is consistent and reproducible. This approach ensures that each time we run tests or investigations, the conditions remain identical.&lt;/p>
&lt;h2 id="new-terms">New Terms&lt;/h2>
&lt;p>In order to make sense of the various bug reports, we had to learn some terminologies associated with scalability systems:&lt;/p>
&lt;p>&lt;strong>Clusters&lt;/strong>: Clusters are groups of related or connected items, often found in various fields such as computer science, data analysis, or even social sciences. For example, in data analysis, clusters might represent groups of data points with similar characteristics, making it easier to understand patterns or trends in the data.&lt;/p>
&lt;p>&lt;strong>Cluster Membership&lt;/strong>: Cluster membership refers to the process of determining which items or entities belong to a particular cluster. This task can be done based on various criteria, such as similarity in attributes, spatial proximity, or shared characteristics.&lt;/p>
&lt;p>&lt;strong>Locks&lt;/strong>: In computer programming, locks are mechanisms used to manage access to shared resources, such as files, data structures, or hardware devices. When multiple processes or threads need to access a shared resource simultaneously, locks ensure that only one process or thread can access it at a time, preventing data corruption or conflicts.&lt;/p>
&lt;p>&lt;strong>Lock Contentions&lt;/strong>: Lock contention occurs when multiple processes or threads attempt to acquire the same lock simultaneously. When this happens, one process or thread must wait until the lock becomes available, leading to potential delays and reduced performance.&lt;/p>
&lt;p>&lt;strong>Critical Paths&lt;/strong>: In project management or process analysis, a critical path is the longest chain of dependent tasks that determines the overall duration of the project or process. Any delay in tasks along the critical path will directly impact the project&amp;rsquo;s completion time.&lt;/p>
&lt;p>&lt;strong>Tokens&lt;/strong>: Tokens can have various meanings depending on the context. In computer programming, tokens are the smallest units of source code recognized by a compiler or interpreter. In cryptography, tokens can represent digital certificates or authentication data used for secure communication.&lt;/p>
&lt;p>&lt;strong>Nodes&lt;/strong>: In the context of network theory or graph theory, nodes are individual points or entities that form a network or graph. In a computer network, nodes can be devices like computers or routers, and in a social network, nodes can represent individuals or entities.&lt;/p>
&lt;p>&lt;strong>Peers&lt;/strong>: Peers are entities within a network that have the same status or capabilities. In peer-to-peer networks, each node can act as both a client and a server, enabling direct communication between nodes without relying on a central server.&lt;/p>
&lt;p>&lt;strong>Gossipers, Gossip Protocol&lt;/strong>: In distributed systems, gossipers are nodes that share information with each other using the gossip protocol. The gossip protocol involves randomly selecting peers and exchanging information in a decentralized manner, allowing information to spread quickly across the network.&lt;/p>
&lt;p>&lt;strong>Threads&lt;/strong>: Threads are the smallest units of execution within a process in computer programming. Multiple threads can run concurrently within a single process, enabling multitasking and parallel processing. Threads can share the same resources within the process, making them more lightweight than separate processes. However, proper synchronization is essential to prevent data corruption or conflicts when multiple threads access shared resources.&lt;/p>
&lt;p>&lt;strong>Flush and Writes Contention&lt;/strong>: This refers to a situation where simultaneous operations involving data flushing (saving data to a storage medium) and data writing (updating or adding data) are causing conflicts or delays. This contention can arise when multiple processes or threads attempt to perform these operations concurrently, leading to performance bottlenecks or potential data integrity issues.&lt;/p>
&lt;h2 id="accomplishments">Accomplishments&lt;/h2>
&lt;p>We have been able to build docker containers for the following scalability bugs:&lt;/p>
&lt;p>&lt;strong>IGNITE 12087&lt;/strong>&lt;/p>
&lt;p>This bug stems from the resolution of the IGNITE-5227 issue (another bug), which has led to a significant decline in the performance of a particular operation. Prior to addressing IGNITE-5227, the insertion of 30,000 entries displayed remarkable efficiency, completing in roughly 1 second. However, post the resolution, executing the same insertion process for 30,000 entries witnessed a considerable slowdown, taking approximately 130 seconds – a performance degradation of nearly 100 times.&lt;/p>
&lt;p>&lt;strong>CASSANDRA 14660&lt;/strong>&lt;/p>
&lt;p>This bug is related to how clusters work together and how a lock is causing conflicts with the critical path. The issue arises from a method call that uses O(Peers * Tokens) resources while contending for a lock, which is causing problems in the write path. The lock is used to protect cached tokens that are essential for determining the correct replicas. The lock is implemented as a synchronized block in the TokenMetadata class.&lt;/p>
&lt;p>&lt;em>How was this fixed?&lt;/em>&lt;/p>
&lt;p>It was fixed by reducing the complexity of the operation to O(Peers) taking advantage of some properties of the token list and the data structure.&lt;/p>
&lt;p>&lt;strong>CASSANDRA 12281&lt;/strong>&lt;/p>
&lt;p>This bug is also related to how clusters work together and a lock conflict. The issue arises when a specific method is trying to access a lot of resources (O(Tokens^2)) while contending for a read lock. As reported, a cluster with around 300 nodes has around 300 * 256 (assuming the default number of tokens) tokens, thus joining a new member reportedly is taking more than 30 mins. This happens because due to the long execution time here, this lock makes every gossip message delayed, so the node never becomes active.&lt;/p>
&lt;p>&lt;em>How was this fixed?&lt;/em>&lt;/p>
&lt;p>The granularity of the lock is decreased, meaning that the expensive function calls now do not take the problematic read lock and simply use a synchronized block, synchronizing on a specific field, that does the job much better.&lt;/p>
&lt;p>&lt;strong>HA16850&lt;/strong>&lt;/p>
&lt;p>This is a bug related to obtaining thread information in the JvmMetrics package. When obtaining thread information, the original buggy version used MXBeans to obtain thread information. The call uses an underlying native implementation that holds a lock on threads, preventing thread termination or creation. This means that the more threads that we have to obtain information for, the longer the function call will hold a lock. The result is that the execution time scales on the number of active threads O(threads).&lt;/p>
&lt;p>&lt;em>How was this fixed?&lt;/em>&lt;/p>
&lt;p>Developers utilized a ThreadGroup to keep track of obtaining metrics for threads. The result is that there is no lock held for every thread.&lt;/p>
&lt;p>&lt;strong>CA13923&lt;/strong>&lt;/p>
&lt;p>This issue revolves around conflicts between the &amp;ldquo;flush&amp;rdquo; and &amp;ldquo;writes&amp;rdquo; processes. The main problem is that during the &amp;ldquo;flush&amp;rdquo; process, a resource-intensive function called &amp;ldquo;getAddressRanges&amp;rdquo; is invoked. This function has a high computational cost and its complexity is O(Tokens^2). In other words, the time it takes to complete this function grows quickly as the number of &amp;ldquo;tokens&amp;rdquo; increases. This situation is causing challenges and delays in the overall process.&lt;/p>
&lt;p>&lt;em>How was this fixed?&lt;/em>&lt;/p>
&lt;p>This function call affected many paths and they made sure no one calls getAddressRanges in critical paths.&lt;/p>
&lt;h2 id="challenges">Challenges&lt;/h2>
&lt;p>&lt;strong>Demanding Memory Requirements&lt;/strong>: Running certain builds consumes a significant amount of memory. This places a strain on system resources and can impact the overall performance and stability of the process.&lt;/p>
&lt;p>&lt;strong>Little Issues Impacting Execution&lt;/strong>: Often, seemingly minor details can obstruct the successful execution of a build. Resolving such issues requires thorough investigation and extensive research into similar problems faced by others in the past.&lt;/p>
&lt;p>&lt;strong>Complexities of Scalability Bugs&lt;/strong>: Identifying the underlying causes of scalability-related bugs is intricate. These bugs exhibit unique characteristics that can complicate the process of pinpointing and comprehending their root origins.&lt;/p>
&lt;h2 id="what-is-docker--for-those-who-dont-know-about-it-">What is Docker? ( For those who don&amp;rsquo;t know about it )&lt;/h2>
&lt;p>Docker is a platform that facilitates the containerization of applications, leading to consistent and efficient deployment across diverse environments. Its benefits include portability, resource efficiency, isolation, and rapid development cycles. DockerHub complements Docker by providing a centralized hub for sharing and accessing container images, fostering collaboration and ease of use within the Docker ecosystem.&lt;/p>
&lt;p>More about docker &lt;a href="https://docs.docker.com/get-started/overview/" target="_blank" rel="noopener">https://docs.docker.com/get-started/overview/&lt;/a>&lt;/p></description></item><item><title>Mid-term blog post for Teaching Computer Networks with Reproducible Research: Developing a 'classroom competition' for adaptive video delivery</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edunet/20230801-srishti-j18/</link><pubDate>Tue, 01 Aug 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edunet/20230801-srishti-j18/</guid><description>&lt;p>Hello!&lt;/p>
&lt;p>I am Srishti Jaiswal and this is my second blog post for the 2023 Summer of Reproducibility Fellowship.&lt;/p>
&lt;h2 id="introduction">Introduction&lt;/h2>
&lt;p>As I reach the halfway mark of my internship journey, I have had the incredible opportunity to work on a project that revolves around reproducing an adaptive video research result using cloud-based experimentation. This blog post delves into my exciting work so far, the significant milestones achieved, specific accomplishments to celebrate, and the challenges overcome. Utilizing CloudLab and FABRIC, I embarked on a journey to reproduce essential figures from the research paper &lt;a href="https://dl.acm.org/doi/10.1145/2491172.2491179" target="_blank" rel="noopener">Downton Abbey Without the Hiccups: Buffer-Based Rate Adaptation for HTTP Video Streaming&lt;/a>, ensure Python2 and Python3 compatibility and incorporate an Estimated Download Rate column in the log file produced by the video client. Let&amp;rsquo;s explore the details of this captivating internship experience.&lt;/p>
&lt;h2 id="major-milestones-reached">Major Milestones Reached&lt;/h2>
&lt;p>Here are the milestones we have reached so far:&lt;/p>
&lt;ol>
&lt;li>
&lt;p>Familiar with CloudLab and Fabric Testbeds: I learned how to run an adaptive video experiment, which is the jumping-off point for my project, on the CloudLab and FABRIC platforms.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Python2 and Python3 Compatibility: My first task was to port an existing open-source code base developed for Python2 (which is no longer supported) so that it can run in Python3.
Now code is running successfully in both versions for all the policies of the existing open source, i.e. Basic, Netflix and Sara.
Fixed &lt;a href="https://github.com/Srishti-j18/AStream/issues/1" target="_blank" rel="noopener">issue#1&lt;/a> .&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Estimated Download Rate for Basic Policy: To make it easier for users to understand and visualize how the adaptive video policy works, I added an additional metric, “Estimated Download Rate”, to the output file produced by the adaptive video client.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Graphing Buffer Occupancy and Estimated Download Rate: I extended the existing experiment to show two additional visualizations that are important for understanding how the adaptive video client works: buffer occupancy vs time and estimated download rate vs time.&lt;/p>
&lt;/li>
&lt;/ol>
&lt;h2 id="overcoming-challenges">Overcoming Challenges&lt;/h2>
&lt;p>I encountered several challenges throughout this project, especially as it was my first time working independently on a research paper as a third-year engineering student. However, with my mentor&amp;rsquo;s guidance and support, I persevered and learned to tackle each obstacle with determination.&lt;/p>
&lt;p>One significant challenge was porting the entire code from Python2 to Python3. This transition resulted in numerous errors, and I often found it challenging to pinpoint where the mistakes occurred. To overcome this, I adopted a step-by-step approach, fixing errors one by one and verifying them using Python2 for comparison.&lt;/p>
&lt;p>Understanding the complex codebase was another hurdle that led to moments of feeling stuck in an infinite loop. But every time I faced such situations, I sought my mentor&amp;rsquo;s advice, and together, we made strategic changes to overcome these challenges.&lt;/p>
&lt;p>I am immensely grateful for my mentor&amp;rsquo;s expertise and support throughout this internship. Her guidance played a crucial role in helping me navigate through the challenges and grow both professionally and personally. I eagerly look forward to the rest of the journey, knowing that I can continue making meaningful contributions to this research project with her inspiring mentorship.&lt;/p>
&lt;h2 id="future-prospects">Future Prospects&lt;/h2>
&lt;p>As the second half of my internship approaches, I am eager to refine further and expand our experimentation.
Our main aim is to reproduce the existing work and provide a clear guide for other students to do the same for this, I have to create a framework that helps them improve and build upon this work.&lt;/p>
&lt;p>I hope you enjoyed reading this blog post.If you have any questions or feedback, please feel free to contact me. Thank you for your attention and stay tuned for more updates!&lt;/p></description></item><item><title>Reproducible Analysis &amp; Models for Predicting Genomics Workflow Execution Time (Midterm Blog Post)</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/uga/genomicswfmodels/20230801-shayantan/</link><pubDate>Tue, 01 Aug 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/uga/genomicswfmodels/20230801-shayantan/</guid><description>&lt;p>We are currently midway into the OSRE 2023 program and the following post lists the progress that I have made on the project so far.
As part of the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/uga/genomicswfmodels/">Reproducible Analysis &amp;amp; Models for Predicting Genomics Workflow Execution Time&lt;/a> our overall goal was to enumerate the effect of sequence data quality on execution times. Towards that end, we decided to first identify suitable datasets from the two commmonly available -omics data modalities - transcriptomics and genomics. Albrecht et al. [1] developed &lt;em>&lt;strong>seqQscorer&lt;/strong>&lt;/em> to automate the quality control step of NGS data analysis through predictive modeling. They have also published the list of ENCODE datasets used for training the models. Quality label has been assigned as 0 for released files or 1 for revoked files. Based on the guidelines set forth by ENCODE&amp;rsquo;s Data Coordination Centre (DCC) a comprehensive manual annotation of the data was done by scientists and the resulting quality variable &amp;ldquo;status&amp;rdquo; was published to serve as an indication of the quality of the data. The following steps outline the process of generating the data table for building the machine learning models.&lt;/p>
&lt;ul>
&lt;li>Step 1: Programmatically accessed 86 (34 released ; 34 revoked) RNA-seq files from ENCODE database. All the fastq files were single ended.&lt;/li>
&lt;li>Step 2: Programmatically accessed 288 (144 released ; 144 revoked) DNA-seq files from ENCODE database. All the fastq files were paired ended.&lt;/li>
&lt;li>Step 3: Implemeted the STAR aligner for RNA-seq and the BWA aligner for DNA seq. The resulting outputs contained the alignment times for both the &amp;ldquo;revoked&amp;rdquo; and &amp;ldquo;released&amp;rdquo;.&lt;/li>
&lt;li>Step 4: Ran statistical tests to determine whether there is any significant differences in the runtimes of both types of files.&lt;/li>
&lt;/ul>
&lt;p>Currently I am running the FASTQC tool to extract data quality metrics for the same set of files as discsussed above. Once I have collected those metrics, I can start building regression models to determine whether there is any significant impact of data quality on execution time. The first step toward the execution of a typical genomic analysis workflow is quality control of the raw data - a crucial step in removing low-quality data instances that may significantly impact the downstream analysis. Through our analysis we aim to develop a reproducible ML model that will give the user an estimate of the runtime based on the raw FATSQ file as input.&lt;/p>
&lt;h2 id="references">References&lt;/h2>
&lt;p>[1] Albrecht, S., Sprang, M., Andrade-Navarro, M.A. &lt;em>et al.&lt;/em> seqQscorer: automated quality control of next-generation sequencing data using machine learning. &lt;em>Genome Biol&lt;/em> &lt;strong>22&lt;/strong>, 75 (2021). &lt;a href="https://doi.org/10.1186/s13059-021-02294-2" target="_blank" rel="noopener">https://doi.org/10.1186/s13059-021-02294-2&lt;/a>&lt;/p></description></item><item><title>Halfway Through GSOC: My Experience and Learnings</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edumle/20230718-kokoedwin/</link><pubDate>Mon, 17 Jul 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edumle/20230718-kokoedwin/</guid><description>&lt;p>Hello there! I&amp;rsquo;m Jonathan Edwin, all the way from the beautiful archipelago of Indonesia. This year, I got the exciting chance to jump on board the 2023 Summer of Reproducibility initiative. It&amp;rsquo;s been quite the adventure! Right now, I&amp;rsquo;m pouring my energy into a fascinating project titled &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/eduml">Using Reproducibility in Machine Learning Education&lt;/a> project. I&amp;rsquo;m thrilled to be able to make my own little mark on it.&lt;/p>
&lt;p>For those of you who are not familiar with what I&amp;rsquo;m working on, let me shed some light. My project, as part of the &amp;ldquo;Using Reproducibility in Machine Learning Education&amp;rdquo; initiative under guidance of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a>, focuses on creating educational resources that center around reproducing some key machine learning techniques. These include Cutout data augmentation, U-Net, and Siamese networks, to name a few. The end product will be a series of interactive Jupyter notebooks that provide step-by-step guidance for students, helping them not only understand these complex models but also gain hands-on experience in achieving research reproducibility.&lt;/p>
&lt;p>&lt;strong>Progress and Challenges&lt;/strong>&lt;/p>
&lt;p>Embarking on this project, I dove headfirst into the world of Cutout data augmentation, immersing myself in the many experiments outlined in the foundational paper. This initial study proved to be an intricate blend of multiple datasets, two network architectures, and a performance evaluation of models with and without Cutout data augmentation. Additionally, it included the exploration of these models in combination with other data augmentation techniques.&lt;/p>
&lt;p>One of our main objectives has been to help students visualize how the model interacts with the data, and for this, we&amp;rsquo;ve been leveraging a tool called Grad-CAM. The initial paper provided a rich landscape for exploration and learning, leading us to segment our journey into five interactive Jupyter notebooks - Introduction, CutOut, ResNet, WideResNet, Regularization, and Grad-CAM.&lt;/p>
&lt;p>I&amp;rsquo;m excited to share that, as we&amp;rsquo;ve hit the mid-term milestone, I&amp;rsquo;ve managed to make significant strides and completed the notebooks up to the WideResNet section. It&amp;rsquo;s been a journey full of learning and growth, overcoming various challenges along the way - understanding the intricacies of the experiments, deconstructing complex architectures, and distilling all this into digestible, interactive notebooks for students. Despite the challenges, the process has been incredibly rewarding. As we gear up for the next half of the project, I&amp;rsquo;m eager to tackle the remaining sections and share my work with the community.&lt;/p>
&lt;p>&lt;strong>Learnings and Skills Gained&lt;/strong>&lt;/p>
&lt;p>&lt;em>&lt;strong>Embracing the Iterative Process of Open Source Development&lt;/strong>&lt;/em>: My initial foray into open source development had me writing and running code in one environment, then copying parts of it to another environment and pushing it from there to GitHub. This occasionally led to mistakes during the code migration. However, I&amp;rsquo;ve since learned to write or change a little bit of code, run the new version directly from GitHub, catch errors, and improve. In open source development, the end goal is to ensure everything works flawlessly, even if it involves several iterations. This is especially true considering the code from GitHub might directly run on platforms like Chameleon or Google Colab.&lt;/p>
&lt;p>&lt;em>&lt;strong>Understanding the Distinction between Reproducing Experiments and Crafting Educational Content&lt;/strong>&lt;/em>: There&amp;rsquo;s a stark difference between merely reproducing an experiment from a research paper and creating an educational resource around that experiment. The former generally involves cloning and running the code, verifying it against the claims in the paper with minimal modifications. The latter, however, necessitates adapting and simplifying the code, regardless of the learner&amp;rsquo;s skill level, to ensure their comprehension. It&amp;rsquo;s about carefully guiding learners through each step for a more profound understanding.&lt;/p>
&lt;p>&lt;em>&lt;strong>The Power of &amp;lsquo;Show, Don’t Tell&amp;rsquo;&lt;/strong>&lt;/em>: This priceless lesson was imparted by my mentor, Ms. Fraida Fund. Rather than telling me what to do when I erred or needed to learn something new, she demonstrated the correct way first-hand. This hands-on approach made understanding far easier. This principle is also reflected in the creation of our notebooks. For instance, we chose to include the Grad-CAM notebook. Although not directly referenced in the paper, it offers students a clear visual understanding of the impact of the Cutout technique, embodying the &amp;ldquo;show, don’t tell&amp;rdquo; philosophy.&lt;/p>
&lt;p>&lt;strong>Next Steps&lt;/strong>&lt;/p>
&lt;p>As we step into the second half of this thrilling journey, our primary goal is to complete the remaining sections of our Cutout project. We&amp;rsquo;re setting our sights on the final notebook - Grad-CAM. The Grad-CAM notebook will offer a visual exploration of how our models interpret and interact with data, thereby solidifying the students&amp;rsquo; understanding of Cutout data augmentation. So, stay tuned for more as we plunge into these fascinating topics!&lt;/p>
&lt;p>&lt;strong>Conclusion&lt;/strong>&lt;/p>
&lt;p>Looking back, my time with the Summer of Reproducibility initiative has been nothing short of a profound learning experience. Working on the &amp;ldquo;Using Reproducibility in Machine Learning Education&amp;rdquo; project has been both challenging and rewarding, and I am incredibly grateful for this opportunity.&lt;/p>
&lt;p>I&amp;rsquo;ve gained valuable insights into open-source development, delved deeper into the intricacies of machine learning techniques, and experienced firsthand the transformative power of a &amp;lsquo;show, don&amp;rsquo;t tell&amp;rsquo; teaching approach. Moreover, I&amp;rsquo;ve learned that the creation of educational resources requires a delicate balance between preserving the essence of original research and adapting it to foster easy understanding.&lt;/p>
&lt;p>As we press forward, I&amp;rsquo;m excited about the prospects of the coming weeks. The completion of the Grad-CAM notebook lies ahead, marking the final pieces of our Cutout project. Beyond this project, the skills and lessons I&amp;rsquo;ve acquired during this initiative will undoubtedly guide me in future endeavours.&lt;/p>
&lt;p>I can confidently say that my GSOC journey has been a remarkable chapter in my growth as a developer and researcher. Here&amp;rsquo;s to more learning, more coding, and more breakthroughs in the future!&lt;/p></description></item><item><title>Reproducible Analysis &amp; Models for Predicting Genomics Workflow Execution Time</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/uga/genomicswfmodels/20230712-shayantan/</link><pubDate>Wed, 12 Jul 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/uga/genomicswfmodels/20230712-shayantan/</guid><description>&lt;p>As part of the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/uga/genomicswfmodels/">Reproducible Analysis &amp;amp; Models for Predicting Genomics Workflow Execution Time&lt;/a> my &lt;a href="https://drive.google.com/file/d/1N81dqvdTDcKjz5WDAUCdf5yi1BNR9Au6/view?usp=sharing" target="_blank" rel="noopener">proposal&lt;/a> under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/in-kee-kim/">In Kee Kim&lt;/a>, Martin Putra and collaborator &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/charis-christopher-hulu/">Charis Christopher Hulu&lt;/a> (another OSRE fellow) aims to analyze large-scale sequencing datasets in order to gain insights on how ‘input quality’ affects genomic workflows’ execution times.&lt;br>
Recent advancements in Next-Generation Sequencing (NGS) technologies have resulted in massive amounts of nucleotide sequence data and automated genomic workflows to streamline analysis and data interpretation. The success of NGS-driven research has also led to a sudden increase in data of varying size and complexity, making it more time-consuming for researchers to test hypotheses. Analyzing
high-throughput genomic data requires a step-by-step execution of dedicated tools - also known as workflows. The first step toward the execution of a typical genomic analysis workflow is quality control
of the raw data - a crucial step in removing low-quality data instances that may significantly impact the downstream analysis. Prior work in this area has suggested that the runtimes of genomic workflows get affected due to qualitative differences in the data. Additionally, there is very little consensus on what constitutes “input quality” regarding data from large genomic experiments. In this proposal, we hypothesize that genomic data quality significantly impacts the genomic workflows’ execution time. We aim to leverage machine learning techniques to extract predictive features from quality control tools that robustly predict workflow execution time.&lt;/p></description></item><item><title>Using Reproducibility in Machine Learning Education</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230605-kokoedwin/</link><pubDate>Mon, 05 Jun 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230605-kokoedwin/</guid><description>&lt;p>I am Jonathan Edwin, coming from Indonesia, and I am extremely thrilled to be involved in the 2023 Summer of Reproducibility initiative. I am actively contributing to the project by making valuable contributions to the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/eduml">Using Reproducibility in Machine Learning Education&lt;/a> project.&lt;/p>
&lt;p>As part of the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/eduml">Using Reproducibility in Machine Learning Education&lt;/a> my &lt;a href="https://drive.google.com/file/d/1UEIKfZuPwJ88fMQ1-109vzpA7r4-7ehG/view?usp=sharing" target="_blank" rel="noopener">proposal&lt;/a> under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a> aims to develop educational resources focusing on reproducing and replicating fundamental machine-learning techniques, such as Cutout data augmentation, U-Net, and Siamese networks. The project aims to provide students with a hands-on learning experience that enhances their understanding of the models and their underlying principles while imparting valuable skills in ensuring research reproducibility.
The project will involve the creation of a series of interactive Jupyter notebooks covering the selected papers, guiding students through reproducing results, and focusing on best practices for ensuring reproducibility. Upon completion, the notebooks will provide a comprehensive and accessible learning experience for students while emphasizing the importance of reproducibility in machine learning education.
The proposal also identifies potential challenges associated with the project and proposed solutions to address them. Challenges include incompatibility issues with the original code and current frameworks or environments, difficulty in reproducing the exact results due to factors such as randomness or lack of specific details in the paper, and ensuring that the interactive elements in the Jupyter Notebooks are engaging and effective in teaching reproducibility concepts.&lt;/p></description></item><item><title>Introducing Levels of Reproduction and Replication in Machine Learning</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230601-msaeed/</link><pubDate>Thu, 01 Jun 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230601-msaeed/</guid><description>&lt;p>Greetings everyone,&lt;/p>
&lt;p>I am Mohamed Saeed and I am delighted to be part of the 2023 Summer of Reproducibility program, where I am contributing to the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/eduml">Using Reproducibility in Machine Learning Education&lt;/a> project.&lt;/p>
&lt;p>My &lt;a href="https://drive.google.com/file/d/13HnCMZawpabiLdBoOiaJFF2mNXIPLCVJ/view?usp=sharing" target="_blank" rel="noopener">proposal&lt;/a> was accepted, and I am fortunate to have &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a> as my mentor. The objective of my project is to develop highly interactive open educational resources that can be utilized by instructors teaching graduate or undergraduate machine learning courses. These resources will focus on integrating instruction on reproducibility and reproducible research principles.&lt;/p>
&lt;p>Understanding and practicing reproducibility in machine learning (ML) research is of utmost importance in today&amp;rsquo;s scientific and technological landscape. Reproducibility ensures the reliability, transparency, and credibility of ML findings and discoveries. By learning the principles of reproducibility, students from different levels can validate research results, test introduced methodologies, and understand level of reproducibilty of research.&lt;/p>
&lt;p>My contribution will involve developing interactive educational resources that encompass code examples, writing exercises, and comprehensive explanations of key concepts of reproducing ML research. These resources will be carefully crafted to assist students at various levels of expertise. Our aim is for these resources to be widely adopted by instructors teaching graduate or undergraduate machine learning courses, as they seek to enhance the understanding of reproducibility and reproducible research principles.&lt;/p>
&lt;p>I think this is a great opportunity to learn more about ML research reproducibility. I&amp;rsquo;ll be posting regular updates and informative blogs throughout the summer, so stay tuned!&lt;/p></description></item><item><title>ScaleBugs: Reproducible Scalability Bugs</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/ucdavis/scalebugs/20230601-boluwarinayinmode/</link><pubDate>Thu, 01 Jun 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/ucdavis/scalebugs/20230601-boluwarinayinmode/</guid><description>&lt;p>Hello! As part of the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/ucdavis/scalebugs/">ScaleBugs&lt;/a> project our proposals (&lt;a href="https://drive.google.com/file/d/17iANa5ei_gguZsGGwR1sfPHOoJysnNsf/view?usp=sharing" target="_blank" rel="noopener">proposal&lt;/a> from &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/goodness-ayinmode/">Goodness Ayinmode&lt;/a> and &lt;a href="https://drive.google.com/file/d/199ZsiWHXsLYbSJ896vaf8tjrYs23P5xN/view?usp=sharing" target="_blank" rel="noopener">proposal&lt;/a> from &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/zahra-nabila-maharani/">Zahra Nabila Maharani&lt;/a>) under the mentorship under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/cindy-rubio-gonzalez/">Cindy Rubio González&lt;/a>,&lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/haryadi-s.-gunawi/">Haryadi S. Gunawi&lt;/a> and &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/hao-nan-zhu/">Hao-Nan Zhu&lt;/a> aims to build a dataset of reproducible scalability bugs by analyzing bug reports from popular distributed systems like Cassandra, HDFS, Ignite, and Kafka. For each bug report, we will analyze whether the reported bug is influenced by the scale of the operation, such as the number of nodes being used or a number of requests. The resulting dataset will consist of bug artifacts containing the buggy and fixed versions of the scalability system, a reproducible runtime environment, and workload shell scripts designed to demonstrate bug symptoms under different scales. These resources will help support research and development efforts in addressing scalability issues and optimizing system performance.&lt;/p></description></item><item><title>Using Reproducibility in Machine Learning Education: Reproducibility with Incomplete Methodology Descriptions</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230527-indianspeedster/</link><pubDate>Sat, 27 May 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/eduml/20230527-indianspeedster/</guid><description>&lt;p>Hey,&lt;/p>
&lt;p>I am Shekhar and I am one of several students who are working on the project &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/eduml">Using Reproducibility in Machine Learning Education&lt;/a> under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a>. My &lt;a href="https://drive.google.com/file/d/1rCzLGIJ8HYCVjY_MfndgrQjAQa2SQbqZ/view?usp=sharing" target="_blank" rel="noopener">Proposal&lt;/a> aims to develop interactive educational materials about reproducibility in machine learning, for use in graduate and undergraduate classes. My project is inspired by my experience in the &lt;a href="https://paperswithcode.com/rc2022" target="_blank" rel="noopener">Machine Learning Reproducibility Challenge&lt;/a>, where I found that a major challenge for reproducibility was that some details were left ambiguous in the paper I was trying to reproduce. For my project, I will develop an interactive tutorial to help demonstrate how if the methodology details are not fully specified in a publication, then someone trying to reproduce the result will have to make choices that may not match the authors’, and these choices will affect whether or not the final result is validated.&lt;/p></description></item><item><title>Teaching Computer Networks with Reproducible Research: Developing a 'classroom competition' for adaptive video delivery</title><link>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edunet/20230524-srishti-j18/</link><pubDate>Tue, 23 May 2023 00:00:00 +0000</pubDate><guid>https://deploy-preview-1007--ucsc-ospo.netlify.app/report/osre23/nyu/edunet/20230524-srishti-j18/</guid><description>&lt;p>As part of the &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/project/osre23/nyu/edunet">Teaching Computer Networks with Reproducible Research project&lt;/a> my &lt;a href="https://drive.google.com/file/d/1EI0Zhh6YFwufEZ-53VWwhTOyJUuw7-Rf/view?usp=sharing" target="_blank" rel="noopener">proposal&lt;/a> under the mentorship of &lt;a href="https://deploy-preview-1007--ucsc-ospo.netlify.app/author/fraida-fund/">Fraida Fund&lt;/a> aims to develop a classroom competition for adaptive video delivery policies, leveraging an existing open-source reproducible result. The competition will challenge students to extend the original work and design their adaptive policies for head-to-head competition against their classmates.The project will involve packaging the existing result for easy reproducibility and building on it by implementing other adaptive video policies from the literature, developing different network settings for evaluating student submissions, and creating an evaluation framework for scoring submissions based on various criteria (so that competition remains fair and unbiased). The deliverables include a functional submission and evaluation process, an evaluation framework, and documentation and materials for course instructors to use in the classroom.&lt;/p></description></item></channel></rss>