Ubuntuで真っ暗画面のままログインできない

「recommend」と書かれたNVIDIA-driverをinstallしたら画面が真っ暗になった

 


GUIでログイン画面が表示されない
Ctrl+Alt+F1したが仮想コンソールも出ない

このとき参考にしたサイト
https://qiita.com/mdo4nt6n/items/b439b81e7c10b95ee7c5

  1. “Advanced options for ubuntu”で起動
  2. “recovery mode”で起動
  3. rootを選択
  4. コマンドラインで下記を実行
    $ sudo apt-get –purge remove nvidia-*
    $ sudo apt-get –purge remove cuda-*

 

これでGUIは復活しました

で、、、私はいったい何を信じて、どのVer.をインストールすればいいのだ・・?

RuntimeWarning: More than 20 figures have been opened. (matplotlib.pyplot)

jupyterなどでループまわしながら実験結果を描画しているとよくある警告

RuntimeWarning: More than 20 figures have been opened.

内容としては「figを開きすぎててメモリ亡くなるぞ!」というもの。つまり必要ないものは都度閉じてやればよい。

だいたい「plt.close()」で片づけることが多いが、私のお勧めは下記の対策。

plt.savefig(OUT_DIRECTORY + 'figure.png')
plt.close('all')

このほうが確実。

Tutorial Pytorch モデル構築〜学習


1.optimizer構築

optimizer = torch.optim.SGD(list(encoder.parameters())+list(classifier.parameters()), lr=0.01)


2.計算グラフの構築

z = encoder(input_src_img)
digit_pred = classifier(z)


3.loss算出

loss = nn.CrossEntropyLoss()(digit_pred,digit_label)

 


4.誤差逆伝播

loss.backward()

損失に関して計算グラフを微分して各変数のgradに勾配を入れる。この時点ではパラメータは更新されていない。なお、パラメータはprint(x.grad)で確認可能。

注意点は計算グラフは揮発性のため、backword()を実行すると消えてしまう。lossを複数回に分けて計算したいならばbackward(retain_variables=True)とすること。

 


5.パラメータ更新

optimizer.step()

 


補足1.

パラメータ更新後はoptimizer.zero_grad()で勾配初期化しておく。そうしないとloss.backward()で計算された勾配が蓄積してしまう。呼び出すタイミングはloss.backward()の直前でもよい。

 


補足2.マルチタスク

次のようにすると効率的な計算が可能。ただしGANのような順番に学習することに意味があるタスクには不適切なので要注意。
(loss1 + loss2).backward()

Pythonでテキストを1行ずつ読み込む

なんかいっつもググってる気がするのでメモしておく

以上

ValueError: An operation has `None` for gradient. Please make sure that all of your ops have a gradient defined (i.e. are differentiable). Common ops without gradient: K.argmax, K.round, K.eval.

Q.「kerasで次のErrorがでるときの対処」

A.「原因はlossを計算するときに通過していないlayerが存在すること」

特に分岐型のネットワークを組んだときに発生しやすいです。Classificationタスクのニューラスネットワークを組んで、自己教示学習やAutoencoderで中間層を事前に学習するときに、classificationのlossを設定していないとClassification部分で「勾配が計算できません!」と怒られるわけです。

とはいっても、事前学習のときにはClassification部分を学習せさたくないのどうするか?

こんなときはloss-weightをゼロにしたり、常にゼロをreturnするダミーのloss関数を用意しておきましょう。

How to Display image as grayscale using matplotlib ??

UserWarning: Discrepancy between trainable weights and collected trainable weights, did you set `model.trainable` without calling `model.compile` after ? ‘Discrepancy between trainable weights and collected trainable’

 

UserWarning: Discrepancy between trainable weights and collected trainable weights, did you set model.trainable without calling model.compile after ? 'Discrepancy between trainable weights and collected trainable'

 

Solution: You should define layers before define models, and setting ‘trainable’ each time

kerasで複数の出力とLOSS関数を持つモデルを生成

ClassificationだったりReconstructionだたり1つのモデルで2つ以上の出力やLOSS関数を適応したモデルが近年は増えてきました。となると次のような実装が必要になってきます。

・1つのモデルで複数の値を出力したい

・モデルの複数出力に異なるLOSS関数を設けたい

 

Kerasだと簡単に実装できます。

XREAサーバのSSL化

 

条件

  • XREAサーバを利用中
  • VALUE-DOMAINで独自ドメインを登録済
  • WordPressを使用

 

設定その1

  • XREA.COMの旧コンパネのメニューから「ドメインウェブ」を開く
  • Mainに「blank」、SSL用ドメインのSub6に独自ドメインを設定(私の場合は「r2d.info」)
  • 「すべてのドメインでAレコードのチェックを行わない(強制設定)」のチェックを外す
  • 「ドメイン設定」

 

設定その2

  • XREA.COMの新コンパネのメニューから「サイト設定」を開く
  • 独自ドメインの方で「サイト設定の変更」
  • 同期設定⇒「する」
  • SSL⇒「無料SSL」
  • 「サイト設定を変更する」
  • 20分ほど待つ

 

最後に、WordPressプラグインのReally Simple SSLをインストールして有効化すれば完了です