機械学習トランスフォーマーアーキテクチャの謎を解く

機械学習トランスフォーマーアーキテクチャの謎を解く

翻訳者|朱 仙中

レビュー | Chonglou

Transformers は 2017 年の発売以来機械学習の分野で大きな力となり、プロの翻訳や自動補完サービスの機能に革命もたらしまし

OpenAIChatGPTMetaLLamaなどの大規模言語モデルの登場により、トランスフォーマーの人気は最近急上昇しています上記のモデルはすべてコンバーターアーキテクチャに基づいており業界で大きな注目を集めています。これらのモデルは、トランスフォーマーの力を活用することで、自然言語の理解と生成において目覚ましい進歩を遂げました。

コンバーターの仕組みを説明する優れリソースWeb 上に多数あります、私自身は、コンバーターの仕組みの背後ある数学的な意味は理解しているもののその仕組みを直感的に説明するのに苦労しています。複数のインタビューを実施し、同僚と話し、この問題についてライトニングトークを行った結果これは多くの人にとって問題であるように思われます

このブログ投稿では、コードや数学に頼らずにコンバーターがどのように動作するかを高レベルで説明したいと思います。私の目標は、紛らわしい技術用語を避け、以前のアーキテクチャとの比較を避けることです。できるだけシンプルにしようとは思いますが、コンバーターは非常に複雑なので簡単ではありませんが、コンバーターの機能とその仕組みについて、より直感的に理解していただければ幸いです。

コンバーターとは何ですか?

Transformer は、シーケンスを入力として処理するタスクに適したニューラル ネットワーク アーキテクチャです。この文脈では、シーケンスの最も一般的な例はおそらく文であり、これは順序付けられた単語の集合として考えることができます。

これらのモデルの目的は、要素とその隣接するコンテキストに関する重要な情報をカプセル化するシーケンス内の各要素のデジタル表現を作成することです。結果として得られた数値表現は下流のネットワークに渡され、下流のネットワークはこの情報を使用して生成や分類などのさまざまなタスクを実行できます。

このような豊富な表現を作成することにより、これらのモデルは下流のネットワークが入力シーケンスの基本的なパターンと関係をよりよく理解できるようにし、一貫性があり文脈的に関連のある出力を生成する能力を強化します。

トランスフォーマーの主な利点は、シーケンス内の長距離依存関係高効率で処理できることと、シーケンスを並列処理できることです。これは、機械翻訳、感情分析、テキスト生成などのタスクに特に役立ちます。

Azure OpenAI サービス上のDALL-E モデルによって生成された画像。プロンプトは次のとおりです:「オプティマスプライムをした緑と黒のマトリックス コード

コンバータへの入力

入力を Transformer に渡すには、まずそれをトークンのシーケンス(入力を表す整数のセット) に変換する必要があります。

Transformer はもともと自然言語処理の分野で応用されていたので、まずはこのシナリオを考えてみましょう。文を一連のトークンに変換する最も簡単な方法は、単語を整数にマッピングするルックアップ テーブルとして機能する語彙を定義することです。この語彙に含まれていない単語を表す特定の番号を予約しておけば、常に整数値を割り当てることができます。

実際には、これはテキストをエンコードする非常に単純な方法です。なぜなら、 catcatsのような単語は、同じ動物の単数形と複数形の説明であるにもかかわらず、完全に異なるトークンとして扱われるからですこれを克服するために、インデックスを作成する前に単語を小さなチャンクに分割するバイトペアエンコーディングなどのさまざまなトークン化戦略が設計されていますさらに、モデルに追加のコンテキストを提供するために、文の始まりや終わりなどの特徴を示す特別なトークンを追加すると便利な場合がよくあります。

トークン化プロセスをよりよく理解するために、次の例を考えてみましょう。

こんにちはドロスヴァル今日の天気はいいですよね

ここで、 Drosval は、GPT-4 が次のプロンプトを使用して生成した名前です。「 David Gemmell の Drenai の世界に由来するような架空の地名を作成できますか? これは訓練された機械モデルの語彙には現れてはならないため、意図的に選択されました。

コンバーター ライブラリbert-base-uncasedトークナイザーの助けを借りて上記の文は次のトークン シーケンスに変換されます。

各単語を表す整数は、特定のモデル トレーニングとトークン化戦略によって異なります。デコードすると、各トークンが表す単語がわかります。

