みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Python, Javascript, Processing, Unityなど.

機械学習

機械学習に必要なデータ数の検討

前回の記事でRNNのモデルを用いて加算と減算を学習しましたが,最低限必要なデータ数はどれぐらいなのか検討してみました. 教師データは24896個ありましたので,全部使用(1),1/2を使用(2),1/5を使用(5),1/10を使用(10),1/20を使用(20),1/50を使用(50)…

RNNで加算と減算を機械学習する

前回の記事では,データは固定長という制限がありました.可変長データを扱えるように,Embedding Layerを用いたRecurrent neural network (RNN)で学習してみます. 可変長データの扱い RNNなので,可変長の入力を扱えますが,学習するためには1個のTensorに…

加算と減算をEmbeddingで機械学習する

word2vecが流行っており,可視化されたデータも公開されています. http://projector.tensorflow.org/ 例えば"town"の近傍を検索すると,以下のような結果となりました. word distance village 0.355 city 0.366 towns 0.411 province 0.486 county 0.488 n…

train_test_split()はデフォルトでシャッフルされる

教師データを,訓練データと検証データに分ける関数sklearn.model_selection.train_test_split()が便利そうだったので使ってみました. sklearn.model_selection.train_test_split — scikit-learn 1.1.1 documentation この関数の引数にshuffleがありますが…

TensorFlowをCPUとGPUで比較する

TensorFlowを安価でなるべく速く実行するにはどのような環境がよいのかを自分なりに検討してみました. 測定方法 以下のスクリプトを実行して,速度を比較します.環境変数CUDA_VISIBLE_DEVICESでGPUの利用するかを指定します.環境変数TF_ENABLE_ONEDNN_OPT…

chainerでAuto Encoderの作成と学習

chainerでAuto Encoder(自己符号化器)を作成し,MNISTの手書き文字を学習させてみた. Auto Encoderは,目標出力を伴わない,入力だけの訓練データを使った教師なし学習により,データをよく表す特徴を獲得し,ひいてはデータのよい表現方法を得ることを目標…

chainerで回帰順伝播型ニューラルネットワーク

最近ホットな話題であるdeep learningをやってみようと思って,まずはchainerで回帰の順伝播型ニューラルネットワークを作成し,sin関数を学習させてみた. ニューラルネットワーク入門 ニューラルネットワークを使った機械学習は昔からあるものなのだが,最…