CV・NLPハマりどころメモ

画像認識と自然言語処理を研究する上でうまくいかなかったことと,その対策をまとめる自分用のメモが中心.

新しい環境にPython環境を準備[python]

Ubuntu16.04だと,2系と3系のpythonが混在しているため,pyenvで環境を作る. 必要なパッケージのインストール sudo apt install -y git openssl libssl-dev libbz2-dev libreadline-dev libsqlite3-dev libffi-dev pyenvのインストール git clone https://g…

llコマンドが無いときの設定

sudo vi ~/.bashrc #追記 alias ll='ls -la'

追加ディスクのmount手順[Ubuntu]

sudo fdisk -l でディスクが認識されているかと,パス(/dev/xvdfなど)を確認 sudo vim /etc/fstabでディスクのパスとマウントポイントを指定. 例 /etc/fstab /dev/xvdf /home/ubuntu/storage ext4 defaults,discard 0 0 sudo mount -aでfstabの変更内容をす…

元素記号をハードコーディングするときのリスト[Python]

手打ちで作って大変だったため記録. atomic_symbol = ["H", "He",\ "Li", "Be", "B", "C", "N", "O", "F", "Ne",\ "Na", "Mg", "Al", "Si", "P", "S", "Cl", "Ar",\ "K", "Ca", "Sc", "Ti", "V", "Cr", "Mn", "Fe", "Co", "Ni", "Cu", "Zn", "Ga", "Ge", "A…

アノテーターの評価指標[ML]

ML

2人のとき→F1, kappa 3人以上のとき→Cronbach Alpha 解説記事 ides.hatenablog.com python ライブラリ github.com

他クラス分類のマクロ平均とマイクロ平均の違い[ML]

ML

大げさな名前がついているが,実際は単純. マクロ平均(macro average) 全クラスの結果のF1値を計算したもの. マイクロ平均(micro average) クラスごとにF1値を計算し,それらを単純に平均したもの.

Seaboarnでheatmapを表示させた時の数字を1.5e+02→150に変更[Python]

修正前 import matplotlib.pyplot as plt import seaborn as sns confusion = calc_confusion(all_prediction["A"], all_prediction["B"]) df = pd.DataFrame(data=confusion, index=['0', '1', '2', '3'], columns=['0', '1', '2', '3']) plt.figure() sns.…

apt-getでGPG errorが発生した時の対策[Ubuntu]

対策 chmod 1777 /tmp github.com 経緯 dockerで立てたコンテナでapt-get updateを打ち込むと, W: GPG error: http://ppa.launchpad.net/jonathonf/python-3.6/ubuntu xenial InRelease: Could not execute 'apt-key' to verify signature (is gnupg instal…

MacでElectron環境を構築[Electron]

手順 brew install nodebrew PATHの設定 export PATH=$HOME/.nodebrew/current/bin:$PATH source ~/.bash_profile nodebrew -v For node.js install mkdir -p ~/.nodebrew/src # 下のコマンドでエラーが出たら打ち込む nodebrew install-binary latest バー…

G-Shock DW-6900GのAC(All clear)方法

以下の写真の赤でマークされている二点をピンセットなどで通電する。

Collectionで作った辞書を棒グラフでプロット[python]

import collections import matplotlib.pyplot as plt l = ['a', 'b', 'b', 'b', 'c'] c = collections.Counter(l) plt.bar(list(c.keys()), list(c.values()))

自作データで学習したモデルを再度読み込んで2回目の学習を実行[Flair]

自作データを使って2回以上の学習を回したときにハマったのでまとめる. 筆者が自作データでNERの学習を行なったときに,1回目に学習したモデルを2回目の学習に引き継ぎたいと思った. しかしながら,その方法は公式ドキュメントには書いていなかったので,…

pathlib, f-stringを使ってスマートにパスを生成[Python]

Python3.6から使えるようになったf-stringを使って,スマートにパスを生成しよう. かっこ悪いパスの生成 from datetime import datetime now = datetime.now().strftime("%Y%m%d%H%M%S") dst = "/root/output/" + now + "_result/hoge.txt" print(dst) >> /…

pipでパッケージの最新版をインストールする[git]

git

git hub の最新版のコードを使いたいときのコマンド. 以下に,NLPライブラリFlairの最新版をインストールするときのコマンドを示す. インストール前にflairがあっても,最新版に更新してくれる. ただし,最新版は,バグやら不具合が多くて不安定なので,…

容量が一杯になってしまった時にでるエラー[AWS][EC2]

apt update を実行して以下のエラー こんな時は,df -h で容量を調べてみよう.きっとディスクがパンパンになっているはずだ. Error writing to output file - write (28: No space left on device) Error writing to file - write (28: No space left on d…

\cite, \citet, \citepの違いは?[Latex]

\citetと\citepでは,括弧の位置が異なる. *を付けるとet al.で省略しない. \citeと\citet, \citepの使い分けはまだわからない. \citet{jon90} --> Jones et al. (1990) \citep{jon90} --> (Jones et al., 1990) \citet*{jon90} --> Jones, Baker, and Wi…

章番号を参照した時に「1. 章」とドットが付く問題の解決法[Latex]

問題: \ref で参照すると不要なドットが付く 電◯情報通信学会の日本語原稿を執筆していると,章番号を\refで参照した際に,不要なドットがついてしまう. \ref{sec:conclusion}章でまとめと今後の課題を述べる. ↓ 6. 章でまとめと今後の課題を述べる. ぐぬ…

起動中のコンテナに別ターミナルからアクセス[Docker]

docker exec -it my-container /bin/bash あるコンテナで学習を回すと,そのコンテナが結果出力で占有させてしまったので上のコマンドで, 2つ目のコンソールを立ちあげて,学習とLinuxの設定を同時に実施した.

CUIに出力を表示させずに起動[Jupyter]

jupyter lab --no-browser --port=8888 --ip=0.0.0.0 --allow-root & Control+C を押してもサーバーが止まることは無くなる. しかし,Jupyter lab上でアクションがあると,ターミナル上に結果が吐き出される.

初期設定[JupyterLab]

pip install jupyterlab Node.jsの導入 curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - sudo apt-get install -y nodejs Variable Inspectorの導入 jupyter labextension install @lckr/jupyterlab_variableinspector

研究をするのにオススメなDockerImage[随時更新][Docker]

自然言語処理にオススメ github.com FlairやSpacyなどが含まれている GPUにも対応している Flairを使う場合,pip install -U pip と pip install -U flairでアップデートを行う必要がある.

NextCloudにコマンドラインでアクセス[NextCloud]

今回は,NextCloudにコマンドラインでアクセスし,共有フォルダ内の情報参照とファイルのダウンロード・アップロードとファイルの共有リンクの発行を行う方法を紹介する. 共有フォルダ内の情報参照 LinuxやUnixのコマンドラインでcurlを使って情報を取得す…

jupyter-notebookを起動する時のコマンド[jupyter]

jupyter notebook --port=8888 --ip=0.0.0.0 --allow-root

画像ギャラリーをワンクリックで作成[HTML]

Arles Image Explorer をダウンロードする Webサイト用の画像ギャラリーを生成するツール「Arles Image Explorer」を下記のサイトからダウンロードし,インストールする. https://www.digitaldutch.com/arles/ 対応OSはWindows Arles Image Explorerを開く…

NLTKでアノテーター間の合意度(Inter Annotator Agreement)[NLTK]

NERに使うタグ付けデータをアウトソースにより作成したのだが,アノテーションの信頼度が分からない. このため,NLTKでアノテーター間の合意度を算出した.これはその時のメモである. 3人のアノテーターが付けたラベルに対し,Cohen's kappa(1960)とKripp…

Git LFS のインストール手順[Git]

Git

curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash sudo apt-get install git-lfs git lfs install 上の3ステップでインストール完了 そして、以下みたいなファイルがある場所で version https://git-lfs.gi…

学習を複数回繰り返した際にOMMがでたときの対処法[GPU]

GPU

対処法 nvidia-smi からプロセスのPIDを確認し、kill コマンドでプロセスを消すと解消。 nvidia-smiコマンドを入力すると、下の方にプロセスがPID付で一覧表示される。あとは、kill PIDでプロセスを削除し、メモリを解放する。 上の画面だと、1252Mもメモリ…

ラズパイを固定IP化するときは手持ちのルーターでDHCP固定割当をする[raspi]

LAN(ローカル)環境でラズパイを使うときは,ルーターで設定をおこなうことでIPの固定化ができる. Buffaloのルーターでのやりかた www.buffalo.jp JessieのRaspiでの設定 /etc/dhcpcd.conf をvimなどで開く 以下の内容を追記 interface wlan0 static ip_addr…

sudo dpkg-reconfigure keyboard-configurationが再起動の度にリセットされる[Ubuntu]

困りごと sudo dpkg-reconfigure keyboard-configuration Ubuntu16.04で上のコマンドをうちこんでも再起動の度に設定がリセットされてしまう。 対象法 設定ファイルを直接変更 /usr/share/ibus/component/mozc.xml <layout>○○<layout>を<layout>jp</layout> /etc/default/keyboard XKBMODEL=◯◯</layout></layout>…

nvccとnvidia-smiのCUDAバージョンが違う[CUDA]

下記に記事を見つけたので、後でまとめる。 stackoverflow.com