sagantaf

なんでも自分の思ったこと、経験したことを書いて生きます。

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

答え 解説 スクリプト言語 コンパイル言語 それぞれのメリデメ まとめ 答え シェルスクリプトはプログラミング言語のひとつ。 解説 そもそもプログラミング言語には、スクリプト言語とコンパイル言語の2種類存在する。 人間がコーディングしたプログラムは…

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 create cublas handle: …

目標を持って仕事をすることで成長できる

アクションバイアスという本を読んで、目標を持って仕事を進めていくための方法を自分なりに理解して解釈したので、その内容を残す。 アクション・バイアス: 自分を変え、組織を動かすためになすべきこと作者: ハイケブルック,スマントラゴシャール,Heike Br…

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

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

pandas〜データフレームをpickleファイルとして保存し効率的に開発する

pandasでデータを読み込んで色々手を加えたデータフレームをpickleファイルとして保存(ダンプ)する方法を書く。 毎回 jupyter-notebookを開いたときに最初から実行せずに、保存しておいた編集済みのpickleファイルを読み込むことで、かなりの時短になる。 …

Rancher入門〜インストールと基本的な使い方

コンテナ管理のためのGUIであるRancher バージョン2 の導入方法と使い方をまとめておく。 目次 はじめに Rancher Management Server を起動 ホストマシンをRancherの管理対象として追加 追加したいホストのDocker設定を追加する RancherGUIへのアクセス制限…

Docker入門〜dockerとdocker composeをubuntuにインストールするためのシェル

タイトルの通りdockerとdocker-composeをubuntu16.04環境に一気にインストールしてしまうためのシェルを作成しました。 #!/bin/sh # まずは必要なパッケージをインストール sudo apt update sudo apt install -y \ apt-transport-https \ ca-certificates \ …

Docker入門〜基本的な使い方のまとめ

目次 はじめに Dockerイメージの操作 Dockerコンテナの生成、起動、停止 稼働しているDockerコンテナの操作 Dockerfileについて ライフサイクル はじめに Dockerの入門レベルで必要な基本的な使い方をまとめています。 また、Dockerfileの書き方やライフサイ…

sklearn〜LabelEncoderラベルエンコーダーを使って経過日数を算出する

はじめに ここでは例えとして年始1/1から何日が経ったか算出する sklearnのライブラリの一つであるLabelEncoderのfitとtransformを使う 方法 まずはライブラリのインポートと、ラベルエンコーダーのオブジェクトの生成 import pandas as pd import numpy as …

Astropy〜チュートリアルを通して使い方を学ぶ(1)

はじめに Astoropyのチュートリアルを参考にして、使い方を学んでいく。 まずは一つ目のチュートリアル「Getting Started with astropy.coordinates」を参考に、astropy.coordinatesを使って画像を表示させてみる。 このチュートリアルでは、「ヒクソン・コ…

Docker実践〜dockerコンテナに外部からアクセスするためにポートフォワード設定を追加する

コンテナを構築した後、アプリケーションを追加したりして、 「新たなポートを使って外部からコンテナにアクセスしたい!」 「でもコンテナを作り直したくない!」 となった時、コンテナを止めずにポートフォワード設定を追加する方法を記す。 また、誤って…

