これは、本「Deep Learning Framework Pytorch:Getting and Practation(2nd Edition)」の対応するコードですが、独立したPytorch初心者ガイドおよびチュートリアルとしても使用できます。
新しいアップグレード
この本の第2版は、第1版に基づいて新たにアップグレードされており、本のコードはPytorchバージョン1.8の第1版に基づいて書かれています。基本的な使用、高度な拡張、実用的なアプリケーションの3つのモジュールを含む、初版の読者の意見と組み合わせて包括的に更新されています。
コンテンツ
この本(チュートリアル/リポジトリ)の内容は、図に示されています。 
このチュートリアルは3つの部分に分けることができます。
基本的な使用(第2章から5章)では、Pytorchの内容について説明します。このパートでは、Pytorchのメインモジュールと、ディープラーニングで一般的に使用されるツールをいくつか紹介します。コンテンツのこの部分では、ここではJupyter Notebookを教育ツールとして使用し、読者はノートブックを変更して実行して繰り返し実験できます。
- 第2章では、Pytorchのインストールと関連する学習環境の構成を紹介します。同時に、この章では、読者がPytorchの予備的な理解を得るのを助けるために、Pytorchの主な内容を概要を紹介します。
- 第3章では、Pytorchでの多次元アレイテンソルと自動微分システムオートグラードの使用を紹介し、テンソルとオートグラードを使用して線形回帰を実現し、それらの違いを比較する方法の例を示します。この章では、テンソルの基本構造とオートグラードの原理を分析して、読者がPytorchの基礎となるモジュールをより包括的に理解できるようにします。
- 第4章では、PytorchのニューラルネットワークモジュールNNの基本的な使用法を紹介し、ニューラルネットワークのレイヤー、アクティベーション関数、損失関数、およびオプティマイザーを説明し、読者が50行未満のコードを使用して古典的なネットワーク構造Resnetを実装するように導きます。
- 第5章では、Pytorchのデータ読み込み、トレーニング前モデル、視覚化ツール、GPU加速などのツールを紹介します。これらのツールを合理的に使用すると、ユーザープログラミングの効率が向上します。
高度な拡張機能(第6〜8章)では、Pytorchのいくつかの高度な拡張機能について説明しています。この部分を学ぶことで、読者がより効率的なプログラムを書くのに役立ちます。
- 第6章では、主に放送ルール、基本インデックス、高度なインデックス、アインシュタイン操作を含む、Pytorchのベクトル化のアイデアを紹介します。この章の最後に、リーダーがベクトル化のアイデアを使用して、畳み込み操作、インターリーブ、ROIの調整、およびディープラーニングにおける一意の操作を逆にすることを主導します。
- 第7章では、Pytorchで分散操作を紹介します。分散コンピューティングと並列コンピューティングは、ネットワークのトレーニングプロセスを加速できます。この章では、並列コンピューティングと分散コンピューティングの基本原則を詳細に紹介し、Pytorchの分散トレーニングのためにTorch.DistributedおよびHorovodの使用方法についても紹介します。
- 第8章では、PytorchでCUDA拡張機能を紹介します。これは、読者がCUDAを使用してシグモイド機能を実装することを導きます。同時に、この章では、CUDA、Nvidia-Driver、Cudnn、Pythonの関係を要約しています。
実用的なアプリケーション(第9-13章)を使用して、Pytorchを使用して、いくつかのクールで興味深いアプリケーションを実装します。コンテンツのこの部分では、このリポジトリは完全な実装コードを提供し、読者がテストするデモとして事前に訓練されたモデルを提供します。
- 第9章は、過去と未来をつなぐ章です。目標は、読者に新しい機能と新しい知識を教えることではなく、それをKaggleでの古典的な競争と組み合わせて、深い学習における最も単純な画像バイナリ分類問題を実現することです。実装プロセス中、読者は最初の5つの章の知識をレビューし、読者がプログラムを整理し、プログラムを読みやすく維持しやすくするために合理的にコーディングするのを支援します。同時に、この章では、Pytorchでデバッグする方法を紹介します。
- 第10章では、敵対的なネットワークを生成する基本原則を紹介し、読者がアニメアバタージェネレーターをゼロから実装するように導き、生成敵のネットワークを使用して、さまざまなスタイルのアニメアバターを生成できます。
- 第11章では、自然言語処理に関するいくつかの基本的な知識を紹介し、CharrnnとTransformerの基本原則を詳細に紹介します。この章では、読者がトランスを使用して詩を自動的に書くように導きます。このプログラムは、古代の人々に詩を続編し、隠された詩を生み出すことができます。
- 第12章では、スタイル転送の基本原則を紹介し、読者が任意のスタイル転送をサポートするニューラルネットワークを実装するように導きます。このネットワークを通じて、読者はどんな絵も有名な絵画のスタイルに変換できます。
- 第13章では、オブジェクト検出の基本原則を紹介し、読者が単一段階、アンカー、最大値の抑制ターゲット検出アルゴリズムセンターセットを実装するように導きます。 Centernetのデザインのアイデアは、オブジェクトの検出、人間の姿勢推定、3次元画像のターゲット追跡などの古典的なコンピュータービジョンの問題に移行できます。
テキストの説明コンテンツとノートブックのマークダウンコンテンツは、この本の最初のドラフトに属します。説明にはご不便をおかけする可能性があります。著者は後で徐々に修正することを理解してください。コンテンツのこの部分は、本との80%の一貫性を保証しますが、いくつかの文法的な問題があるかもしれません。時間の制約により、著者は将来徐々に更新されます。
本を買う必要がありますか?
本は必要ありません。この倉庫には、本のテキストコンテンツの60%以上とコードの90%以上、特に以前のいくつかの章の紹介コンテンツが含まれており、本の説明コンテンツをほぼ完全に保持しています。読者は、本を購入しなくても、通常、このチュートリアルを使用できます。
ペーパーバージョンの読書体験を好むと思われ、簡単に読むために美しく印刷された完全に印刷された本を残したい場合は、過去1年間に著者の作品をサポートするために少しお金を費やすこともできます〜
コードの説明
このコードは、主にPython3+Pytorch1.6〜1.8でテストされており、最終結果を取得します。 Python2はまだテストされておらず、Pytorchの更新バージョンはまだテストされていません。
不適切さや改善が必要な領域がある場合は、問題の議論を開くか、プルリクエストを送信してください。
環境構成
Pytorchをインストールするには、公式Webサイトから指定されたバージョンを選択してインストールし、ワンクリックでインストールしてください。その他のインストール方法については、本の指示を参照してください。
リポジトリのクローニング
git clone https : // github . com / chenyuntc / PyTorch - book . git
^_^
バグ、不明確な説明、混乱がある場合は、問題を開いてください
プルリクエストへようこそ
ハッピーコーディング!
