女性たちはオープンソース プロジェクトを通して AI/ML テクノロジーの発展に大いに貢献しています。研究者、デベロッパー、および企業が最先端の AI/ML ソリューションを生み出し、実装することができるのは、彼女たちがツール、アルゴリズム、フレームワークを開発・保守してくれているからです。
こうした実績を称えるため、Google Dev Library では世界中のデベロッパーによる優れた貢献にスポットを当ててきました。これは、AI/ML プロジェクトに取り組んでいる女性デベロッパーたちの貢献を紹介する機会にもなります。ぜひ彼女たちのプロジェクトや考えについてお読みください。
Suzen さんは機械学習エンジニアです。社会問題に高い関心を持って使命を重視している企業が AI やデータを駆使してインパクトのある成果を上げられるよう、熱心にサポートしています。Suzen さんは Twitter 社での 3 年間の経験を活かして、モデル開発とデプロイメント プロセスを合理化したプラットフォーム ツールを開発。これにより、反復作業時間の短縮と効率アップを実現しました。最近では、Dev Library に InteractiveContext を使ってカスタム TFX アーティファクトをビジュアライズするというブログ記事を投稿しています。では、Suzen さんの経験を聞いてみましょう。
1. 最近 Dev Library に投稿された、InteractiveContext を使って TFX アーティファクトを検査するという記事について詳しくお聞かせください。また、TFX パイプラインのデバッグにおいてこの手法を重要視されているのはなぜでしょう?
私が TFX を気に入っている理由の 1 つは、パイプライン ステップを個別に実行でき、その結果を InteractiveContext を使ってインタラクティブに検査できる点です。かつては標準装備のビジュアライゼーションで標準的なアーティファクトしか表示できないと考えていましたが、カスタム アーティファクトで InteractiveContext が使えることもわかりました。カスタム アーティファクトの表示方法を説明する例が見つからなかったので、チュートリアルを書きました。
2. 他のデベロッパーの参考にしたいので、プロジェクトの技術ドキュメントを作成するときのプロセスを教えてもらえますか?
仕事やオープンソース プロジェクトの技術ドキュメントを作成する際は、できる限り、コミュニティのベスト プラクティスとスタイルガイドに従いつつ読者の立場で考えるようにしています。読者は何を学びたいと思っているだろうか、ドキュメントを読み終わったときに何を習得していたいだろうかということをよく考えます。投稿したチュートリアルを書く際にも、同じように考えていました。
興味のあるコミュニティや、自分で利用していて、改善をサポートしたいと思えるプロジェクトに貢献することをおすすめします。そのプロジェクトを使って何かを作成しましょう。ドキュメントにわかりにくい点があったら、質問してください。バグが見つかったら、報告してください。何か良いものが作れたら、デモを行ったり、解説ドキュメントを作成してください。解決できそうな問題が見つかったら、解決を申し出ましょう。行き詰まったり、わからないことがあったら、助けを求めてください。GitHub のガイド、オープンソースにコントリビュートする方法 (https://opensource.guide/how-to-contribute/) を読むのもおすすめです。私にとって一番の収穫は、オープンソース プロジェクトは単なるコード以上の価値を持ち、自分の興味に基づいてさまざまな方法で貢献できることを知れたことです。
私の個人的なプロジェクトの大半は、アクティブな学習エクササイズです。このようなプロジェクトについて書くとき、私は結果よりも開発プロセスの方にはるかに重点を置きます。仕組みを説明することに加え、開発のきっかけとなったもの、直面した課題、プロジェクトの次の構想について解説します。ツールやコンセプトを理解する上で参考になったリソースへのリンクも多数組み込みます。
3. オープンソース AI/ML プロジェクトの開発に興味がある他の女性に、アドバイスをお願いします。何から始めるのがおすすめですか?
興味のあるコミュニティや、自分で利用していて、改善をサポートしたいと思えるプロジェクトに貢献することをおすすめします。そのプロジェクトを使って何かを作成しましょう。ドキュメントにわかりにくい点があったら、質問してください。バグが見つかったら、報告してください。何か良いものが作れたら、デモを行ったり、解説ドキュメントを作成してください。解決できそうな問題が見つかったら、解決を申し出ましょう。行き詰まったり、わからないことがあったら、助けを求めてください。GitHub のガイド、オープンソースにコントリビュートする方法 (https://opensource.guide/how-to-contribute/) を読むのもおすすめです。私にとって一番の収穫は、オープンソース プロジェクトは単なるコード以上の価値を持ち、自分の興味に基づいてさまざまな方法で貢献できることを知れたことです。
4. Dev Library の著者のプロフィールによると、Suzen さんは「学習言語を楽しく親しみやすいものにする」方法を探しているそうですね。そのプロセスについてご紹介ください。
これは目標であり今のところは主に趣味としてやっています。私は言語について学ぶことも、言語の習得方法について学ぶことも大好きなんです。言語のことなら、何時間でも話していられます。実のところ、決まったプロセスはないんです。その代わり、自分の好奇心の赴くままに、多くの調査とテストを重ねます。時には、言語学の教科書を読んだり、別の言語学習アプリを試したり、Common Voice のようなプロジェクトに協力したり、spaCy のようなライブラリの使い方を学んだりします。
5. 今後数年間でオープンソース AI/ML 開発の分野はどのように発展するとお考えですか?また、こうした変化に向けてどのような準備をしていますか?
機械学習の大衆化を目的として、ツールやプラットフォームの開発が続けられていますね。これによって人々が自分の使用するモデルや AI 駆動のプロダクトと有意義に関わるようになり、仕組みについても理解を深めてくれることを願っています。また、これが Masakhane のような一般参加型の草の根研究コミュニティの増加につながり、ML やソフトウェア エンジニアリングのバックグラウンドがない人でもオープンソース プロジェクトの作成や貢献に挑戦できるようになるといいですね。
情熱的な機械学習エンジニアの Aqsa さんはテクノロジーに強い興味を持ち、他の人とアイデアを積極的に共有しています。人流予想、白内障の検出、拡張現実、物体検出、レコメンダー システムといったさまざまなプロジェクトで実践経験を積まれました。また、Dev Library に TensorFlow の Callback — トレーニング動作をカスタマイズするというブログ記事を投稿しています。では、Aqsa さんの経験を聞いてみましょう。
1. パキスタン初の Google Developer Expert (GDE) として、包括的かつ多様性を備えたコミュニティを構築するため、どのようなアプローチを取られましたか?
Google Developer Expert (GDE) としての私の責務は、包括的で多様性のあるイベント、ワークショップ、メンターシップを通じて、技術コミュニティの発展を支援することです。Google、仲間の GDE、そして Google デベロッパー グループのサポートを受け、バックグラウンドや経験レベルに関係なく、誰もが利用できる機会を創出することを目標に定めています。講演者の立場では、自分の ML に関する知識をさまざまなオーディエンスと共有し、技術分野では希少な女性、マイノリティ、多様な背景を持つ個人にサポートを提供しています。教育やキャリアの機会を紹介し、人々とリソースを結び付けるなど、さまざまなコミュニケーション手段を講じて人々の要望に可能な限り応えています。
2. オープンソース AI/ML プロジェクトで他のデベロッパーとコラボレーションする際には、どのようなアプローチを取りますか?また、成功を確実にするためのおすすめの方法をご紹介ください。
GDE コミュニティには、共同でチュートリアルや論文などの製作に取り組む、アクティブなオープンソース コントリビューターたちがいます。コラボレーションが奨励されており、Google 社員が GDE とのオープンソース プロジェクトを主導することもあります。興味を表明する人がいれば、デベロッパーは共に作業することを歓迎します。ポジティブな文化を育むため、尊重と尊敬、明確な目標、管理可能なタスク、コミュニケーション チャネル、オープンなコミュニケーション、建設的なフィードバックを重視し、マイルストーン達成を祝います。コラボレーションの成功の鍵は、互いの時間とスキルを尊重することです。
3. オープンソース プロジェクトでは、 どのようにして技術的な厳密さへのニーズと、ユーザビリティやアクセシビリティへのニーズのバランスを取っていますか?
技術的厳密さとユーザビリティを両立させるために不可欠なのは、オーディエンスとそのニーズについて理解することです。技術的基盤のないオーディエンスに対しては、技術的コンセプトを簡略化し、どのように活用するかに焦点を当てます。オープンソース プロジェクトは比較的柔軟ですが、ワークショップやトレーニングではオーディエンスにぴったりのツールやテクノロジーを選びます。初心者向けには、よりシンプルな言語とインタラクティブなデモを使います。中級者や上級者向けには、コーディング スニペットや複雑なコンセプトを使って技術的詳細を掘り下げます。
4. テクニカル ライターにとって、コンテンツやプロジェクトを定期的に改訂することが重要なのはなぜですか?すべてのテクニカル ライターとオープンソース保守担当者が、この方法をとる必要があるのでしょうか?
テクノロジーは絶えず変化しているので、テクニカル ライターはコンテンツを定期的に改訂し、精度を確保する必要があります。オーディエンスからのフィードバックは、使いやすさや関連性を向上する上で役立ちます。ただし、忙しいコントリビューターは改訂する時間を作れないかもしれません。それでも、開発初心者にとって、技術系のブログやプロジェクトは貴重な出発点であることに変わりなく、アップデートやブログのフォローアップで貢献するチャンスがあります。
5. あなたが特に誇りに思う、これまでに携わったプロジェクトと、それがオープンソース コミュニティに与えた影響について教えてください。
私はこれまで、その準備のためにメンターを務めた Google Women Developer Academy など、影響力のある取り組みに参加してきました。このプログラムは、技術業界の女性たちがコミュニケーション スキルを磨き、自らの才能を発揮する準備を整え、自信を深められるようサポートします。また、新型コロナウィルス感染症のパンデミックの渦中には、仲間の Google Developer Experts (GDE) たちと協力して、機械学習のコンセプトをわかりやすく解説する「ML for Rookies」というオープンソース講座を開設しました。現在は GCP のサポートを得て、Cloud AI プロジェクトに取り組んでいます。Cloud AI 学習をより身近にするため、オープンソースの「Cloud Playground」レポートも立ち上げました。
Margaret さんは ML リサーチ エンジニアで、2018 年から ML Google Developer Expert (GDE) を務めています。AI/ML を実世界で幅広く応用しており、その中には気候変動、アート、デザインなども含まれます。ディープ ラーニング、コンピュータ ビジョン、TensorFlow、オンデバイス ML に精通し、しばしば執筆や会議での講演に従事しています。Margaret さんは Dev Library で、TensorFlow Lite などのトピックについて複数のプロジェクトをシェアしています。では、Margaret さんの経験を聞いてみましょう。
1. 現在取り組んでいる Google テクノロジーについて教えていただけますか?
TensorFlow、TensorFlow Lite、Keras、Android、MediaPipe、ML Kit などの Google テクノロジーです。
2. オープンソース プロジェクトで他のデベロッパーとコラボレーションする際には、どのようなアプローチを取りますか?また、コラボレーションを確実に成功させるためのおすすめの方法を教えてください。
私は Google 社員、ML GDE、技術系の学生やプロとコラボレーションしています。コラボレーションを成功させる上で役立ったのは、一貫性のあるコミュニケーションと、コードのチェックインやコードレビューといったベスト プラクティスの順守です。
3. オープンソース AI/ML プロジェクトの作成や保守など、あなたの開発プロセスについて教えてください。また、プロジェクトに取り組む優先順位はどのように決めていますか?
時間には限りがあるので、優先順位付けはとても重要です。私自身も含めたデベロッパーにとって挑戦となるような、新しいテクノロジーや分野を紹介するのが好きですね。コードやチュートリアルに加え、スケッチノートやビジュアル イメージで自分の知識をシェアするのも好きです。
4. 学習リソースを TensorFlow Lite で共有しておられますね。オープンソース プロジェクトの開発に興味がある他の女性に、アドバイスをお願いします。何から始めるのがおすすめですか?
オープンソース プロジェクトには、さまざまな方法で貢献できます。ドキュメントやプロダクト機能についてフィードバックする、サンプルコードを使ってチュートリアルを作成する、バグ修正に協力する、ライブラリで貢献するなどです。まずはシンプルで簡単なプロジェクトから始めて、少しずつ難度を上げるのがおすすめです。
5. 今後数年間で、オープンソース AI/ML 開発分野はどのように発展するでしょう?また、こうした変化に対してどのような準備をしていますか?
AI/ML 開発におけるオープンソースはますます重要になっています。そうした傾向は、最近の生成 AI やオンデバイス機械学習に顕著です。オープンソース プロジェクトは、他にも数多くのチャンスをもたらすでしょう。オープンソース プロジェクトは、他者を助けながら最新技術を学べる、素晴らしい手段ですから、貢献を続けましょう。
AI/ML コミュニティに積極的に貢献している皆さん、Google Dev Library にも貢献しませんか?
Google Dev Library は、Google テクノロジーを活用したオープンソース プロジェクトを紹介するプラットフォームです。Google の世界的なデベロッパー コミュニティに参加して、あなたのプロジェクトを紹介しましょう。自分のコンテンツを送信する。