興味深いことに、これは元の入力とは異なることがわかりますいくつかの特別なトークンが追加され略語は複数のトークンに分割され、架空の地名は異なる「ブロック」で表されます。前述のbert-base-uncased モデルを使用した場合も大文字小文字のコンテキストがすべて失われます

ただし、例では文章を使用しましたが、 Transformer はテキスト入力に限定されません。このアーキテクチャは、視覚タスクでも優れた結果を達成しています。画像をシーケンスに変換するために、ViT の作成者は、画像重複しない 16 x 16 ピクセル ブロックにスライスし、それらを長いベクトルに連結してからモデルに渡しますトランスフォーマーをレコメンデーション システムで使用する場合、1 つの方法として、ユーザーが最後に閲覧した n 個のアイテムのアイテム ID をネットワークへの入力として使用することが考えられます。ドメインに対して意味のある入力トークン表現を作成できれば、それを Transformer ネットワークに取り込むことができます。

マークアップを埋め込む

入力を表す整数のシーケンスを取得したら、それを埋め込みに変換できます埋め込みは、機械学習アルゴリズムによって簡単に処理できる方法で情報を表現する方法です。その目的は、情報を一連の数字として表現することにより、圧縮形式でエンコードされたトークンの意味を捉えることです。最初に、埋め込みは乱数のシーケンスに初期化され、トレーニング中に意味のある表現が学習されます。ただし、これらの埋め込みには固有の制限があります。トークンが出現するコンテキストが考慮されないのです。これには2つの側面があります。

1 つの問題は、タスクによっては、トークンを埋め込むときに、トークンの順序も保持する必要がある場合があることです。これは、NLP などの分野では特に重要ですそうでない場合は基本的にbag-of-words アプローチになります。これを克服するために、埋め込みに位置エンコーディングを適用します。位置埋め込みを作成するには複数の方法がありますが、主な考え方は、入力シーケンス内のトークンの位置を表す別の埋め込みセットがあり、それをトークン埋め込み組み合わせることです。

もう 1 つの問題は、タグが周囲のタグ付けされたコンテンツに応じて異なる意味を持つ可能性があることです次の文を考えてみましょう。

暗いですね。誰が電気を消したのですか

わあ、この荷物は本当に軽いですね

ここでは、 「光」という言葉が 2 つの異なる文脈で使用されており、異なる文脈ではまったく異なる意味を持ちますただし、トークン化戦略によっては、埋め込みは同じになる場合があります。 Transformer では、これはアテンション メカニズムによって処理されます。

概念的には、注意とは何でしょうか?

おそらく、Transformer アーキテクチャで使用される最も重要なメカニズムは注意であり、これにより、ネットワークは入力シーケンスのどの部分が特定のタスクに最も関連しているかを学習できます。シーケンス内のトークンについて、アテンション メカニズムは、コンテキストを与えられた現在のトークンを理解するために重要な他のトークンを識別します。これをトランスフォーマーに実装する方法を検討する前に、まずは簡単にアテンション メカニズムが概念的に何を達成しようとしているのかを理解し直感的な理解を深めてみましょう

注意を理解する 1 つの方法は、コンテキストに関係なくすべてのトークンに同じ埋め込みを使用するのではなく、トークンの埋め込みを、隣接するトークンに関する情報を含む埋め込みに置き換える方法と考えることです。どのトークン現在のトークンに関連しているかがわかっている場合、このコンテキストをキャプチャする 1 つの方法は、これらの埋め込みの加重平均、より一般的には線形結合を作成することです。

先ほど見た文の 1 つを検索する方法の簡単な例を考えてみましょう。注意を適用する前は、シーケンス内の埋め込みに隣接するもののコンテキストがありません。したがって、 light 」という単語の埋め込みを次の線形結合として視覚化できます

ここで、重みは単なる単位行列であることがわかります。注意メカニズムを適用した後、重み行列を学習して、次のような方法で軽い埋め込みを表現できるようにします。

今回は、選択したトークンのシーケンスの最も関連性の高い部分に対応する埋め込みにさらに重みを付けます。これにより、最も重要なコンテキストが新しい埋め込みベクトルに確実に取り込まれるようになります。

現在のコンテキストに関する情報を含む埋め込みは、コンテキスト埋め込みと呼ばれることもあり、これが最終的に私たちが作成しようとしているものです。

