ホームページ  >  記事  >  バックエンド開発  >  Python を使用してカスタム ディメンションをマトリックスに追加する

Python を使用してカスタム ディメンションをマトリックスに追加する

王林
王林転載
2023-09-04 19:01:101256ブラウズ

Python を使用してカスタム ディメンションをマトリックスに追加する

行列は線形代数の基本的なデータ構造であり、さまざまな科学および数学の計算で広く使用されています。行列は、行と列に配置された数値の長方形の配列です。通常は 2 次元グリッドとして表されます。ただし、場合によっては、データ変換を実行したり高度な数学的演算を実行したりするために、追加の次元を持つ行列を操作する必要がある場合があります。

Python は多用途のプログラミング言語として、豊富なライブラリ エコシステムと行列演算のための強力なツールを提供します。そのようなライブラリの 1 つが Numerical Python の略である NumPy です。 NumPy は、行列やさまざまな数学関数を含む配列を操作するための効率的で便利なツールを提供します。

先に進む前に、コンピューターに NumPy がインストールされていることを確認してください。まだインストールしていない場合は、次のコマンド -

を実行することで、Python パッケージ インストーラー pip を使用して簡単にインストールできます。 リーリー

NumPy をインストールした後、行列の作成と変更を続けることができます。

次に、numpy.array 関数を使用して行列を作成します。以下に例を示します -

リーリー

配列関数は、ネストされたリストをパラメーターとして受け取ります。各リストは行列内の行を表します。この例では、3x3 行列があります。

カスタム ディメンションの追加

カスタム ディメンションを行列に追加するには、numpy.newaxis プロパティを使用できます。 newaxis 属性を使用すると、既存の行列の次元を 1 次元増やすことができます。どのように機能するかを見てみましょう

リーリー

上記のコードでは、[:,np.newaxis] は 2 番目の位置に新しい軸を挿入することで、行列に新しい次元を追加します。コロン: すべての行を意味し、np.newaxis は新しい軸を挿入する場所を意味します。この操作により、元の 2 次元行列が 3 次元行列に効果的に変換されます。

###例###

元の行列と新しい行列を印刷して、変化を観察しましょう -

リーリー ###出力###

コードを実行すると次の出力が生成されます

リーリー

ご覧のとおり、新しい行列には元の行列と比べて次元が 1 つ増えています。元の行列の各行は、独自の内部配列にカプセル化されます。これにより、行列の次元が効果的に増加します。カスタム ディメンションの追加は、高度な機械学習アルゴリズムやテンソル計算など、高次元の行列を必要とする操作を実行する必要があるシナリオで役立ちます。 NumPy でのブロードキャスト

NumPy で行列にカスタム ディメンションを追加する場合、理解する必要がある重要な概念はブロードキャストです。ブロードキャストは、さまざまな形状の配列を一緒に操作できるようにする NumPy の強力なメカニズムです。行列にカスタム ディメンションを追加する場合、ブロードキャストは計算に含まれる配列の形状を自動的に調整できます。

ブロードキャストを説明するための例を考えてみましょう -

リーリー

上記のコードには、2x3 行列 (matrix1) と 1 次元配列 (matrix2) があります。行列 2 を行列 1 の各行に追加したい場合は、演算子

を使用するだけです。 リーリー

出力は p> となります。 リーリー

この例では、NumPy は行列 1 の形状に一致する 1 次元行列 2 を自動的にブロードキャストし、要素ごとの加算を実行できるようにします。 高次元マトリックスにカスタム ディメンションを追加する

カスタム ディメンションを 2 次元行列に追加するだけでなく、高次元行列にカスタム ディメンションを追加することもできます。プロセスは同じで、新しい軸の希望の位置を指定するだけです。

3 次元行列の例を考えてみましょう

リーリー

上記の 3 次元行列の末尾に新しい次元を追加するとします。 np.newaxis プロパティも同様の方法で使用できます。 リーリー 上記のコードでは、... を使用してすべての既存のディメンションを表し、最後に np.newaxis を挿入します。これにより 4 次元行列が生成されます。

行列の再形成

カスタム ディメンションの追加は、通常、マトリックスの再形成に関連します。 NumPy は、次元の追加や削除など、行列の形状を変更できる再形状関数を提供します。この関数は、行列の構造を操作する必要がある場合に便利です。

以下は、マトリックスの形状を変更してカスタム ディメンションを追加する方法の例です -

リーリー

上記のコードでは、reshape 関数を使用して行列の形状を (2, 3, 1) に変更します。最後に追加されるディメンションは、追加するカスタム ディメンションに対応します。

###結論は###

この記事では、Python と NumPy を使用して行列にカスタム ディメンションを追加することに関連する追加の概念について説明します。さまざまな形状の配列を一緒に操作できるようにするブロードキャストについて説明し、追加の次元を含む行列の計算を実行するときにそれがどのように役立つかを見ていきました。

また、より高次元のマトリックスにカスタム ディメンションを追加する方法と、マトリックスの形状を変更してプロセスにカスタム ディメンションを含める方法についても説明しました。これらの手法により、特定のニーズを満たすために行列を柔軟に操作できます。

これらの概念を理解し、NumPy が提供するツールを利用することで、さまざまな次元の行列を効率的に処理し、複雑な計算を実行できます。

以上がPython を使用してカスタム ディメンションをマトリックスに追加するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。