Japan
サイト内の現在位置を表示しています。
ブログ
OSS貢献活動人工知能フレームワークにおけるオープンソースソフトウェアの代替財と補完財 (ECSA 2023)
2023年9月18日(月)~22日(金)に、トルコ・イスタンブールで開催された国際会議「ECSA 2023」(17th European Conference on Software Architecture) において、NECから「Substitute and Complementary Open Source Software in Artificial Intelligence Frameworks」(人工知能(AI)フレームワークにおけるオープンソースソフトウェアの代替財と補完財) と題した発表を行いました。
本記事では、発表者である、私 (NEC 岩見 紫乃) が、内容の概要についてご紹介します。
昨今、生成 AI の研究開発競争が鎬を削る裏で、AI のもう一つの競争がありました。2大 AI フレームワークの TensorFlow と PyTorch のシェア争いです。(一般的には、機械学習フレームワークや深層学習フレームワークと呼ばれる方が多いですが、ここでは AI フレームワークと呼びます。)2017年頃までは TensorFlow のシェアが大きかったですが、その後、PyTorch の使用が増加し、2022年に PyTorch Foundation が設立されました。
本発表の分析は、OSS の盛衰を特定するために、開発における代替 OSS・補完 OSS を特定する手法を検証しました。検証を行うために、AI フレームワークを題材にしています。
代替 OSS・補完 OSS は、経済学の代替財・補完財から発展させた考え方です。代替財は、例えば、コーヒーと紅茶を同時に消費しないので、一方を多く消費すれば、もう一方の消費が少なくなる関係の品物です。IT においては、異なる OS の開発や導入を一般的には同時に行わないでしょうから、その異なる OS どうしは、互いに一方は他方の代替財と呼べるでしょう。補完財は、コーヒーに入れるミルクや砂糖のような、一方を消費するともう一方が消費される関係の品物です。
品物の消費量の代わりに、本分析の OSS においては、コミット数を用います。一方の OSS でコミット数が増える時、もう一方の OSS でコミット数が減れば、代替の関係にあります。二つの OSS でコミット数が同時期に増えれば、補完の関係にあるでしょう。ただし、無関係な OSS 間でも、増減が逆方向に動いたり同期することはあります。そこで、共通のコントリビューターが多い OSS 間ならば、代替や補完の関係が反映されると考えて、共通のコントリビューターが多い OSS 間のみを対象とします。
結果が算出される前は、TensorFlow が PyTorch に代替されると予想していました。しかし、表 1の結果のように、本分析の時点ではまだ、TensorFlow と PyTorch は補完の関係で共に成長していました。共有する開発者の割合である Share Rate を見ると、0.04は少ないように思われますが、数百件同じプロジェクトの中では0.02以上ならば、相対的に多くの開発を共有しているOSSとなっています。PyTorch本体 (/pytorch/pytorch) に対して、文書 (/pytorch/tutorials) なども共に成長する様子が見られました。これらは補完の関係にあると考えられます。 将来は、本手法を精緻化し、OSS の動向を自動的に検出するツールとして稼働したいと考えています。
表 1 結果の一例:PyTorch (https://github.com/pytorch/pytorch) に対する分析

執筆者
岩見 紫乃 (Shino Iwami)
日本電気 (NEC Corporation)
工学博士、CISSP。OSSへの関わりを、データ・ドリブンで判断するための調査・分析と、そのシステム化を行っています。それら調査・分析の結果を題材に、NECのOSSにおける知名度を向上すべく、Open Source Summit JapanやIEEE IEEM等の産学の国際イベントで講演者を務めています。また、国際イベントの座長や査読委員を担当することもあります。(2023年9月時点の情報)