Attention が何を達成しようとしているのかを大まかに理解できたので、次のセクションではこれが実際にどのように達成されるのかを見ていきましょう

注目度はどのように計算されますか?

注意にはさまざまな種類があり、主な違いは線形結合を実行するために使用される重みの計算方法です。ここでは、最も一般的なアプローチである、元の論文で紹介されたスケールされたドット積アテンションを検討しますこのセクションでは、すべての埋め込みが位置的にエンコードされていると想定します。

私たちの目標は、元の埋め込みの線形結合を使用してコンテキスト埋め込みを作成することであることを思い出してください。最も簡単な説明から始め、必要なすべての情報を学習する埋め込みベクトルにエンコードでき、計算する必要があるのは重みだけだと仮定しましょう。

重みを計算するには、まずどのタグが互いに関連しているかを判断する必要があります。これを実現するには、2 つの埋め込み間の類似性の概念が必要です。この類似性を表す 1 つの方法はドット積を使用することです。スコアが高いほど 2 つの単語の類似性が高くなるように埋め込みを学習します。

トークンについて、シーケンス内の他のトークンとの相関を計算する必要があります。これは行列の乗算に一般化でき、重み行列が得られます。これはしばしば注目スコアと呼ばれます。重みの合計が 1 になるように、 SoftMax 関数も適用しますただし、行列の乗算によって任意の大きな数値が生成される可能性があるため、SoftMax 関数は大きな注意スコアに対して非常に小さな勾配を返す可能性があります。これにより、トレーニング中に勾配消失問題が発生する可能性があります。この効果を打ち消すために、SoftMax を適用する前に、注目スコアにスケーリング係数を掛けます。

ここで、コンテキスト埋め込み行列を取得するには、注目スコアを元の埋め込み行列に掛け合わせます。これは、埋め込みの線形結合に相当します。

単純化された注目度の計算: 埋め込みが位置的にエンコードされていると仮定

モデルは、注目スコアとそれに続くコンテキスト埋め込みを生成するのに十分複雑な埋め込みを学習するかもしれませんが、私たちは、通常は小さい埋め込み次元に多くの情報を圧縮しようとします。

そこで、モデルがこのタスクを学習しやすくするために、学習しやすいパラメータをいくつか導入してみましょう。埋め込み行列を直接使用するのではなく、3 つの個別の線形レイヤー (行列乗算) に渡します。これにより、モデルは埋め込みのさまざまな部分に注意を払う」ことができるようになります。次の図に示すように:

スケールドドット積自己注意: 埋め込みが位置的にエンコードされていると仮定

画像から、線形投影に Q、K、V というラベルが付けられていることがわかります。元の論文では、これらの投影は、情報検索にヒントを得たものとして、クエリ、キー、値と名付けられていました。個人的には、この類推が理解に役立つとは思わなかったので、あまり重点を置かない傾向にあります。文献との一貫性を保つために、ここでは用語に従い、これらの線形層が異なることを明確にします。

このプロセスがどのように機能するかを理解したのでアテンション計算を、Q、K、V に渡される 3 つの入力を持つ単一のブロックとして考えることができます。

同じ埋め込み行列を Q、K、V に渡すことを自己注意と呼びます。

多頭注意とは何ですか?

実際には、 Transformer が入力シーケンスの異なる部分に同時に焦点を合わせることができるように、複数の自己注意ブロックを並列に使用することがよくあります。これは、マルチヘッドアテンションと呼ばれます

マルチヘッド アテンションの背後にある考え方は単純で、複数の独立した自己アテンション ブロックの出力が連結され、線形レイヤーに渡されます。この線形レイヤーにより、モデルは各注意ヘッドからのコンテキスト情報を組み合わせることを学習できます。

実際には、各自己注意ブロックで使用される隠し次元のサイズは、通常、埋め込み行列の形状を維持するために、元の埋め込みサイズを注意ヘッドの数で割った値になるように選択されます。

コンバーターは他に何で構成されていますか?

Transformerを紹介した論文は(今では悪名高いことですが) 「Attention」と名付けられましたが、 Transformer には Attention 以外のコンポーネントもあるため、少し混乱を招きます

