sagantaf

IT関連の技術記事を書くブログ。

強化学習のコーディングをする上で便利なdefaultdictの使い方

強化学習の勉強を進める上で、defaultdictをよく使うので、簡単に使い方を残しておきます。 まずはimportします。 In [1]: from collections import defaultdict さて、例えば強化学習させる環境の行動(action)が、UP、DOWN、LEFT、RIGHTを取れるとします。 …

Rancher構築(オンプレ/Ubuntu)

はじめに 前回構築したKubernetesクラスタをRancherにて管理するため、環境を構築していきます。 前回の記事は下記です。 sagantaf.hatenablog.com 環境は、オンプレ、Ubuntuの前提です。 1. Rancherコンテナの構築 2.既存Kubernetesクラスタの追加 3. アプ…

Kubernetesクラスタ構築(オンプレ/Ubuntu)

はじめに 以前、KubernetesをDocker for Macを使って構築してみました。(下の記事) sagantaf.hatenablog.com 今回は、Ubuntu環境にKubernetesクラスタを構築したいと思います。 Ubuntu16.04, 18.04どちらも構築できることを確認済みです。 なお、クラウドの…

コンテナセキュリティのリスクと対策

はじめに コンテナ技術のセキュリティリスクとは コンテナのライフサイクルから見えるリスクと対策 コンテナ周りのコンポーネントから見えるリスクと対策 まとめ 参考資料 はじめに 最近のDockerやKubernetesの発展により、コンテナを利用したサービスやシス…

Kubernetes入門〜Docker for Mac でKubernetesをインストールしJupyter notebookを起動してみる

はじめに Macを使って手軽にKubernetesを体験してみるための手順です。 はじめに 環境 Docker for Mac のインストール Kubernetes環境を構築する contextの切り替え Jupyter notebookを起動するためのマニフェストファイルを作成する デプロイの実施 アクセ…

シェルスクリプトとプログラミング言語の関係は?

答え 解説 スクリプト言語 コンパイル言語 それぞれのメリデメ まとめ 意外と分からなくなる人が多いはず…と思ってまとめました。 答え シェルスクリプトはプログラミング言語のひとつ。 解説 そもそもプログラミング言語には、スクリプト言語とコンパイル言…

RNNとLSTMを理解する

この記事の目的 0. 通常のNeural NetworkやConvolutional Neural Networkの問題 1. RNN (Recurrent Neural Network) 2. 勾配消失(爆発)問題 3. LSTM (Long-short term model) 入力ゲートと出力ゲートはなんのために用意されたか? 忘却ゲートはなんのために…

CNN(Convolutional Neural Network)を理解する

この記事の目的 0. 通常のニューラルネットワークの問題 1. CNNの基本 2. 畳み込み層(Convolutional層) フィルタのサイズをどうするか どうフィルタを適用していくか(ストライド) 出力サイズをどうするか(パディング) データ形状の変化 畳み込みまとめ…

TensorflowをGPUで使おうとして「CUBLAS_STATUS_NOT_INITIALIZED」というエラーが出たら

環境: Docker上でubuntu16.04のコンテナを起動 GPU:TITAN V nvidia-driver: 390 cuda: 9.1 エラー内容 tensorflow-gpuをインストールした時に、下記のエラーが発生することがあります。 E tensorflow/stream_executor/cuda/cuda_blas.cc:366] failed to crea…

pandas〜欠損値扱いの数値をNaNに変換する

-1や999など欠損値として格納されているデータをpandasのreplaceを使ってNaNに変換する方法を書く。 サンプルデータフレームの作成 まずはサンプルのために簡単なデータフレームを作成する。 欠損値は、-1, 999, 1000とする。 import pandas as pd df = pd.D…