Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

画像関係のKaggleコンテストで、Kerasを使いつつコードを書いていたところ、前処理などで工夫しても厳しそうなレベルでメモリ不足に悩まされました。(しかし、一方で精度を上げるためになるべく多くのデータを使いたい) 他の人はどうやっているんだろう?と他人のカーネルを見ていたところ、KerasのSequentialクラスにfit_generator関数という、バッチ単位でデータを扱ってくれる(=瞬間的なメモリが少なくて済む)関数を使っているようでした。 過去に読んだ書籍だと、この関数は使っていなかったので、触りながら色々調べてみます。 簡単な例で試してみる。 MNISTで試してみます。モデルのコード自体は、以前書いたGoogle colaboratoryを試してみる(Keras & MNIST)のものをほぼそのまま使います。 X.shapeが(60000, 1, 28, 28)、y.sha
1.すぐに利用したい方へ(as soon as) 「Learning TensorFlow」 By Itay Lieder, Yehezkel Resheff, Tom Hope http://shop.oreilly.com/product/0636920063698.do docker dockerを導入し、Windows, Macではdockerを起動しておいてください。 Windowsでは、BiosでIntel Virtualizationをenableにしないとdockerが起動しない場合があります。 また、セキュリティの警告などが出ることがあります。 docker run 以下のshell sessionでは (base) root@f19e2f06eabb:/#は入力促進記号(comman prompt)です。実際には数字の部分が違うかもしれません。この行の#の右側を入力して
1. Layout Optimizer ソースコード:tensorflow/core/grappler/optimizers/layout_optimizer.cc TensorFlowがデフォルトで採用するデータフォーマットはNHWC形式ですが、GPUに最適なデータフォーマットはNCHW形式です。 このため、GPUで実行するノードについてはNCHW形式のデータフォーマットで実行するように計算グラフを変形することで、GPUで最適な演算が行えるようにします。 なお、計算グラフを変形するときに、必要に応じてNCHW→NHWCまたはNHWC→NCHWのデータフォーマット変換を行うためのTransposeノードを挿入し、計算グラフ内でデータフォーマットの一貫性が取れていることを保証します。 2. Model Pruner ソースコード:tensorflow/core/grappler/optimi
環境 windows10 64bit cpu: Ryzen7 1700X gpu: GTX1080Ti CUDA9.0 cuDNN7.3.1 for cuda9.0 python3.6 tensorflow-gpu 1.11.0 keras 2.2.4 やったこと jupyter notebookで実行後にgc.collect() jupyter notebookで実行後にdel model 1つのclassにまとめてjupyter notebookで実行後インスタンスをdelする pyファイルにまとめてjupyter notebookから%runで呼ぶ terminalでpyファイルを実行 pycharmでpyファイルを実行 何故やったか GPU使った画像認識をjupyter notebookでやろうとしたんですが、2回目以降学習が止まってしまって困りました。nvidia-smiでメモリ
自作のPCにUbuntu18.04とTensorFlowをインストールした内容を紹介します。 ■PCの構成とセットアップ 構成は以下の通りです。 MB:Asrock Fatal1ty Z270 Gaming-ITX/ac グラフィック出力:HDMI,DisplayPort(2台の4Kのモニターに対応) Tunderbolt 3 ( (USB Type-C)、Ultra M.2(PCIe Gen3 x 4) CPU:Intel Corei7-7700、メモリ:DDR4 8GBx2 SSD:M.2 2280 512GB HDD:STA3 2TB VGA: GTX1050Ti 4GB(CUDA用GPU) BIOS更新・設定 モニターはMB(マザーボード)のグラフィック出力に接続します。 PC起動後、表示がなければGPUのVGAカードの端子にディスプレイを接続しBios設定画面で、Priority
以下のshell sessionでは (base) root@f19e2f06eabb:/#は入力促進記号(comman prompt)です。実際には数字の部分が違うかもしれません。この行の#の右側を入力してください。 それ以外の行は出力です。出力にエラー、違いがあれば、コメント欄などでご連絡くださると幸いです。 それぞれの章のフォルダに移動します。 dockerの中と、dockerを起動したOSのシェルとが表示が似ている場合には、どちらで捜査しているか間違えることがあります。dockerの入力促進記号(comman prompt)に気をつけてください。 ファイル共有または複写 dockerとdockerを起動したOSでは、ファイル共有をするか、ファイル複写するかして、生成したファイルをブラウザ等表示させてください。参考文献欄にやり方のURLを記載しています。 複写の場合は、dockerを
以下のshell sessionでは (base) root@f19e2f06eabb:/#は入力促進記号(comman prompt)です。実際には数字の部分が違うかもしれません。この行の#の右側を入力してください。 それ以外の行は出力です。出力にエラー、違いがあれば、コメント欄などでご連絡くださると幸いです。 それぞれの章のフォルダに移動します。 dockerの中と、dockerを起動したOSのシェルとが表示が似ている場合には、どちらで捜査しているか間違えることがあります。dockerの入力促進記号(comman prompt)に気をつけてください。 ファイル共有または複写 dockerとdockerを起動したOSでは、ファイル共有をするか、ファイル複写するかして、生成したファイルをブラウザ等表示させてください。参考文献欄にやり方のURLを記載しています。 複写の場合は、dockerを
pandas-profiling はデータの特徴をざっくり眺めるときに使うとても便利なライブラリ1なのだが、プロファイルを実行すると matplotlib の設定を上書きされるという厄介な問題がある。 設定を上書きされる問題 まずは普通に matplotlib を使ってグラフを表示してみる。 import matplotlib import matplotlib.pyplot as plt %matplotlib inline matplotlib.rcParams['font.family'] = 'TakaoPGothic' matplotlib.rcParams['figure.figsize'] = (8, 4) plt.style.use('ggplot')
# インポート from pandas import DataFrame # tsvの読み込み dframe = pd.read_csv('data.tsv', delimiter='\t', header=None) # カラム名変更 dframe.columns = ['hoge', 'fuga'] # カラムを落として別のDataFrame作成 dframe2 = dframe[[0, 1]] # カラム名が文字列で付いてたら、dframe[['hoge', 'fuga']]で。 # 重複行削除 dframe3 = dframe2.drop_duplicates() # 行数調査 len(dframe3) # DataFrameの数値の先頭X文字を切り取って新しいカラムとして使う # sliceカラムを追加し、そこに、hoge(float型)の先頭4文字を挿入 dframe4['sl
KerasでF1スコアをモデルのmetrics(評価関数)に入れて訓練させてたら、えらい低い値が出てきました。「なんかおかしいな」と思ってよく検証してみたら、とんでもない穴があったので書いておきます。 環境:Keras v2.2.4 要点 KerasのmetricsにF1スコアを入れることはできるが、調和平均で出てくる値をバッチ間の算術平均で計算しているので正確な値ではない 正確な値を計算したかったらmetricsではなく、コールバックでエポックの最後に一括で求めるべき F1スコアとは Precision-recallのトレードオフの最適解を求めるための尺度。特に精度が意味をなさなくなる歪んだデータに対して有効。F1スコアについて知っている方は飛ばしていいです。 歪んだデータとは 2クラス分類を考えるとしましょう。設定は猫と犬の分類、メールがスパムかスパムではないか、なんでもいいです。2ク
1.すぐに利用したい方へ(as soon as) 「Advanced Deep Learning with Keras」 By Philippe Remy http://shop.oreilly.com/product/0636920154891.do docker dockerを導入し、Windows, Macではdockerを起動しておいてください。 Windowsでは、BiosでIntel Virtualizationをenableにしないとdockerが起動しない場合があります。 また、セキュリティの警告などが出ることがあります。 docker pull and run 以下のshell sessionでは (base) root@f19e2f06eabb:/#は入力促進記号(comman prompt)です。実際には数字の部分が違うかもしれません。この行の#の右側を入力してくださ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く