実際、コンバーターブロックには次のものも含まれています。

  • フィードフォワード ニューラル ネットワーク (FFN):バッチとシーケンス内のトークン埋め込みに独立して適用される 2 層ニューラル ネットワーク FFN ブロックの目的は、コンテキスト埋め込みが明確かつ分散していることを保証するための追加の学習可能なパラメータを Transformer に導入することです。元の論文ではGeLU 活性化関数が使用されていましたが、FFN のコンポーネントはアーキテクチャによって異なる場合があります。
  • レイヤーの正規化:トランスフォーマーを含むディープ ニューラル ネットワークのトレーニングを安定化するのに役立ちます各シーケンスの活性化関数を正規化しトレーニング中に活性化関数が大きくなりすぎたり小さくなりすぎたりするのを防ぎます。これにより、勾配の消失や爆発などの勾配関連の問題が発生する可能性がありますこの安定性は、非常に深いトランスフォーマーモデルを効率的にトレーニングするために重要です
  • スキップ接続: ResNet アーキテクチャと同様に、残差接続は消失勾配問題を軽減し、トレーニングの安定性を向上させるために使用されます。

トランスフォーマーアーキテクチャは導入以来かなり安定しています、レイヤー正規化ブロックの位置はトランスフォーマーアーキテクチャによって異なる場合があります。現在post-layer normと呼ばれている元のアーキテクチャは次のようになります。

下の図に示すように、最近のアーキテクチャで最も一般的な配置はスキップ接続内の自己注意ブロックと FFN ブロックの前に正規化ブロックを配置するプレレイヤーノルムです

コンバーターにはどのような種類がありますか?

さまざまなコンバーターアーキテクチャが利用可能ですが、そのほとんどは主に 3 つのタイプに分けられます。

エンコーダアーキテクチャ

エンコーダー モデルは、アテンション メカニズムが入力シーケンス全体に注意を向けることができるため、分類や名前付きエンティティの認識などの下流のタスクに使用できるコンテキスト埋め込みを生成することを目的としています。これは、この記事でこれまでに検討したタイプのアーキテクチャです。エンコーダ固有のトランスフォーマーの最も人気のあるファミリは、 BERTとそのバリエーションです

データを 1 つ以上のトランスフォーマー ブロックに渡すと、シーケンス内の各トークンの埋め込みを表す複雑なコンテキスト埋め込み行列が得られます。ただし、分類などの下流のタスクに使用するには、単一の予測を行うだけで済みます。従来、最初のトークンが取得され、分類ヘッドに渡されます。分類ヘッドには通常、ドロップアウト レイヤーと線形レイヤーが含まれます。これらのレイヤーの出力は SoftMax 関数を介してクラス確率に変換できます。以下にその例の 1 つを説明します。

デコーダーアーキテクチャ

デコーダー アーキテクチャはエンコーダー アーキテクチャとほぼ同じですが、主な違いは、デコーダー アーキテクチャではマスクされた (または因果的な) 自己注意レイヤーが採用されているため、注意メカニズムは入力シーケンスの現在の要素と前の要素にのみ注意を向けることができることです。つまり、結果として得られるコンテキスト埋め込みでは、前のコンテキストのみが考慮されることになります。人気のあるデコーダーのみのモデルには、GPT ファミリがあります

これは通常、バイナリ下三角行列でアテンション スコアをマスクしマスクされていない要素を負の無限大に置き換えることによって実現されます。これにより、次の SoftMax 操作を通過するときに、これらの位置のアテンション スコアがゼロになることが保証されます。次のようにして、以前の自己注意マップを更新してこれを含めることができます

マスキング自己注意計算: 位置エンコーディング埋め込みを想定

デコーダーは現在の位置から逆方向にのみ計算に参加できるため、デコーダー アーキテクチャはシーケンス生成などの自己回帰タスクによく使用されます。ただし、コンテキスト埋め込みを使用してシーケンスを生成する場合は、エンコーダーを使用する場合と比較して、いくつかの追加の考慮事項があります。以下に例を示します。

デコーダーは入力シーケンス内の各トークンに対してコンテキスト埋め込みを生成しますが、シーケンスを生成するときは通常、最終トークン対応する埋め込みを後続のレイヤーへの入力として使用することがわかります

