1. 機械学習をスキルとして扱う ソフトウェア エンジニアとして、私たちは常に学習し、進化するフレームワーク、標準、パラダイムについていく必要があります。同時に、学んだことを柔軟に応用し、仕事で最も適切なツールを使いこなして仕事の効率を高めることも必要です。機械学習がますます多くのアプリケーションに導入されるようになるにつれ、エンジニアが習得したいテーマになってきました。 機械学習を習得するのは、単なる新しいフレームワークを習得するよりも困難です。効果的な実践者になるには、その分野の理論を深く理解し、業界の現状を幅広く理解し、問題を非決定論的な方法で捉える能力が必要です。 慎重に選択されたデータセットで既成モデルをトレーニングし、適切な精度を達成する方法を教えるチュートリアルがオンラインで多数見つかります。実際、より関連性の高いスキルを身につけることが、効果的な機械学習エンジニアになるための鍵となります。 以下は、ベイエリアとニューヨーク市のトップ 50 以上の機械学習チームと行った会話の一部です。AI 実践者が直面する必要がある共通の問題を探り、応用 AI 分野への統合を加速することを期待しています。
機械学習が「単なるツールではない」理由 機械学習ソリューションを導入するということは、単にデータを使ってモデルをトレーニングするだけではありません。また、次のことも知っておく必要があります:
つまり、モデルを統合、展開、デバッグするには、エンジニアリング能力に加えて、統計、線形代数、最適化理論の基本原則も理解する必要があります。 問題に対するカスタム機械学習ソリューションを構築するには、データの取得、ラベル付け、前処理からモデルの構築、更新、提供まで、その間のすべてを考慮する必要があります。 最後に、標準的な Web アプリケーション用の REST API の構築は、事前に実行できるタスクであると考えています。一方、機械学習モデルは必ずしも収束したり、使用可能な出力を生成したりすることが保証されるわけではありません。影響力のある機械学習製品をレビューして提供する方法を学ぶ最良の方法は、その理論的基礎がデータ分類とどのように関連しているかを理解することです。 3. 応用AIに切り替える前に習得すべき5つのスキル 1. 統計 機械学習を深く理解するには、統計に関する強固な基礎が必要です。これには、次のようないくつかの側面が含まれます。
2. 機械学習理論 ニューラル ネットワークをトレーニングすると、実際に何が起こるのでしょうか。特定のタスクが可能で、他のタスクが実行不可能なのはなぜでしょうか。これを理解する最善の方法は、理論に飛び込むのではなく、グラフィックスと例を通じて機械学習を理解することです。 理解する必要がある概念は、さまざまな損失関数がどのように機能するか、バックプロパゲーションがなぜ役立つか、計算グラフとは何かなど多岐にわたります。機能モデルを構築する方法と、他のチームメンバーと効果的にコミュニケーションをとる方法については、深い理解が必要です。以下に参考資料を示します。
もう一つの重要なスキルは、論文を読んで理解し、実装する能力です。最初は大変そうに思えるかもしれませんが、コードに付属する論文を読んで(たとえば、GitXiv の論文を調べて)、それがどのように実装されているかを理解するのが最善の方法です。 3. データ処理 データ サイエンティストに主な仕事は何かと尋ねると、仕事の 90% はデータ処理であると答えるでしょう。モデルの成功はデータの質(および量)と強く相関しているため、これは AI の適用においても同様に重要です。データ作業にはさまざまな側面が含まれますが、次のカテゴリにまとめることができます。
データの操作に慣れる最良の方法は、データセットを取得して実際に操作してみることです。オンラインで利用できるデータセットは数多くあり、API を提供するソーシャル メディアやニュース メディア サイトも数多くあります。上記の手順に基づいて、次のことを学ぶことができます。
4. モデルのデバッグまたは調整 機械学習アルゴリズムのデバッグ(収束しない、または不合理な結果を返す)は、通常のコードのデバッグとは大きく異なります。同時に、適切なアーキテクチャとハイパーパラメータを見つけるには、強固な理論的基礎と、さまざまな構成を徹底的にテストするための完全なインフラストラクチャが必要です。 機械学習の分野が急速に発展するにつれて、モデルをデバッグする方法も絶えず進化しています。以下は、デプロイメント モデルに関する私たちの議論と経験から導き出された「健全性チェック」のリストであり、これらの項目は、多くのソフトウェア エンジニアによく知られている KISS 原則を何らかの形で反映しています。 できるだけ早くベースライン バージョンを取得するには、同様のデータセットで動作することが示されている単純なモデルから始めます。従来の統計学習モデル (線形回帰、最近傍法など) または単純なヒューリスティック アルゴリズムやルールを使用すると、通常、問題の 80% を解決し、ニーズをより早く達成できます。最初は、できるだけ簡単な方法で問題を解決します (Google の機械学習ルールの最初のいくつかのポイントを参照してください)。 ベースラインを改善するために、より複雑なモデルをトレーニングすることに決めた場合は、データセットの非常に小さなサブセットでモデルをトレーニングし、オーバーフィットすることができます。これにより、モデルが少なくとも学習可能であることが保証されます。モデルは、データの 5% が過剰適合するまで継続的に反復されます。 より多くのデータを使用してトレーニングを開始すると、ハイパーパラメータがより大きな役割を果たし始めます。適切な値を見つけるには、これらのパラメータに関連する理論を理解する必要があります。 モデルのチューニングにはターゲットを絞ったアプローチを使用します。使用したすべての構成とその結果を簡単に記録します。理想的には、自動化されたハイパーパラメータ検索戦略を使用できます。最初はランダム検索を使用するだけで十分です。 開発スキルが優れているほど、これらのステップはより速く実装され、逆もまた同様です。 5. ソフトウェアエンジニアリング 多くの応用機械学習の仕事では、ちょっとした工夫はあるものの、ソフトウェア エンジニアリングのスキルを活用できます。これらのスキルには以下が含まれます。
4. 作業のヒント 上記のリソースは、実用的な機械学習の問題へのアプローチと解決に役立ちます。ただし、応用 AI の分野は急速に変化するため、学習する最善の方法は、実際に手を動かして、実際の問題を解決するためのエンドツーエンドのソリューションを構築してみることです。 アクション項目: 構築するのに興味深いと思われる製品を見つけます。あなたの生活をより効率的にするには何が必要ですか? 何かを達成するためにデータを活用する方法を改善するツールは何でしょうか? 興味深い問題を解決するデータ駆動型の方法は何でしょうか? 質問に関連するデータセットを検索します。最も扱いやすい問題の場合、すでにラベル付けされたデータが探しているものである可能性があります。問題に対応するラベル付きデータセットがない場合は、今すぐ作成してください。類似データを検索したり、データを効率的にラベル付けしたり、あるいはこの作業をスピードアップしたりするには、どのような方法を使用できますか? 作業を始める前に、手元にあるデータが量と質の面で現在のタスクの要件を満たすかどうかを確認します。 TensorFlow を使用する前に、他のユーザーが同様の問題をどのように解決したかをオンラインで調べるのが最善です。作業を迅速化するために役立つ関連するブログ投稿や論文は何ですか? インスピレーションを見つけて、飛び込んでみましょう。発見したパターンや例が後で間違っていることが判明することもあります。しかし、問題の複雑さをより深く理解できるようになるので、これは良いことです。 5. 最終的な提案 人工知能は刺激的で進化を続ける分野です。機械学習エンジニアが関連知識を習得する必要性が高まっていますが、関連ニュースに圧倒されてしまいがちです。 PR や抽象的な研究をその分野のイノベーションから切り離すことができるように、少数の情報源とプレスレターのみをフォローすることをお勧めします。役に立つかもしれないリソースをいくつか紹介します: Hacker News: Hacker News は、コンピューター サイエンス、データ サイエンス、起業家精神に焦点を当てたソーシャル ニュース サイトです。有名なスタートアップインキュベーターであるY Combinatorによって運営されています。名前だけでこのサイトを敬遠しないでください。「ハッカー」という言葉の本来の意味はサイバー犯罪者とはまったく関係がなく、優れたプログラミング スキルを駆使して完璧な解決策を編み出す人々を指します。 Import AI: 人工知能に関するジャック・クラークのニュースレター。この分野の最新かつ最も重要な開発情報をお届けします。 Insight ブログ: 私たちはかなり活発なペースを維持しています。 AI ブログの一部の投稿では過去のプロジェクトについて語られており、興味深い問題を解決するためのインスピレーションが湧くことがあります。また、AI 関連のコンテンツをメーリング リストに定期的に送信しています。 |
<<: 素人でもわかるポピュラーサイエンス:これは自然言語処理と呼ばれるものです
>>: 予測分析アルゴリズムを効果的に使用するための 10 のステップ
[[270591]]弁護士は、法律知識、鋭敏な時間管理、説得力、雄弁さなど、多くのスキルを身につけて...
現在、企業は機械学習を使用することで、予測エラー率、需要計画の生産性、コスト削減、納期厳守において ...
[[195041]]機械学習を始めるにあたって、万能のアプローチは存在しません。私たちは皆、少しずつ...
人工知能やビッグデータなどの新技術の応用と推進に伴い、ビッグモデルも人気の技術となっています。もちろ...
[[349418]]序文今回紹介するトライ辞書ツリーは、データ構造トピックの分岐です。トライのツリー...
[[316192]]独自の NLP アプリケーションで使用できる 12 個のツールを見てみましょう。...
この記事は公開アカウント「Reading Core Technique」(ID: AI_Discov...
【51CTO.com クイック翻訳】機械学習モデルは、定義されたビジネス目標に合わせて設計されていま...
音声テキスト変換 (STT) システムは、その名前が示すとおり、話された言葉を後で使用するためにテキ...
[[216638]]韓国メディアは、中国の囲碁棋士である柯潔氏が2018年春にテンセントが開発した人...