Japan
サイト内の現在位置
テーブルデータの処理時間を大幅削減する「FireDucks」
導入事例:トヨタテクニカルディベロップメント株式会社様 「Spicy MINT」
NECの最先端技術 2023年10月19日
世界的にデータ活用の波が広がる一方、データサイエンティストたちが働くデータ分析の現場ではコンピュータの処理時間が大きな負担になっている現状があります。なかでもデータクレンジングなどの前処理にはデータサイエンティストの業務時間の約45%もの時間が割かれていると言われており(注1)、効率化が求められていました。
そこでNECでは、データの前処理を自動で高速化させるデータ分析用ソフトウェア「FireDucks」を開発しました。ベクトル型スーパーコンピュータやコンパイラ開発を行ってきたNECならではの並列処理や高速化のノウハウが詰め込まれたソフトウェアです。データサイエンティストの多くが利用するOSS「pandas」とAPI互換があり、Pythonライブラリとしてベータ版を無償公開しています。
先行して技術PoCとしてご協力いただいたトヨタテクニカルディベロップメント株式会社様は、導入後約3カ月で大きな効果を実感しているといいます。今回は実際に現場で活用したAI・データサイエンス技術室のご担当者様とNECの開発者に、その効果や運用についてお話を伺いました。
自社開発のデータ分析ツールへ導入
― どのような業務で「FireDucks」を利用したのでしょうか?
山本:弊社はトヨタグループの一員として、IP事業や車両の計測・シミュレーション事業に取り組んでいます。私や野口は計測・シミュレーション事業のなかでもデータサイエンスを扱うチームに所属しており、AIを活用した車両開発の最適化や試験の効率化、設備の異常検知などに取り組んでいます。最近ではAIによるデータ分析は自動車だけにとどまらず、人の挙動解析・スポーツ選手の動作解析にもチャレンジしています。
野口:私たちのチームでは「Spicy MINT」というソフトウェアの開発を行っています。これは、AIを用いてデータの着目点を導きだすエンジニアリングツールです。自ら使って磨き上げ、同じ困りごとを持ったデータサイエンティストに"新しい気づき"をもたらし支援しようとするツールでもあります。
このツールを使ってさまざまな解析を行うなかで、データの前処理に時間がかかるという点に大きな課題を感じていました。そんな折、2023年3月に行われたデータ工学に関する学会でFireDucksの発表を目にしたのです。私どもが求めていた技術だということでSpicy MINTへ導入できないかとご相談させていただきました。
石坂:そのときご対応したのが私でした。すぐに改めてのミーティングを設けて、6月には技術PoCとしてご協力いただくことになりました。
野口:学会でお会いしたのが3月初旬だったので、スピーディに進めさせていただきましたね。
およそ6割もの処理時間を削減
― 実際に使ってみて、いかがでしたでしょうか?
野口:これまでのデータ分析のやり方が大きく変わりました。具体的なベネフィットは3つあります。1つ目は、圧倒的に処理時間を削減できたこと。2つ目は、ロースペックPCでも駆動できたこと。そして、3つ目は、既存のスクリプトへもスムーズに適用できたことです。
1つ目の処理時間では、およそ6割もの時間を削減することができました。このインパクトは大きかったですね。働き方が一変しました。従来であれば、時間のかかる処理は帰宅前に処理を仕掛けて、夜間や週末に処理をさせる工夫を重ねていたのですが、FireDucksを導入してからは、そのようなやり繰りに悩まされず、データ分析のみに集中できるようになりました。今では夜間や週末にはPCの電源をしっかりと落として帰宅できるようになっています。
家庭用ゲーミングPCでもデータ分析が可能に
野口:2つ目のロースペックPCでも駆動可能という点ですが、私たちは、家電量販店で購入できる20万円弱のゲーミングPCでも、解析業務において十分に実用的な性能が出ることを確認しています。これは処理時間削減すると同時に消費電力を抑え、CO2排出量の削減に貢献できるという効果も見込めると考えています。また、ハイスペックPCが不要となることで、データ分析の裾野を広げる起爆剤にもなり得るのではないかということも感じました。
石坂:そうですね。LLMの登場によって、自然言語からpandasのプログラムを生成するような動きも急速に進んでいます。プログラム作成のハードルが下がり、データ分析の裾野はこれから大きく広がっていくことになるでしょう。pandasと互換性のあるFireDucksが活躍できる場も広がっていくことになりますから、こうした動きとも連携して、データサイエンスの民主化にしっかりと貢献していきたいですね。
導入時間はわずか30分
野口:pandasとの互換性は、ありがたかったですね。まさに3つ目として挙げたポイントです。Spicy MINTは2年ほど前に大方完成していたものですから、そこから手を加えてFireDucksに置き換えていくとなると、相当な工数がかかるだろうと覚悟していました。しかし、実際にFireDucksに置き換えてみると、全体のテストも含めてわずか30分以内で完了しました。
山本:高速化に資するソフトウェアは多々ありますが、Pythonでできるものは少ないのではないかと思っています。スーパーコンピュータに入れれば動くというものはありますが、プログラム言語を書き換えるなど手間がかかってしまいます。それに対して、Pythonのpandasのまま高速化を実現できるというのは大きなメリットでした。
荒木:互換性をもたせることについては、石坂が強いこだわりをもっていたポイントです。
石坂:はい。互換性の確保については多くのお客様に喜んでいただけるポイントだとわかっていたので、なんとか実現しようとこだわりました。やり出すと細かいところも気になってしまうので、細部まで互換性を高めるために何度も調整を重ねていきました。
クラウドやエッジ環境での適用をめざす
― 今後、FireDucksに望むことはありますか?
野口:現在はオンプレミスでの提供ですので、クラウドでも適用できるようになると非常に嬉しいですね。クラウドは時間によって課金されますから、1秒でも速くなってくれればコストに直接関わってきます。
石坂:そうですね。その点については私たちも非常に重要なポイントだと思っておりますので、制約をクリアしていち早く実現していきたいと思っています。
野口:もう1つの適用先として、エッジ環境にもご対応いただけるとありがたいです。というのも、私どもは車両開発などの現場へ頻繁に出向きます。車両のデータを計測して解析する際には、データ加工に時間がかかるために、いったん社に持ち帰らざるを得ないのが現状です。エッジ環境を活用して現場で解析できるということになれば、現場で議論し、現場で対策まで打てるというストーリーが描けるようになります。
さらに欲を言えば、解析環境が構築済みのワンパッケージになっていると、導入のハードルが下がりそうです。せっかく業務でデータ分析にトライしようと思っても、環境構築でつまずいてしまう方を多く目にします。それではデータ分析への苦手意識が芽生えてしまうので、もったいないと思っています。
NECさんであればノートPCもつくられているので、ノートPCにワンパッケージされたものをご提供いただければ、需要もあるのではないかと思います。
石坂:なるほど。ノートPCでも、マルチコアCPUを積めるので高速化の余地は十分にあります。詳細な環境をおうかがいしながら、ぜひ検討させてください。
荒木:そうですね。実際にさまざまなユーザーの方々に使っていただける機会が増えるというのは、たいへんありがたいことです。私たちは高速化に対する深い知見があると自負していますが、現場の方々のニーズはさまざまで、どうしても掴みきれない部分もあります。お客様の声を聞くことで、より現場にフィットした技術やサービスをこれからも開発していきたいと思っています。
技術解説 FireDucks
Pythonライブラリ「pandas」のプログラムを自動で高速化
AI研究開発やデータ分析で用いられるプログラミング言語「Python」。そのなかでもテーブルデータの分析に用いられる「pandas」は、年間約12億ダウンロードされるほどのメジャーなライブラリです。しかし、pandasはシングルスレッドで動作し、せっかくのマルチコアCPUの性能を活かせないという問題がありました。その結果、データクレンジングなどのデータ前処理にかかる時間がデータサイエンティストの業務を圧迫し、生産性向上のためのボトルネックとなっている現状があります。
一方で、並列処理や要素処理、処理手順などのプログラム高速化のための研究は世界的に進められていますが、高度に専門的な知識が必要なため高いコストが必要となり、広く普及していません。
NECが開発した「FireDucks」は、このような課題に対応してpandasのプログラムを自動で高速化することができるソフトウェアです。
ベクトル型スーパーコンピュータや処理最適化を実現するコンパイラの開発に長年携わり、高速化をテーマとする国際学会でも高いプレゼンスを発揮しつづけてきたNEC。その専門家ならではの最先端の知見がふんだんに詰め込まれています。
特長1:平均5倍の高速化を実現
データサイエンティストが書いたプログラムを、まるで高速化の専門家がつくったようなレベルのプログラムに自動で変換することができるFireDucks。演算性能を平均5倍*高速化し、データサイエンティストの業務時間も約66%に圧縮することができると試算しています。
特長2:消費電力削減とCO2排出抑制に貢献
処理時間の減少によって、PCの消費電力を大幅に削減可能。また、処理の最適化によって、消費電力が大きくなりがちなスーパーコンピュータを使うことなくより低いスペックのPCでの演算も可能になります。また処理時間の減少によってPCの消費電力を大幅に削減することができ、CO2排出の抑制に貢献します。
特長3:pandasとAPI互換
導入時には別言語に書き換えたり、新たにプログラムを作り直したり、新たに機械学習をさせたりする必要はありません。pandasと互換性があるので、既存のpandas用のプログラムを動かすことが可能。スムーズに導入できます。
- *TPCx-BBベンチマークによる社内試験結果
- ※本ページに掲載されている内容は、公開時の情報です。
お問い合わせ