導入 これら 12 の質問は、現在の面接で最も人気のある質問です。これらは非常に基本的な質問ですが、面接対象者のレベルを反映することもあり、非常に差別的です。面接官も求職者も見ることができます。 これらは、AI エンジニア職の面接で私がよく尋ねる質問です。実際には、候補者のこれまでの経験やプロジェクトに応じて、これらの質問すべてをすべての面接で使用する必要はありません。私は、特に学生との数多くのインタビューを通じて、ディープラーニングに関する最も人気のあるインタビューの質問を 12 個集めました。今日のこの投稿で、それらを皆さんと共有します。皆様のたくさんのコメントをお待ちしております。さて、話はこれくらいにして、始めましょう。 1. バッチ正規化の重要性の紹介 これは、ニューラル ネットワーク モデルを扱う際に候補者が知っておく必要のあるほとんどのことを網羅しているため、非常に良い質問です。これにはさまざまな方法で答えることができますが、主に次の点を指摘する必要があります。 バッチ正規化は、ニューラル ネットワーク モデルをトレーニングするための効果的な方法です。この方法の目的は、特徴(各レイヤーのアクティブ化後の出力)を平均 0、標準偏差 1 になるように正規化することです。問題は、ゼロ以外の平均値がモデルのトレーニングにどのように影響するかということです。
2. バイアスと分散のトレードオフを説明する バイアスとは何でしょうか? ご存知のとおり、バイアスとは、現在のモデルの平均予測と予測する必要がある実際の結果との差です。バイアスが高いモデルは、トレーニング データにあまり注意を払っていないことを示します。これにより、モデルが単純になりすぎて、トレーニングとテストの両方で非常に高い精度が達成されませんでした。この現象はアンダーフィッティングとも呼ばれます。 分散は、データ ポイント上のモデル出力の分布として簡単に理解できます。分散が大きいほど、モデルがトレーニング データに重点を置き、これまで遭遇したことのないデータに対して一般化を行わない可能性が高くなります。つまり、モデルはトレーニング データセットでは非常に良い結果を達成しましたが、テスト データセットと比較すると結果は非常に悪く、これはオーバーフィッティングと呼ばれる現象です。 これら 2 つの概念の関係は次の図に示されています。 上の画像では、円の中心が正確な値を完璧に予測したモデルです。実際、これほど優れたモデルはこれまで見たことがありません。円の中心から離れるほど、予測は悪くなります。 円の中心に入るモデル推測の数をできるだけ増やすようにモデルを変更することができます。偏りと差異の間でバランスを取る必要があります。モデルが単純すぎてパラメータが少ない場合、バイアスが高くなり、分散が低くなる可能性があります。 一方、モデルのパラメータ数が多い場合、分散は大きくなり、バイアスは小さくなります。これは、アルゴリズムを設計するときにモデルの複雑さを計算するための基礎となります。 3. ディープラーニング モデルにすでに 1,000 万の顔ベクトルがある場合、クエリを通じて新しい顔を見つけるにはどうすればよいでしょうか? この質問は、ディープラーニング アルゴリズムの実際の応用に関するものです。この問題の鍵となるのは、データのインデックス作成方法です。これは、ワンショット学習を顔認識問題に適用する最後のステップですが、実際に展開するための最も重要なステップです。 基本的に、この質問に答えるには、まず顔認識のためのワンショット学習の一般的な方法を説明する必要があります。これは簡単に言えば、各顔をベクトルに変換することであり、新しい顔認識は、入力された顔に最も近い(最も類似する)ベクトルを見つけることです。通常、これを実現するには、トリプレット損失関数を備えたディープラーニング モデルを使用します。 しかし、画像の数が増えると、認識ごとに 1,000 万のベクトルまでの距離を計算するのは賢明な解決策ではなく、システムの速度が大幅に低下します。クエリをより便利にするためには、実ベクトル空間でデータをインデックスする方法を考慮する必要があります。 これらの方法の主な考え方は、新しいデータのクエリに便利な構造(おそらくツリー構造に似たもの)にデータを分割することです。新しいデータが利用可能になると、ツリーをクエリすると、最も近いベクトルをすばやく見つけることができます。 この目的に使用できる方法はいくつかあり、たとえば、Locality Sensitive Hashing (LSH)、approximate Nearest Neighbors (Annoy Indexing) などがあります。 4. 分類問題に対する精度指標は完全に信頼できるものですか? モデルを評価するために通常どの指標を使用していますか? ある種の問題にはさまざまな評価方法があります。精度の点では、この式は、正しく予測されたデータ ポイントの数を合計データで単純に割ります。これは合理的に思えますが、実際には、不均衡なデータの問題の場合、この量は十分に重要ではありません。ネットワーク攻撃の予測モデルを構築しているとします (攻撃リクエストが総リクエストの 1/100,000 を占めると想定)。 モデルがすべてのリクエストが正常であると予測した場合、精度は 99.9999% になりますが、これは通常、分類モデルでは信頼できません。上記の精度計算では、通常、データの何パーセントが正しく予測されたかが示されますが、各クラスがどのように分類されたかは詳細には示されません。代わりに、混同行列を使用することができます。基本的に、混同行列は、実際に 1 つのクラスに属し、別のクラスに属すると予測されるデータ ポイントの数を示します。その形式は次のとおりです。 分類を定義する各しきい値に対応する真陽性および偽陽性のメトリックの変化を表すことに加えて、ROC プロットもあります。 ROC 曲線によれば、モデルが有効かどうかがわかります。 理想的な ROC 曲線は、左上隅に最も近いオレンジ色の線です。真陽性率は比較的高く、偽陽性率は比較的低いです。 5. バックプロパゲーションを理解するにはどうすればよいでしょうか? その作用メカニズムを説明してください。 この質問は、ニューラル ネットワークの仕組みに関する知識をテストするために設計されています。以下の点を明確にする必要があります。
6. 活性化関数とは何を意味しますか? 活性化関数の飽和範囲は何ですか? 活性化関数の重要性 活性化関数は、ニューラル ネットワークの線形特性を破壊するために作成されます。これらの機能は、フィルターを使用して情報がニューロンを通過するかどうかを決定するものとして簡単に理解できます。ニューラル ネットワークのトレーニングでは、活性化関数が導関数の傾きを調整する上で重要な役割を果たします。シグモイド、フィッシュ、ReLU などのいくつかの活性化関数については、次のセクションでさらに詳しく説明します。 しかし、理解する必要があるのは、これらの非線形関数の特性により、ニューラル ネットワークが単なる線形関数よりも複雑な関数の表現を学習できるようになるということです。ほとんどの活性化関数は連続的に微分可能です。 これらの関数は連続的です。つまり、入力変数が小さく微分可能 (そのドメイン内のすべてのポイントで導関数を持つ) であれば、出力に小さな変化が生じます。もちろん、上で述べたように、導関数の計算は非常に重要であり、ニューロンをトレーニングできるかどうかの決定的な要因となります。 Sigmoid、Softmax、ReLU など、よく使用される活性化関数をいくつか挙げます。 活性化関数の飽和区間 Tanh、Sigmoid、ReLU などの非線形活性化関数にはすべて飽和区間があります。 トリガー関数の飽和範囲とは、入力値が変化しても関数の出力値が変化しない区間を指すことは容易に理解できます。変化間隔には2つの問題があります。ニューラルネットワークの順方向伝播では、この層の値が徐々に活性化関数の飽和間隔に陥り、複数の同一の出力が徐々に出現するようになります。 これにより、モデル全体で同じデータ フローが実現されます。この現象は共分散シフトと呼ばれます。 2 番目の問題は、バックプロパゲーション中に、導関数が飽和領域でゼロになるため、ネットワークがほとんど何も学習しないことです。このため、バッチ正規化のセクションで説明したように、値の範囲を平均が 0 になるように設定する必要があります。 7. モデルのハイパーパラメータとは何ですか? パラメータとどう違うのですか? モデルのパラメータは何ですか? 機械学習の本質に戻ると、機械学習にはデータセットが必要です。データなしでどうやって学習できるでしょうか? データが利用可能になると、マシンはデータの山の中で入力と出力の関係を見つける必要があります。 データが気温や湿度などの気象情報だとします。機械に求められるのは、上記の要因と奥さんが怒っているかどうかの関連性を見つけることです。これは関係ないように思えるかもしれませんが、機械学習は、その機能に関して言えば、かなり愚かです。ここで、変数 y を使用して妻が怒っているかどうかを表し、変数 x1、x2、x3... が天候の要素を表すとします。関数 f (x) を次の関係に簡約します。 係数w1、w2、w3が見えますか? w_1、w_2、w_3 ..w1、w2、w3 ..? これは、必要なデータと要素の関係であり、いわゆるモデル パラメーターです。したがって、モデルパラメータを次のように定義できます。 モデル パラメーターは、トレーニング データから生成されるモデル値であり、データ内の数量間の関係を示すのに役立ちます。 したがって、問題に適したモデルを見つけたと言う場合、それは既存のデータセット上で問題に最適なモデル パラメータを見つけたことを意味します。次のような特徴があります。
モデル パラメータには、ニューラル ネットワークの重み、サポート ベクター マシンのサポート ベクター、線形回帰またはロジスティック回帰アルゴリズムの係数など、さまざまな形式があります。 モデルのハイパーパラメータとは何ですか? モデルのハイパーパラメータはモデルパラメータに似ているとよく思われますが、実際はそうではありません。実際、これら 2 つの概念は完全に別個のものです。モデル パラメータがトレーニング データセット自体によってモデル化される場合、モデルのハイパーパラメータは完全に異なります。これは完全にモデルの外部にあり、トレーニング データに依存しません。その目的は何でしょうか? 実際には、いくつかのタスクがあります。
特定の問題に関して、最適なモデルハイパーパラメータが何であるかがまったくわかりません。したがって、実際には、グリッド検索などのいくつかの手法を使用して、適切な値の範囲(k 最近傍モデルにおける k 係数など)を推定する必要があります。ここで、モデルのハイパーパラメータの例をいくつか示します。
8. 学習率が高すぎる、または低すぎる場合はどうなりますか? モデルの学習率が低すぎると、重みの更新が非常に少なくなるため、モデルのトレーニングが非常に遅くなります。局所最適値に到達するまでに多くの更新が必要です。 学習率が高すぎると、重みの更新が過剰になり、モデルが収束しない可能性があります。重みを更新するステップで、モデルがローカル最適化から外れ、将来的にモデルが最適なポイントに更新することが困難になり、代わりにローカル最適化ポイントの周りをジャンプする可能性があります。 9. 画像サイズが 2 倍になると、CNN パラメータの数はいくつに増えますか? なぜですか? これは受験者にとって非常に誤解を招く質問です。なぜなら、ほとんどの受験者は CNN パラメータの数が何倍に増加するかに焦点を合わせるからです。ただし、CNN のアーキテクチャを見てみましょう。 CNN モデルのパラメータの数は、入力画像ではなく、フィルターの数とサイズによって決まることがわかります。したがって、画像のサイズを 2 倍にしても、モデルのパラメータの数は変わりません。 10. 不均衡なデータにはどのように対処すればよいですか? これは、実際のデータの問題に対処する候補者のアプローチをテストする質問です。通常、実際のデータと標準データセットは、データセットの特性と量が大きく異なります (標準データセットでは調整は必要ありません)。実際のデータセットでは、データの不均衡、つまりクラス間のデータが不均衡になる場合があります。ここで、次のテクニックを検討することができます。
11. ディープラーニング モデルをトレーニングする場合、エポック、バッチ、反復の概念はどういう意味ですか? これらはニューラル ネットワークをトレーニングする際の非常に基本的な概念ですが、実際には多くの受験者がこれらの概念を区別する際に混乱します。具体的には、次の質問に答える必要があります。
12. データ ジェネレーターの概念は何ですか? いつ使用する必要がありますか? データ ジェネレーターは、コードを書く上で非常に重要です。データ生成関数は、データを直接生成し、それをモデルに送信して各バッチをトレーニングするのに役立ちます。 生成関数の使用は、ビッグデータのトレーニングに非常に役立ちます。データセットを常に RAM に完全にロードする必要はないため、これはメモリの無駄であり、データセットが大きすぎるとメモリ オーバーフローが発生し、入力データの処理時間が長くなります。 要約する これらは、面接プロセス中に候補者によく尋ねるディープラーニングに関する 12 の面接の質問です。ただし、質問の仕方は受験者ごとに異なり、受験者の質問の中からランダムに出題される質問もあります。 この記事は技術的な問題についてのものですが、面接にも関係しており、私の個人的な意見では、面接の成功の 50% は態度によって決まります。したがって、知識とスキルを積み重ねることに加えて、常に誠実さ、進歩、謙虚さを持って自分自身を表現すれば、どんな会話でも必ず成功するでしょう。あなたの願いが早く叶うことを願っています。 |
<<: ハイパーコンバージド インフラストラクチャで AI をエッジに押し上げる
>>: 【ビッグネームがやってくる、エピソード10】柔軟なビッグデータクラウド分析プラットフォームを構築するためのハードルはゼロ
この記事は公開アカウント「Reading Core Technique」(ID: AI_Discov...
諺にこうあります:雷鋒が雷鋒塔を倒し、Java が JavaScript を実装します。 Java ...
1. 推奨ステータスまず、レコメンデーションシステムの現状について簡単に紹介します。推薦システムは、...
2020 年のサイバーセキュリティは転換点を迎えています。人工知能と機械学習の進歩はサイバーセキュリ...
スーパー人工知能の出現は、多くの作業を非常に効率的に完了できることを意味するため、私たちはその出現を...
IoT アプリケーションでは、AI はデータ スタックの「最上位」で使用されることが多く、複数のソー...
新たな研究によると、遺伝子間の自然発生的な突然変異は、生まれつきの遺伝子と同じくらい自閉症において重...
私は最近、Sina Weibo の「あなたに興味があるかもしれない人々」の間接的なフォローアップ推奨...
ビジネスが発展し、テクノロジーが成熟するにつれて、企業はデータの大幅な増加に直面しています。ビッグデ...
米国のパデュー大学が最近発表した「誰の回答が優れているか? ChatGPT と Stack Over...
1. 事業背景ショートビデオや情報ストリームなどのシナリオの増加に伴い、ユーザーはこれらのシナリオで...
標準は経済活動や社会の発展を技術的に支えるものであり、人々の生活に深く関わっています。最近、中国共産...
[[441939]] AIの概念が初めて提唱されたのは1956年なので、60年以上の歴史があります。...
[[264296]]これは非常に興味深いスピーチです。これはMWCでソフトバンクの孫正義氏が行った...