OpenEuler下游分析

本项目参考的分析方法来自谭鑫[1]等人的对于深度学习供应链分析的论文。

数据爬取

对OpenEuler的下游进行数据爬取,我们采用的数据来自OpenEuler官方的代码仓:

OpenEuler

其中包含了367个仓库,同时OpenEuler官方还提供了另外的OpenEuler软件仓,包含了9k多个仓库。

但是经过爬取后分析,我们发现软件仓的仓库代码质量比较低,且不具备普遍性。而代码仓的367个仓库质量普遍高,同时具有很明显的领域特征,所以我们决定通过这367个仓库对OpenEuler下游的生态进行一个简单的概括。

首先我们简单的利用爬虫爬取了仓库的名称、仓库star数,保存到了OpenEuler_repo_result.csv文件中:

titlestar-num
kunpengsecl15
lcr16
curl-rust1

同时我们爬取了仓库的简介,用于后续分析仓库主题。

主题分类

本项目采用了LDA模型来生成主题

首先利用停用词表,将仓库的简介去停用词。

一般我们可以用指标来评估模型好坏,也可以用这些指标来确定最优主题数。一般用来评价LDA主题模型的指标有困惑度(perplexity)和主题一致性(coherence),困惑度越低或者一致性越高说明模型越好。一些研究表明perplexity并不是一个好的指标,所以本项目用coherence来评价模型并选择最优主题。

本项目绘制了主题-coherence曲线,得到的结果如下:

主题-coherence图
可以看到最佳主题数为7。按照这个主题数生成结果,并将结果可视化如下:
主题结果
可以看到,左侧为主题, 右侧为主题对应的词语出现频率。

右上角λ的值反映了词语在主题里的特殊程度,λ=0表示几乎仅在这个主题中出现。

通过提取关键词,对于主题的总结如下:


topic1

tool, system, performance, API, tools, machine, userspace, bridge, emulator, qemu

openeuler系统工具,模拟器,接口等,偏底层

topic2

detect, container, system, operating, scripts, kernel, patch, Problem,

操作系统内核相关,问题检测等

topic3

repository, content, source, website, documents, Environment

代码仓库,网站,文档相关

topic4

framework, Kiran, performance, generation, memory, desktop, supports, expansion

麒麟框架相关

topic5

SIG, repository, repo, chip, CloudNative, Issue, entry, operation

云原生,芯片相关

topic6

modules, service, rpm, tool, tools, bot, leak, JDK, plugin, OpenStack, software, DPU, packager,

模组,包,插件等

topic7

repository, OpenDesign, OS, computing, framework,

开放设计的一些框架等


按照这些关键词,对项目进行分类,所制饼图如下:

饼图
可以看到,topic1,topic6 所占比例较高,总体topic的比例都不是很低,说明当前社区的下游发展较为平衡。

相对来说,topic5的项目最少,可能因为topic5相对更加底层,涵盖芯片等方面研究,难度更加高。也是希望有更多能够研究芯片和云原生相关的项目能够在未来加入到openEuler社区中

star数

star数越多,我们认为项目的质量越高,项目在整体下游软件生态中的重要性就越大,影响力也越大。

将star数按照降序排列后,可以看到star数前十的项目:

titlestar
kernel1.1k
bishengjdk-8456
iSulad412
stratovirt405
A-Tune316
community291
bishengjdk-11145
docs126
RISC-V105
raspberrypi81

他们可以说是比较重要的项目,可以在未来加强对这些项目的重视程度。

调研结论

主题

整个下游仓库整体分为了7大主题,且每个主题的项目分布都比较平均,说明整体发展非常平衡。

芯片、云原生相关主题相比之下项目数较少,可以吸引这方面相关开发者入驻,帮助后续开发。

重要项目

由star数提取出了较为重要的10个项目,应该对这些项目加强审查,同时对他们进行监督,保证代码活力和项目质量。

参考文献

[1] Xin Tan, Kai Gao, Minghui Zhou, Li Zhang. An Exploratory Study of Deep Learning Supply Chain

具体技术细节可以移步至开发者日志:
OpenEuler下游分析

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yifanan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值