CV・NLPハマりどころメモ

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

LightsailにおけるSSL証明の更新[Lightsail]

lightsail.aws.amazon.com あとで自動更新の手順を追加する

pathlibを使うとglobもopenも使わずにテキスト処理ができる[Python]

これまで特定のフォルダ内にあるテキストファイルを処理するときは、以下のようにglobをインポートして、ファイルパスのリストを作成した後に、with openでテキストを読み込むということをしていた。 from glob import glob src = "./input_txt/*.txt" for t…

Raspi 3B+に外付けHDDをつなげてNextCloudでファイルサーバーを作成[NextCloud]

まずは下記のサイトを参考にRaspiにUbuntu server 18を導入した. gihyo.jp 次に下記のブログを参考に外付けHDDをRaspiにマウント マウントは/mediaディレクトリにすること. qiita.com ここからNext Cloudのインストールに移る. snapのインストール sudo a…

2枚のプロットを連続して出力する方法[Matplotlib]

plt.scatter(transformed_pca[:,0], transformed_pca[:,1]) plt.xlim(-0.1,1.1) plt.ylim(-0.1,1.1) plt.savefig('./pca.png') plt.figure(2) plt.scatter(transformed_tsne[:,0], transformed_tsne[:,1]) plt.xlim(-0.1,1.1) plt.ylim(-0.1,1.1) plt.savefi…

Flairで自前のELMoモデルを読み込む方法[Flair]

from flair.embeddings import ELMoEmbeddings from flair.data import Sentence sentence = Sentence(phrase) # Preparating ELMo options = './elmo_options.json' weights = './elmo_weights.hdf5' embedding = ELMoEmbeddings('custom', options_file = …

最近よく入力するコマンド[docker]

docker run -it --name "hoge" -v /home/ubuntu:/root/tmp -p 8080:80 hoge

Skype会議の招待はHTML形式でないとリンクが取れない[Skype]

Outlookで のボタンを押すと,簡単にSkype会議を設定できるのだが, デフォルト設定のテキスト形式でメールを送ると,以下のように文字化けしてしまう. こういうときは,ファイル > オプション. > メール でHTML形式に切り替えてみよう. HTML形式にすると…

コマンドプロンプトからファイルエクスプローラーを開く方法[Mac][Windows]

カレントディレクトリでエクスプローラーを開くためのコマンドを紹介. WindowsとMacでコマンドが異なる. for windows explorer . for mac open .

sudo pythonでnot foundになる時はpythonの絶対パスを調べよう[Python]

sudo python xxx.pyでスクリプトを実行した時,ライブラリが見つからないことがあった. こういう時はwhichコマンドを使って,普段のpythonの絶対パスを調べる. which python > /home/ubuntu/.pyenv/xxx/python そして得た絶対パスを使ってスクリプトを動か…

EntityRulerを使って深層学習ベースのNERにルールを追加[sciSpacy]

import spacy from spacy.pipeline import EntityRuler nlp = spacy.load("en_core_sci_sm") patterns = [{"label": "ORG", "pattern": "Jeffrey Hinton"}, {"label": "ORG", "pattern": "University of Toronto"}, {"label": "ORG", "pattern": "Google"}] …

Latexのbibでet al.を書く方法[Latex]

@inproceedings{suzuki2019, title={Hoge Hoge Title}, author={Taro Suzuki and Jiro Suzuki and Saburo Suzuki and others}, booktitle={15th Hoge Hoge Conference}, year={2019} } authorの所で,and othersと打つと,et al. になる. 3人以上を省略し…

新しい環境に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上でアクションがあると,ターミナル上に結果が吐き出される.