Data for DEXPRO
收藏资源简介:
DEXPRO (Diversity-aware EXpertise-based Project Recommender of Open source) Tool Source Code, Build scripts, and Demo DEXPRO is a novel tool for addressing the "cold-start" problem of recommending OSS projects to newcomers with no previous interaction with OSS projects or existing social connections with other developers. It is an expertise-based project recommender for OSS Newcomers created by adapting the Skill Space model. The scripts for building the DEXPRO framework from raw World of Code data are shared in the "WoC_scripts.zip" file - see the "README.md" file in the folder for running instructions. The source code for the DEXPRO tool is contained in the "DEXPRO_tool.zip" file. The demo is in the "DEXPRO_DEMO.mov" file. How to run the tool: Make sure you have Python 3.9+ installed. Create a virtual environment, activate, and install the required packages: $ python3 -m venv venv $ source venv/bin/activate $ pip3 install -r requirements.txt Run the streamlit app: $ streamlit run app.py All the tool options can be seen in the tool demo video. DEXPRO filters & parameters: Trained Skill Space model from World of Code version U, trained on: Projects with >=10 stars, >= 1 year active, last activity on or after 2021-06-01 Authors with >100 commits & <50,000 commits, 12 popular Languages: 'C/C++', 'C#', 'Go', 'Perl', 'Ruby', 'JavaScript','Python', 'R', 'Rust', 'Scala', 'TypeScript', 'Java' Parameters: vector size = 200 window size = 30 negative sample = 20 min count = 1000 epoch = 1 * Evaluation data The evaluation data is added in the eval.zip folder. It contains scripts for how the list of authors for the evaluation were obtained from World of Code, the data on the languages & APIs used by the authors' first commits and script for how that data was obtained. The list of commits and projects for the authors were obtained directly from World of Code a2c and a2p maps and that data is also shared. The Mann-Whitney test result can be seen from the `eval.ipynb` file. The feedback from the 20 students is in the `DEXPRO STUDENT FEEDBACK.docx` file.
DEXPRO(开源多样性感知专家型项目推荐器,Diversity-aware EXpertise-based Project Recommender of Open source)工具源代码、构建脚本与演示程序 DEXPRO是一款针对开源项目冷启动问题的创新工具,旨在为从未接触过开源项目、亦未与其他开发者建立社交关联的新手推荐开源项目。该工具基于技能空间(Skill Space)模型改造而成,是一款面向开源新手的专家型项目推荐系统。 用于从原始代码世界(World of Code)数据集构建DEXPRO框架的脚本已打包至"WoC_scripts.zip"压缩包中,运行说明可参考该文件夹内的"README.md"文件。 DEXPRO工具的源代码存放于"DEXPRO_tool.zip"压缩包内。 演示程序位于"DEXPRO_DEMO.mov"文件中。 工具运行指南: 1. 确保已安装Python 3.9及以上版本。 2. 创建并激活虚拟环境,安装项目依赖包: $ python3 -m venv venv $ source venv/bin/activate $ pip3 install -r requirements.txt 3. 启动Streamlit应用: $ streamlit run app.py 工具的所有可选配置项均可在演示视频中查看。 DEXPRO筛选规则与模型参数: 本次训练所用的技能空间(Skill Space)模型基于代码世界(World of Code)版本U构建,训练数据集包含: - 获星数≥10、活跃时长≥1年、最后一次活动时间不早于2021年6月1日的开源项目; - 提交次数>100且<50000的开发者; - 12种主流编程语言:'C/C++'、'C#'、'Go'、'Perl'、'Ruby'、'JavaScript'、'Python'、'R'、'Rust'、'Scala'、'TypeScript'、'Java' 模型参数设置如下: - 向量维度(vector size):200 - 窗口大小(window size):30 - 负采样数(negative sample):20 - 最小词频阈值(min count):1000 - 训练轮次(epoch):1 * 评估数据集 评估数据已打包至"eval.zip"文件夹中。该文件夹包含:从代码世界(World of Code)获取评估所用开发者列表的脚本、开发者首次提交所使用的编程语言与API相关数据及其获取脚本,以及从代码世界的a2c与a2p映射表中直接提取的开发者提交记录与项目关联数据,此类数据均已同步共享。 曼-惠特尼检验(Mann-Whitney test)结果可通过"eval.ipynb"文件查看。 20名学生的反馈意见存放于"DEXPRO STUDENT FEEDBACK.docx"文件中。



