Skip to content

Instantly share code, notes, and snippets.

Avatar

Masahiro Kaneko kanekomasahiro

View GitHub Profile
@kanekomasahiro
kanekomasahiro / json_loads.py
Created Dec 13, 2021
文字列になっているdictやlistをjson使ってdictやlistにする
View json_loads.py
import json
s = '[1, 2, 3]'
l = json.loads(s)
@kanekomasahiro
kanekomasahiro / tokenize_with_mecab.py
Last active Aug 27, 2021
mecabを使おうとした時にmecabrcがないとエラー吐いた時の対策
View tokenize_with_mecab.py
# pip install unidic-lite
# /home/ユーザー名/.pyenv/versions/3.9.0/envs/evaluate_mlm/lib/python3.9/site-packages/unidic_lite/dicdir/ みたいな
# 箇所に辞書が作られるのでそこにパス通す.
import MeCab
tagger = MeCab.Tagger('-r /dev/null -d /home/ユーザ名/.pyenv/versions/3.9.0/envs/evaluate_mlm/lib/python3.9/site-packages/unidic_lite/dicdir -Owakati')
tagger.parse('これはペンです.')
@kanekomasahiro
kanekomasahiro / pip_install_numpy_for_m1_mac.sh
Last active May 31, 2021
M1 Macでpip install numpyが失敗した時やる. `ERROR: Command errored out with exit status 1:` みたいなエラー吐いた時に使う.
View pip_install_numpy_for_m1_mac.sh
brew install openblas
OPENBLAS="$(brew --prefix openblas)" pip install numpy
@kanekomasahiro
kanekomasahiro / download_from_google_drive.sh
Last active Jan 1, 2022
google driveから大きいファイルをダウンロードする.
View download_from_google_drive.sh
# 共有可能なリンクを取得からFILE_IDを取得する
FILE_ID=1uoAReQK3f5g9CEy8rV4haSzXll8NqVHW
FILE_NAME=gfm-models.zip
curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=${FILE_ID}" > /dev/null
CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=${FILE_ID}" -o ${FILE_NAME}
@kanekomasahiro
kanekomasahiro / get_file_name.py
Created Apr 22, 2021
pythonで名前の一部が一致するディレクトリ内のファイルを取得する.
View get_file_name.py
from glob import glob
for file_name in glob('../../*.txt'):
print(file_name)
@kanekomasahiro
kanekomasahiro / extract_name_from_path.sh
Created Apr 21, 2021
shellスクリプトでpathからデータとファイル形式を除去してfile名だけを抽出する.
View extract_name_from_path.sh
# file_path=../data/hoge.bin
# file_name=hoge
file_name=$( echo $file_path | cut -d/ -f4 | sed -r 's/(.[^.]+){1}$//g')
@kanekomasahiro
kanekomasahiro / convert_string_to_list_or_dict.py
Created Apr 7, 2021
stringタイプで記述されたリストや辞書をリストや辞書タイプに変換する.
View convert_string_to_list_or_dict.py
from ast import literal_eval
s = '[1, 2, 3, 4]'
l = literal_eval(s)
@kanekomasahiro
kanekomasahiro / extract_hidden_states_by_word_index.py
Created Apr 5, 2021
自然言語処理でよくあるテンソル(バッチ×文長×隠れ層の次元サイズ)からバッチごとに異なるindexの単語の隠れ層を抽出する方法.
View extract_hidden_states_by_word_index.py
import torch
def extract_hidden_states_by_word_index(input, index):
'''
Extract hidden states from a tensor (batch * sentence length * hidden size) by word index.
Parameters
----------
input : torch.Tensor
@kanekomasahiro
kanekomasahiro / vimrc
Last active Jun 12, 2021
python用のvimrc.
View vimrc
" This is Gary Bernhardt's .vimrc file
" vim:set ts=2 sts=2 sw=2 expandtab:
" remove all existing autocmds
autocmd!
" initialize plugins
call plug#begin('~/.vim/plugged')
Plug 'vim-ruby/vim-ruby'
Plug 'slim-template/vim-slim'
@kanekomasahiro
kanekomasahiro / calculate_matrix_cosine_similarity_numpy.py
Created Mar 27, 2021
numpyで行列のコサイン類似度を計算
View calculate_matrix_cosine_similarity_numpy.py
import numpy as np
def calculate_matrix_cosine_similarity(matrix1, matrix2):
return np.dot(matrix1, matrix2.T) / (np.linalg.norm(matrix1, axis=1) * np.linalg.norm(matrix2, axis=1)).reshape(-1, 1)