DockerのTips(O'REILLYのDockerを読んで)

O'REILLYのDockerを読んで役立ちそうに感じた部分に自分の考えをプラスしてメモ 第1章 ・コンテナとVMの違い OSをホストと共有しているかどうか。 VMはホストOSとゲストOSが別れているので、Windowsサーバ上でLinuxを動かすことができる。 コンテナは同じOS…

Astropy〜Linux環境にインストールする方法

Astropy をインストールする方法を書いておく。 Anacondaを使っている場合はデフォルトでインストールされている。 以下のコマンドでバージョンを確認するだけで済む。 $ conda list |grep astropy astropy 3.0.2 py36h3010b51_1 pytest-astropy 0.3.0 py36_…

GIt入門 いまさらだけど基本的なことをまとめてみた!

Gitとは Gitとはファイルのバージョン管理システムのこと バージョン管理とは、ファイルの過去の状態も保存しておき、どのように変更されてきたか管理することを表している。 普段、WindowsやMacでエクセルファイルやテキストファイルを作って書いて保存して…

VirtualBoxでWindows10にUbuntu16.04の仮想環境を構築する

Windows10のPCにUbuntu16.04の仮想環境を構築します。 VirtualBoxを利用します。 まずは以下のページからVirtualBoxをダウンロード →「Windows host」をクリックするとダウンロードが始まる Downloads – Oracle VM VirtualBox 以下のページからUbuntu16.04を…

昼飯後の眠気をどう解消するか? 原因と対処法をまとめてみた

昼飯を食べた後に、自分のデスクに戻ってしばらくすると、ほぼ必ず襲ってくる眠気。 眠すぎて、気付いたら首がひん曲がっていたこともある。。。 そこで色々調べ、考え、まとめてみた。 まず気になるのは、昼食後に眠くなるのはなぜか、その原因 ①脳に血液が…

Docker実践〜dockerのコンテナ環境をきれいに消す

Dockerの検証したり、動作確認したりしていると、Dockerイメージや停止したDockerコンテナがどんどん蓄積されていって、目当てのイメージやコンテナを見つけにくくなる。 そのため、一度Dockerのコンテナ環境をクリーンアップする方法をまとめてみた。 クリ…

Docker実践〜稼働中のDockerコンテナをバックアップとしてイメージ化して保存しておく

稼働中のDockerコンテナで開発をしていると、もしコンテナが落ちたら環境がすっ飛ぶよなあ、、、と不安になるので、バックアップを取れないか検証してみた。 (コンテナで直接環境を更新しているあたり、本来のDockerの使い方には合っていないんでしょうが、…

短時間で正確にサーバの状態を把握するには

システムを維持管理している身としては、障害発生時などにいかに短時間で正確にサーバの状態や事象の中身を把握するか、が重要なポイントとなる。 そのためには、「基本を頭に入れておく」「根本をイメージする」という2点を身につけておきたい。 「基本を頭…

バッチの稼働時間を減らす方法

システムの維持管理をしていく上で、大切になるバッチの稼働時間。 この時間をなるべく減らす方法をメモ。 ・並列処理可能なポイントを見つけ、処理時間の短縮化を図る →ただし並列処理にすると少なからず負荷がかかるので、用意できるシステムリソース(CPU…

超基本的なPC起動の仕組み〜電源ONからデスクトップ表示まで〜

電源をポチッと押してから、デスクトップが表示されて人間が触れるようになるまでのPCが起動するプロセス、流れをざっくりまとめておいた。 ①まずは、PCの電源を入れることで電気が供給される ②搭載されているハードウェアが正常か、壊れていないかチェック…

プログラミングを学ぶにあたって覚えておきたいこと

プログラミングを学ぶにあたって覚えておきたい、意識しておきたいことをまとめておいた。 (1)プログラミングは必須スキルになる プログラミングは今後必須スキルになるため、他人との差別化の要因にはならなくなる。学校の授業で取り入れられるほどにな…

今に集中しつつ、将来の目的を見失わない方法が知りたい

目の前の目標に集中すると力が付くけど、将来の目的=目指したい方向がズレても気づきにくい。 将来の目的を立てて、未来に何々をしたい、とかばかり考えていると、今に集中できなくなる。 この"今"と"将来"の間を取れば、力が付くし、方向もズレない。 将来…

【Python】NumPyメモ

Numpyのメモ asfarray 数値をfloatタイプに変換する 文字列で読み込んだデータを数値に変換する時などに利用する Input # データリストのひとつひとつが空白区切りで格納されている場合 data_list=["4 3 2 1", "1 2 3 4", "7 6 5 4"] # 空白で区切って要素を…

データサイエンスの基本的なプロセス

データサイエンスといっても、幅広く、統計解析やデータマイニング、機械学習など違いがよく分からない言葉がたくさんある。 ただ、どんなことでもデータを分析するのであれば、プロセスは似たようなものになるはずと思っている。 そこで、以下の「データサ…

データサイエンティストになるために何を学ぶか

データ分析業務に就くにあたって、何を学んでおくべきかを調べて、考えてみた。 データサイエンティストに必要なスキル 3種類に分かれるらしい。 ・IT系 データを操るスキル。RDBMS、SQL、Hadoop、Python、Java、Linuxコマンドなど。 ・分析系 仮説を立てて…

virtualenvでPython3 環境構築メモ

virtualenvをインストール $ pip install virtualenv 環境を作りたいディレクトリに移動 $ cd 作業ディレクトリ 環境を構築 $ virtualenv 環境名 環境名のディレクトリが作成されるので、そこに移動 $ cd 環境名 仮想環境を起動 $ source bin/activate pytho…

Pythonいろいろメモ

Jupyter notebookでmatplotlib のグラフを表示させる方法 コードの先頭に %matplotlib inline を記述する。 標準入力の取得方法 入力データが以下のとき ------- 3 1 2 5 -------- input()を使って入力値を読み込む。 first = input() print(first) # 3 seco…