さらに、ロジットに SoftMax 関数を適用した後、フィルタリングスキームが適用されていない場合は、モデルの語彙内のすべてのトークンの確率分布が得られます。これは非常に大きくなる可能性があります。多くの場合、さまざまなフィルタリング戦略を使用して潜在的なオプションの数を減らします。最も一般的な方法のいくつかは次のとおりです。

  • 温度調整: 温度はSoftMax 操作内で適用されるパラメーターであり、生成されるテキストのランダム性に影響します。出力単語の確率分布を変更することで、モデル出力の創造的または焦点を絞ったコンテンツを決定します。温度パラメータが高くなるほど、分布は平坦になり、出力は多様になります。
  • Top-P サンプリング: この方法では、指定された確率しきい値に基づいて次のラベル付けの潜在的な候補の数をフィルタリングし、このしきい値を超える候補に基づいて確率分布を再分配します。
  • Top-K サンプリング: このアプローチでは、ロジットスコアまたは確率スコア (実装によって異なります) に基づいて、潜在的な候補の数を K 個の最も可能性の高いマーカーに制限しますこれらの方法の詳細については、のリンクをご覧ください: https://peterchng.com/blog/2023/05/02/token-selection-strategies-top-k-top-p-and-temperature/
    次のトークンの潜在的な候補の確率分布を変換または縮小したら、そこからサンプリングして予測値を得ることができます。これは、多項分布からサンプリングするだけです。予測されたトークン入力シーケンスに追加され、予測された数のトークンが生成されるまで、またはモデルがストップトークン (シーケンスの終了を示す特別なトークン) を生成するまで、モデルにフィードバックされます。

エンコーダ/デコーダアーキテクチャ

当初、Transformer は機械翻訳のアーキテクチャとして提案され、この目的を達成するためにエンコーダーとデコーダーを使用します。エンコーダーは中間表現を作成するために使用されます。エンコーダー/デコーダー トランスフォーマーはあまり一般的ではなくなりましたが、 T5 などのアーキテクチャは、質問応答、要約、分類などのタスクをシーケンス間問題としてフレーム化し、このアプローチを使用して解決する方法を示しています。

エンコーダー/デコーダー アーキテクチャとの主な違いは、デコーダーがエンコーダー/デコーダー アテンションを使用することです。エンコーダー/デコーダー アテンションでは、アテンション計算中にエンコーダーの出力 (K および V) とデコーダー ブロックの入力 (Q) が使用されます。これは、すべての入力に同じ入力埋め込み行列が使用される自己注意とは対照的です。それ以外では、生成プロセスはデコーダーのみのアーキテクチャと非常に似ています。

エンコーダー/デコーダーのアーキテクチャは、下の図のように視覚化できます。ここでは、図を簡略化するために元の論文で示されているTransformerのポストレイヤーノルムバリエーションを描くことにしました。ここでは、ノルムレイヤーがアテンションブロックの後に来ます。

結論は

結論として、この記事がコンバーターの仕組み直感理解しこのアーキテクチャーの詳細を分かりやすく把握するのに役立ち最新のコンバーターアーキテクチャーをわかりやすく理解するための良い出発点となったことを願っています。

最後に、特に記載がない限り、すべての画像は著者によるものです。

