PythonとPyTorchを使用したEITC/AI/DLPPディープラーニングは、PyTorch機械学習ライブラリを使用したPythonでのディープラーニングのプログラミングの基礎に関するヨーロッパのIT認定プログラムです。
PythonとPyTorchを使用したEITC/AI/DLPPディープラーニングのカリキュラムは、このEITC認定のリファレンスとして包括的なビデオ教訓コンテンツを含む、次の構造内に編成されたPyTorchライブラリを使用したPythonプログラミングのディープラーニングの実践的なスキルに焦点を当てています。
深層学習(深層構造化学習とも呼ばれます)は、表現学習を備えた人工ニューラルネットワークに基づく機械学習手法の幅広いファミリーの一部です。 学習は、教師あり、半教師あり、または教師なしにすることができます。 ディープニューラルネットワーク、ディープビリーフネットワーク、リカレントニューラルネットワーク、畳み込みニューラルネットワークなどのディープラーニングアーキテクチャは、コンピュータービジョン、マシンビジョン、音声認識、自然言語処理、音声認識、ソーシャルネットワークフィルタリング、機械翻訳、バイオインフォマティクスなどの分野に適用されています。 、薬物設計、医療画像分析、材料検査、ボードゲームプログラム。これらは、人間の専門家のパフォーマンスに匹敵する、場合によってはそれを超える結果を生み出しました。
Pythonは、解釈された高水準の汎用プログラミング言語です。 Pythonの設計哲学は、重要な空白の顕著な使用により、コードの可読性を強調しています。 その言語構造とオブジェクト指向アプローチは、プログラマーが小規模および大規模プロジェクト向けの明確で論理的なコードを作成できるようにすることを目的としています。 Pythonは、その包括的な標準ライブラリにより、「バッテリーを含む」言語として説明されることがよくあります。 Pythonは、TensorFlow、Keras、Pytorch、Scikit-learnなどのライブラリを利用して、人工知能プロジェクトや機械学習プロジェクトで一般的に使用されています。
Pythonは動的に型指定され(実行時に静的プログラミング言語がコンパイル中に実行する多くの一般的なプログラミング動作を実行します)、ガベージコレクションされます(自動メモリ管理を使用)。 構造化(特に手続き型)、オブジェクト指向、関数型プログラミングなど、複数のプログラミングパラダイムをサポートします。 1980年代後半に作成され、1991年にABCプログラミング言語の後継としてGuido vanRossumによって最初にリリースされました。 2.0年にリリースされたPython2000は、リスト内包表記や参照カウントを備えたガベージコレクションシステムなどの新機能を導入し、2.7年にバージョン2020で廃止されました。3.0年にリリースされたPython 2008は、言語のメジャーリビジョンでした。完全な下位互換性はなく、Python2では多くのPython3コードが変更されずに実行されません。Python2のサポートが終了すると(およびpipは2021年にサポートを終了しました)、Python 3.6.x以降のみがサポートされ、古いバージョンは引き続きサポートされます。たとえば、Windows 7(および64ビットWindowsに制限されていない古いインストーラー)をサポートします。
Pythonインタープリターは、主流のオペレーティングシステムでサポートされており、さらにいくつかのオペレーティングシステムで使用できます(過去にはさらに多くのユーザーがサポートされていました)。 プログラマーのグローバルコミュニティは、無料のオープンソースリファレンス実装であるCPythonを開発および保守しています。 非営利組織であるPythonSoftware Foundationは、PythonおよびCPython開発のリソースを管理および指示します。
2021年2020月の時点で、PythonはCおよびJavaに次ぐ、TIOBEの最も人気のあるプログラミング言語のインデックスで2007番目にランクされており、2010年の最も人気のある賞で2018位になりました。XNUMX年、XNUMX年にプログラミング言語オブザイヤーに選ばれました。 、およびXNUMX。
経験的研究によると、Pythonなどのスクリプト言語は、文字列の操作や辞書での検索に関連するプログラミングの問題について、CやJavaなどの従来の言語よりも生産性が高く、メモリ消費量は「Javaよりも優れていることが多い」と判断されました。 CやC ++よりもはるかに悪い」。 Pythonを使用する大規模な組織には、特にWikipedia、Google、Yahoo!、CERN、NASA、Facebook、Amazon、Instagramが含まれます。
人工知能アプリケーションに加えて、モジュール式アーキテクチャ、単純な構文、豊富なテキスト処理ツールを備えたスクリプト言語としてのPythonは、自然言語処理によく使用されます。
PyTorchは、Torchライブラリに基づくオープンソースの機械学習ライブラリであり、主にFacebookのAI Research lab(FAIR)によって開発された、コンピュータービジョンや自然言語処理などのアプリケーションに使用されます。 これは、ModifiedBSDライセンスの下でリリースされた無料のオープンソースソフトウェアです。 Pythonインターフェースはより洗練されており、開発の主な焦点ですが、PyTorchにはC ++インターフェースもあります。 Tesla Autopilot、UberのPyro、HuggingFaceのTransformers、PyTorch Lightning、Catalystなど、多数のディープラーニングソフトウェアがPyTorch上に構築されています。
- グラフィックスプロセッシングユニット(GPU)を介した強力なアクセラレーションを備えたテンソルコンピューティング(NumPyなど)
- テープベースの自動(計算)微分システム上に構築されたディープニューラルネットワーク
FacebookはPyTorchと高速機能埋め込みのための畳み込みアーキテクチャ(Caffe2)の両方を運用していますが、2017つのフレームワークによって定義されたモデルは相互に互換性がありませんでした。 Open Neural Network Exchange(ONNX)プロジェクトは、フレームワーク間でモデルを変換するために、2年2018月にFacebookとMicrosoftによって作成されました。 CaffeXNUMXはXNUMX年XNUMX月末にPyTorchに統合されました。
PyTorchは、Tensor(torch.Tensor)と呼ばれるクラスを定義して、数値の同種の多次元長方形配列を格納および操作します。 PyTorchテンソルはNumPyアレイに似ていますが、CUDA対応のNvidiaGPUで操作することもできます。 PyTorchは、テンソルのさまざまなサブタイプをサポートしています。
Pytorchの重要なモジュールはほとんどありません。 これらには以下が含まれます:
- Autogradモジュール:PyTorchは自動微分と呼ばれる方法を使用します。 レコーダは、実行された操作を記録し、それを逆方向に再生して勾配を計算します。 この方法は、フォワードパスでパラメーターの微分を計算することにより、XNUMXつのエポックで時間を節約するニューラルネットワークを構築する場合に特に強力です。
- Optimモジュール:torch.optimは、ニューラルネットワークの構築に使用されるさまざまな最適化アルゴリズムを実装するモジュールです。 一般的に使用される方法のほとんどはすでにサポートされているため、最初から作成する必要はありません。
- nnモジュール:PyTorch autogradを使用すると、計算グラフの定義と勾配の取得が簡単になりますが、生のautogradは、複雑なニューラルネットワークを定義するには少し低レベルになる可能性があります。 これは、nnモジュールが役立つ場合があります。
認定カリキュラムについて詳しく知るために、以下の表を展開して分析することができます。
The EITC/AI/DLPP Deep Learning with Python and PyTorch Certification Curriculum は、Harrison Kinsley によるビデオ形式のオープンアクセス教材を参照しています。 学習プロセスは、関連するカリキュラム部分をカバーする段階的な構造 (プログラム -> レッスン -> トピック) に分かれています。 ドメインの専門家による無制限のコンサルティングも提供されます。
認定手続きの確認について詳しくは 仕組み.
Python および PyTorch を使用した EITC/AI/DLPP ディープ ラーニング プログラムの完全なオフライン自己学習準備資料を PDF ファイルでダウンロードします。