機械学習エンジニアの必須ツール

美容とファッションの専門家からの必読!機械学習エンジニアのための必要不可欠なツール

技術と生産性の両面から

写真:JESHOOTS.COM(Unsplash)

私は約4年前にSAPコンサルタントからデータサイエンティストにキャリアを転身しました。自分自身のために設計したカリキュラムを追いながら、1年以内にスタートアップエコシステム内のマシンラーニングエンジニアのポジションを確保しました。

これまでの4年間に学んだこと、使用したツール、経験したことを1つの記事にまとめることは簡単ではありません。それでも、私に特に恩恵をもたらしたものをハイライトします。

私の役割が進むにつれて、仕事上でさまざまなツールを使用し、特定のベストプラクティスに従ってソフトウェア開発スキルを育んできました:

  1. Gitとバージョン管理
  2. 読みやすい、クリーンなコードの書き方
  3. 異なる開発ツールの探索

これらを本記事で説明するだけでなく、それらが私のソフトスキルと生産性の向上にどのように役立ったかも触れていきます。さあ、始めましょう 🚀

Gitとバージョン管理

Gitはソフトウェア開発で広く使用されているオープンソースのバージョン管理システムです。それはプロジェクトを整理し、同じプロジェクトで作業する開発者間のコラボレーションを管理します。ソロで作業しているときはGitは使っていませんでした。コードとノートブックのバージョン管理を手動で行っていました 🙃

コラボレーションが絡んでくると、Gitは必要不可欠となります。プロジェクトの進捗を追跡し、コラボレーションを促進します。

Gitは学ぶべき広範なトピックであり、素晴らしい情報源が存在します(例:こちら)。今日は「コミット」という用語に焦点を当て、それが私の思考プロセスを整理するのにどのように役立ったかを説明します。

Gitのコミットは、コードの現時点でのスナップショットを取るのと同じです。

私の初めの学びの1つは、整理されたGitのコミットと簡潔なコミットメッセージの持ち方でした。

後に気づいたことは、コミットについて事前に考え、それを構造化することは、作業を整理し、コードをより論理的なパターンで設計するのにも役立つということです。

以下は、最近のプロジェクトのデータサイエンスの文脈でGitのコミットをどのように組織化できるかの例です:

著者による画像

コラボレーションの観点から、各コード変更ごとに1つの目的を持つようにコミットを分割することは、同僚がコードをより迅速にレビューするのにも役立つでしょう。

読みやすく、クリーンなコードの書き方

以前のメンターから「おばあさんでもあなたのコードが読めるようにしてください」と言われたことがあります。これは年齢主義的な観点ではなく、誰でもあなたのコードを簡単に読み理解できるようにすることを意味しています。

冗談はさておき、自分の思考プロセスをコードに反映させ、自己説明的なコードを書くことは、誰でもあなたの作業をレビューし、理解するのを支援します。

私は仕事上でクリーンなコードの作成方法を学び、さまざまな業界の本を読むことで磨きました:

  • Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin
  • Philosophy of Software Design by John Ousterhout.

「だから、速く進みたいなら、すぐに終わりたいなら、あなたのコードを書くのが簡単になるように、読みやすくしましょう。」

ロバート・C・マーティン

そして、最近の仕事からこちらが実装例です:

信じてください、読みやすくクリーンなコードを書くことによって、将来の自分だけでなく、チーム全体にも感謝されるでしょう!

異なる開発ツールを探索する

機械学習モデルの実験や、その有効性をテストするためのソリューションのプロトタイピングに関しては、ノートブックを使用することがよく選ばれます。

Jupyterノートブックはそのために最適のツールです。

機械学習エンジニアの役割に就く前、私は主にJupyterノートブックを使用して自分のプロジェクトに取り組んでいました。以前のチームではPyCharmの使用を強制されたため、最初の統合開発環境(IDE)に出会いました。

私は1回限りのノートブックソリューションを主に使用するデータサイエンティストとして、PyCharmの数多くの機能とユーザーインターフェースに少し圧倒されました。

しかし、時間が経つにつれて、PyCharmは私にとって当たり前のツールになっていきました。

コードの補完やエラーハイライト機能は、私の欠かせない助けになり、生産性に大いに貢献しています。

IDE内でGitをマスターすることにより、仕事の組織化能力が大幅に向上し、コーディングのスピードが向上し、手元のタスクにより効率的に集中することができるようになりました。また、数ヶ月後にそれを再訪した際に、自分自身にきれいなコードを書いたことに感謝しています 😉

読んでくださってありがとうございます!このブログ投稿は私にとって特別な意味を持っています。それは私のブログと技術記事への復帰を象徴しています 🤗

コメントや建設的なフィードバックは、リンク先、TwitterまたはLinkedInから私にお気軽にご連絡いただけます!

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more