環境構築

C++版PyTorch「LibTorch」の環境構築【Visual Studio】

Deep Learningを実際に使う場合はやはりライブラリに頼ることになると思うのでこちらの学習もしていこうと思います。特に最近は「PyTorch」と呼ばれるライブラリがメジャーだと思います。PyTorchはこちらのサイトからダウンロード...
環境構築

Visual Studio 2022のインストール【Windows11】

約1年ぶりの投稿になります。今更ですがVisual Studio 2022のインストールについて解説します。今使用しているのはVisual Studio 2017なのでこの機会にインストールしました。1. ダウンロードまずは下記のサイトから...
プログラミング

【C++】Mnistデータセットを読み込みEigenで扱う

Mnistは手書き数字画像とラベルデータをまとめたデータセットで機械学習の性能評価などによく利用さます。Deep Learningの入門書ではPythonで扱われることが多いのですが、今回はC++で読み込みEigenで扱う形式に変換してみた...
プログラミング

【C++】ソフトマックス関数を実装してみる

今回はニューラルネットワークの出力層でよく使われる「ソフトマックス関数」を実装してみる。1. ソフトマックス関数ソフトマックス関数は以下の式で表される。\この式は出力n個に対してk番目の出力\(y_k\)を求めています。ソフトマックス関数は...
プログラミング

【C++】シグモイド関数を実装してみる

「ゼロから作るDeep Learning」という本を買ったのでこの本を参考に勉強していこうと思います。Pythonのソースコードもついているので参考にします。1. 活性化関数ニューラルネットワークは層を重ねることで非線形の問題も解くことがで...
プログラミング

【C++】Gnuplotを使ったグラフ描画機能をクラス化する

今後のためにグラフ描画用の関数をクラス化して他のプログラムに流用できるようにしておきたい。1. ヘッダーファイルヘッダーファイルはこちら。「classGnuplot」クラスとしてグラフ描画機能をまとめる。主な機能としては以下の通り。Gnup...
プログラミング

【C++】Gnuplotと連携してグラフを描画したい

Pythonであればmatplotlibなどグラフを描画してくれる便利なライブラリがあります。一方、C++でグラフを描画しようと思うとCSVなどにデータを出力してExcelなどで確認することになります。そこでGnuplot使ってC++でグラ...
環境構築

【C++】行列計算ライブラリ「Eigen」のインストール【Visual Studio】

普段はC++を使っているのでDeep LearningもC++で実装したいと思っています。しかしPythonで書かれている書籍やWebサイトはたくさんありますがC++で実装しているサイトはあまりないんですよね。Deep Learningは複...