今回の目的 前回はマルコフ連鎖を用いて、青空文庫で公開されている梶井基次郎の著作データから文章を生成しました。今回から数回に分けてディープラーニングの手法を用いて、文章の生成に挑戦してみましょう。 ここで一つ考えたいのは、文章というものの構造です。例えば、梶井基次郎の『檸檬』には「檸檬などごくありふれている。」という1文があります。これを分かち書きにすると「檸檬 など ごく ありふれ て いる 。」となりますが、これは「檸檬」→「など」→「ごく」→「ありふれ」→「て」→「いる」→「。」と形態素が連続して登場する(時系列)データだと考えられます。こうしたデータを扱うのに適したニューラルネットワークとしてRNNがあります。本連載でも「RNNに触れてみよう:サイン波の推測」などで少し触れました。今回はこのRNNを用いて文章を生成するための準備を、次回は実際に文章を生成する予定です。 ここで問題な
[1] 本サイトでは、「PyTorch 公式チュートリアル(英語版 version 1.8.0)」を日本語に翻訳してお届けします。 [2] 公式チュートリアルは、①解説ページ、②解説ページと同じ内容のGoogle Colaboratoryファイル、の2つから構成されています。 両者は基本的には同じ内容です。本サイトでは 「Google Colaboratoryファイル」で、チュートリアルの日本語訳を用意しております(未完成分は順次公開いたします)。 [3] 本サイトのチュートリアルの閲覧および実行は、Google Colaboratory環境を前提とします。 (本サイトのライセンスはこちらとなります) [4] 本サイトに掲載している、日本語チュートリアルをまとめて配置したGitHubはこちらとなります。 [0] 目次(table of contents) 日本語解説へ [1] テンソル(T
連載目次 昨年10月、同タイトルの記事を公開して好評だった。今回は、2021年に向けた、そのアップデート記事となる。 ディープラーニング(深層学習)を実装する場合、専用のライブラリ/フレームワークを用いるのが一般的だ。ディープラーニングが流行してから直近5年ほどの間に、次々と新しいフレームワークが登場した。現在、主要なものを挙げると、 TensorFlow: 2015年登場、Google製。一番有名で、特に産業界で人気 Keras: 2015年登場、作者がGoogle社員。使いやすくて簡単。TensorFlow 2に同梱され標準API化 PyTorch: 2016年登場、Facebook製。この中では新興だが、特に研究分野で人気急上昇中 Chainer: 2015年登場、日本のPreferred Networks製。2019年12月に開発を終了し、PyTorchへの移行が推奨されている な
そこで、今回は「CNNなんて怖くない! その基本を見てみよう」や「PyTorchで畳み込みオートエンコーダーを作ってみよう」などで取り上げた畳み込みニューラルネットワークを利用して、GANを構築してみることにします。 実際の構成は、次のようになります。以下ではConv2dクラスとConvTranspose2dクラスのみを含めてありますが、BatchNorm2dクラスおよびtorch.nnモジュールが提供する活性化関数クラス(torch.nn.Sigmoidクラス、torch.nn.Tanhクラス)も使用します。訓練データと偽物のデータの識別と偽物データの生成の中心的な処理はこれら2つのクラスが請け負うということです。 識別器(ディスクリミネーター)では、CNNで使用するConv2dクラスにより訓練データおよび生成器(ジェネレーター)から入力されたデータを最終的に0~1の値へと変換していきま
しかし、この畳み込みオートエンコーダーの学習には約50分かかりました。同じ100エポックの全結合型オートエンコーダーでは学習には1時間半がかかり、その復元画像もたいしたものではなかったことを考えると、これは大きな進歩ではあります。が、もう少し高速にはならないものでしょうか。 そこで出てくるのが、CPUのような複雑な処理は苦手かもしれませんが、単純な数値計算を高速に行ってくれるGPUです。ニューラルネットワークでは、単純な計算が大量に実行されることから、GPUを使うことで、処理の高速化が見込めます。 そこで今回は、PyTorchでGoogle Colab環境上のGPUを使い、畳み込みオートエンコーダーの学習を高速化してみたいと思います。その過程で、Google ColabでGPUを使うための設定、PyTorchでGPUを使うためのホントにホントの基礎部分について学んでいきましょう。なお、今回
PyTorch/TensorFlow/Keras/scikit-learnライブラリ内蔵のデータセット一覧:AI・機械学習のデータセット辞典 機械学習やディープラーニング用の主要ライブラリが提供する「画像/音声/テキストなどのデータセット」の名前とリンクを表にまとめ、典型的な使い方を簡単に紹介する。 連載目次 本連載「AI・機械学習のデータセット辞典」では、ここまで主に、scikit-learnやKeras/TensorFlow(tf.keras)、TensorFlow Datasets、PyTorchといった主要なPythonライブラリに共通的に含まれる代表的なデータセットを紹介し、各ライブラリでの典型的な実装コード例を示してきた。しかし、これらの全ライブラリに共通的に含まれているデータセットはまれで非常に少ない。よってこれからは、個々のライブラリに1つしか含まれていないようなこまごまと
連載目次 前回までは、ニューラルネットワークの基本となる要素(全結合型のニューラルネットワーク、CNN、RNN)について見てきました。基礎知識編は取りあえず前回までとします。今回からは、もう少し高度な話題にチャレンジしていこうと思います。 本題に入る前に、応用実践編のスタートとして、本連載の成り立ちや趣旨、目的について、あらためて簡単に紹介しておきます。筆者自身、@IT/Deep Insiderフォーラムが始まってから、ディープラーニングを本格的に学び始めた者の一人です。そんな筆者が、まるで「工作室や実験室、ガレージ」で何か面白いものを作りながら、ディープラーニングについての理解を深めていき、その体験や知見を読者と共有していこう、というのが本連載の趣旨/目的です。連載名「作って試そう! ディープラーニング工作室」にはそういった意味があります。読みやすさを考え、一部、解説記事として同じような
I spent a long time making GANs in TensorFlow/Keras. Too long, honestly, because change is hard. It took some convincing, but I eventually bit the bullet and swapped over to PyTorch. Unfortunately, most of the PyTorch GAN tutorials I’ve come across were overly-complex, focused more on GAN theory than application, or oddly unpythonic. To…
Ubuntu 20.04LTS + GPU に cuda, Anaconda, Tensorflow, Pytorch を入れるUbuntuGPUTensorFlowPyTorch 書くこと無いくらいに簡単に入りましたが、一応メモっときます。 手順 Ubuntu 20.04LTS デスクトップをインストールする。 https://jp.ubuntu.com/download インストール後の処理をして、ソフトウェアのアップデートが終わるのを待つ。 Ubuntu デスクトップにログインして、左下のメニューを開くと、中に「ソフトウェアアップデート」というメニューがあるのでそれを開く。 開いたウィンドウの中に「追加のドライバ」というタブがある。GPU が認識されていれば「nvidiaのドライバを使う」という項目がいくつかあって、バージョンが選べる。適切なバージョン (GTX/RTX 系なら 44
「ゼロから作るDeep Learningシリーズ」が最高 ゼロから作るDeep Learningは、TensorFlow、Keras、PyTorchといったディープラーニングのフレームワークを一切使わず、基本PythonとNumpyのみでディープラーニングのアルゴリズムを作って理解していくというハードコアな内容です。 シリーズは3冊出ていて、1が画像認識、2が自然言語、3がフレームワークに重点を置いた内容です。 ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装 作者:斎藤 康毅発売日: 2016/09/24メディア: 単行本(ソフトカバー) ゼロから作るDeep Learning ❸ ―フレームワーク編 作者:斎藤 康毅発売日: 2020/04/20メディア: 単行本(ソフトカバー) ゼロから作るDeep Learning ❷ ―自然言語処理編 作
印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます 「PyTorch」はオープンソースの機械学習ライブラリーだ。PyTorchという名前は、その主要なプログラミング言語である「Python」と、PyTorchのベースとなっている「Torch」ライブラリーに由来する。PyTorchは、使いやすさや柔軟性、デバッグの容易さ、高速性、コミュニティーサポートなどの特徴を備えており、2016年のリリース以来、開発者の間で人気が高まっている。 Facebookによって開発されたPyTorchは、「Tensor」上で動作するという点で、Googleの「TensorFlow」に似ている。しかし、TensorFlowが静的計算グラフを使用するのに対し、PyTorchは動的計算グラフを利用する。 PyTor
以前、Keras+Tensorflowで学習したモデルをOpenCVで推論に使用する方法について解説したことがありました。 run Keras model on opencv from Takuya Minagawa www.slideshare.net OpenCVにはDNNモジュールという畳み込みニューラルネットワークを使用するための機能があります。ただこれは主に推論用で、学習のためには別のディープラーニングフレームワークで作成したモデルを別途読み込む必要があります。 OpenCVはTensorflowやCaffe等いくつかのフレームワークをサポートしているのですが、前回は初学者にも使いやすいだろうという理由でKears+Tensorflowのモデルを選択しました。なお、OpenCVはTorchはサポートしてますがPyTorchはサポートしてませんでした。 しかしながら、OpenCVは
【PyTorch】BERTの使い方 - 日本語pre-trained modelsをfine tuningして分類問題を解くPython自然言語処理機械学習PyTorchbert はじめに 自然言語処理の様々なタスクでSOTAを更新しているBERTですが、Google本家がGithubで公開しているものはTensorflowをベースに実装されています。 PyTorch使いの人はPyTorch版を使いたいところですが、PyTorch版は作っていないのでHuggingFaceが作ったやつを使ってね、ただし我々は開発に関与していないので詳しいことは彼らに訊いてね!とQAに書かれています。 HuggingFace製のBERTですが、2019年12月までは日本語のpre-trained modelsがありませんでした。 そのため、英語では気軽に試せたのですが、日本語ではpre-trained mod
前々回はPyTorchの核となる部分を、前回はPyTorchの基礎部分といえる「テンソルとデータ型」の説明を行った。今回は、4層のディープニューラルネットワークを題材に、PyTorchによる基本的な実装方法と一連の流れを解説する。 全3回の大まかな流れは以下の通りである。 (1)ニューロンのモデル定義 (2)フォワードプロパゲーション(順伝播) (3)バックプロパゲーション(逆伝播)と自動微分(Autograd) (4)PyTorchの基礎: テンソルとデータ型 (5)データセットとデータローダー(DataLoader) (6)ディープニューラルネットのモデル定義 (7)学習/最適化(オプティマイザ) (8)評価/精度検証 このうち、(1)~(3)は前々回、(4)は前回で説明済みである。今回は(5)~(8)を説明する。それでは、前々回の核となる部分を簡単に振り返ったうえで、さっそく今回の説
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く