参考文献

  • [1706.03762] 必要なのは注目だけ (arxiv.org )
    https://arxiv.org/abs/1706.03762.
  • Google 翻訳の最近の進歩 — Google リサーチ ブログ:
    https://blog.research.google/2020/06/recent-advances-in-google-translate.html.
  • GitHub Copilot がコード理解力をどのように向上させているか — GitHub ブログ:
    https://github.blog/2023-05-17-how-github-copilot-is-getting-better-at-understanding-your-code/.
  • ChatGPT (openai.com) の紹介: https://openai.com/blog/chatgpt.
  • gpt-4.pdf (openai.com )
    https://cdn.openai.com/papers/gpt-4.pdf#:~:text=This%20technical%20report%20presents%20GPT-4%2C%20a%20large%20multimodal,as%20dialogue%20systems%2C%20text%20summarization%2C%20and%20machine%20translation.
  • LLaMA の紹介: 基礎となる 650 億パラメータの言語モデル (meta.com )
    https://ai.meta.com/blog/large-language-model-llama-meta-ai/.
  • イラスト付きトランスフォーマー — Jay Alammar — 機械学習を概念ごとに視覚化します。(jalammar.github.io )
  • バイトペアエンコーディングのトークン化 — Hugging Face NLP コース: https://huggingface.co/learn/nlp-course/chapter6/5?fw=pt.
  • Drenai シリーズ | David Gemmell Wiki | Fandom : https://davidgemmell.fandom.com/wiki/Drenai_series.
  • bert-base-uncased · ハグフェイス:
    https://huggingface.co/bert-base-uncased.
  • トランスフォーマー (huggingface.co )
    https://huggingface.co/docs/transformers/index.
  • [2010.11929v2] 画像は 16x16 ワードの価値がある: 大規模な画像認識のためのトランスフォーマー (arxiv.org)
  • 埋め込みを始める (huggingface.co )
  • Bag-of-Words モデルの簡単な紹介 — MachineLearningMastery.com : https://machinelearningmastery.com/gentle-introduction-bag-words-model/。
  • [2104.09864] RoFormer: 回転位置埋め込み機能を備えた拡張トランスフォーマー (arxiv.org )
  • スケールされたドット積アテンションの説明 | Papers With Code : https://paperswithcode.com/method/scaled.
  • ソフトマックス関数 — Wikipedia : https://en.wikipedia.org/wiki/Softmax_function.
  • [1607.06450] レイヤーの正規化 (arxiv.org) : https://arxiv.org/abs/1607.06450.
  • 消失勾配問題 — Wikipedia : https://en.wikipedia.org/wiki/Vanishing_gradient_problem.
  • [1512.03385] 画像認識のための深層残差学習 (arxiv.org )
    https://arxiv.org/abs/1512.03385.
  • [1810.04805] BERT: 言語理解のためのディープ双方向トランスフォーマーの事前トレーニング (arxiv.org )
  • [2005.14165] 言語モデルは少数ショット学習者である (arxiv.org) :https://arxiv.org/abs/2005.14165.
  • トークン選択戦略:Top-K、Top-P、温度(peterchng.com) :https://peterchng.com/blog/2023/05/02/token-selection-strategies-top-k-top-p-and-temperature/。
  • 多項分布 — Wikipedia : https://en.wikipedia.org/wiki/Multinomial_distribution.
  • [1910.10683] 統合テキストツーテキスト変換による転移学習の限界の探究 (arxiv.org )

翻訳者紹介

Zhu Xianzhong 氏は、51CTO のコミュニティ エディターであり、51CTO の専門ブロガー兼講師であり、濰坊の大学のコンピューター教師であり、フリーランス プログラミング コミュニティのベテランです。

原題: De-coded: Transformers explained in plain English 、著者: Chris HughesChris Hughes


<<: 

>>:  カナダ工学アカデミー会員のソン・リャン氏:将来の人工知能システムはネットワークの形で存在するだろう

ブログ    

推薦する

Sentinel のコールドスタート電流制限アルゴリズム

[[336019]]コールド スタート アルゴリズムは、トークン バケット アルゴリズムに基づいて実...

...

将来、軍隊は完全に人工知能になるのでしょうか?空想するのはやめてください!全体的な傾向と方向性は変えられない

現在の国際情勢から判断すると、将来の軍事兵器の開発は主に宇宙に向けられることになるが、スペースシャト...

何も起こらないときは「自動運転」、何か起こったときは「運転支援」?

近年、スマートカーの事故が多発しており、事故の原因は主にいわゆる「自動運転」機能に関連しており、必然...

ビッグデータ、機械学習、ディープラーニングのためのコマンドラインツールの概要

[51CTO.com クイック翻訳] キーボードを握ってください! マウスや GUI がなくても、O...

2022年、どのような技術トレンドが世界を変え続けるのでしょうか?以下は百度研究所の予測です。

あっという間に2021年が過ぎ去りました。今年、新型コロナウイルス感染症のパンデミックは世界経済と社...

...

大きなモデルには堀がない? OpenAI の「LLM City」に侵入し、防御する方法

著者: ベン・ディクソン翻訳者 | 李睿レビュー | Chonglou制作:51CTO テクノロジー...

...

国連は2030年の持続可能な開発目標の達成を支援するために数十台のロボットを採用する予定

ロイター通信によると、7月5日、国連技術機関はスイスで行われた「人類の利益のためのAI」イベントで、...

...

オッペンハイマーの「彼女は消えた」!物理学界のファーストレディ、呉健雄はマンハッタン計画の重要な問題を解決した

長い待ち時間を経て、ついに『オッペンハイマー』が国内で公開される。ノーラン監督は映画の細部と品質に細...

エッジAIデバイスの選び方

エッジ コンピューティングは、最も話題になっているテクノロジ トレンドの 1 つになりました。こうし...

...