2019-01-01から1年間の記事一覧

PCAの逆変換

PCA の inverse_transform は、component_ が直交行列的なため、以下の変換ができる。 w = X c --> w cT= x alexhwilliams.info

category encoding について

category encoding をsklearn の BaseEstimator, TransformerMixin を利用して、作成されている。 binary encoding bit 表現で one-hot encoding的な表現を作る。カラムの順序は value order でいい感じに調整できる。 BaseNEncoding bit 表現(2進数)ではな…

rle_encode の +2については、 pixel は 1 から、採番していくため、+1 0番目と1番目の差異を index=0とするため、実際のmask は +1 def rle_encode(mask): """ Ref. https://www.kaggle.com/paulorzp/run-length-encode-and-decode """ pixels = mask.flatt…

plt.hist と sns.distplot の normed パラメータについて

plt.hist の normed=True は 出現確率を表現するものではなく、面積的ななにかをnormize する方法っぽい。 sns.distplot も同様。 jb102.blogspot.com

リモートのbranchの削除方法

Git

origin(remote名) の develop を消す場合。 $ git push origin --delete develop stackoverflow.com

CTCのbeam search を読む

Pb(b, t)+=Ptot(b, t-1)·mat(blank, t) の mat は最初に与えられた時系列のchar matrix のこと。 b: それまでappendされた文字列 のことっぽい。beamと書いてあるけど。 条件に従って、漸化式を計算していくと解けそう。 towardsdatascience.com

matplot の色をラベルで固定する方法

色の確認 import matplotlib as mpl import matplotlib.pyplot as plt def plot_colorMaps(cmap): fig, ax = plt.subplots(figsize=(4,0.4)) col_map = plt.get_cmap(cmap) mpl.colorbar.ColorbarBase(ax, cmap=col_map, orientation = 'horizontal') plt.sh…

アノテーション用のソフト

アノテーション用のソフトについて、以下の参考サイトがあったので掲載。 www.robots.ox.ac.uk engineering.matterport.com

Plotly のセットアップで詰まった所

seaborn の stack の barplot が難しいので、Plotly で実施するように変更した。settings に手こずったので tips のURL を掲載。 stackoverflow.com stackoverflow.com

{0..10}の10を他のコマンドから取得する方法

shell でディレクトリの階層分の for 文を回す時、for i in {0..$(hogehoge)}; do echo $i; done すると、{0..10}とかがechoされて意図と異なる挙動をした。 ので、メモ。 for i in $(seq 0 $(find . -type d -printf '%d\n' | sort -rn | head -1)); do ech…

機械学習のモデルの比較について

精度の標本平均の差と、McMemar検定をすることで効果測定できそう。 machinelearningmastery.com hs-www.hyogo-dai.ac.jp

傾向スコアのATTについて

傾向スコアについて、IPWのATTの計算式について詳しく書いていたので、抜粋。 ATTのときの、 ATT = E[Y_1 | Z=1] - E[Y_0 | Z=1]は公式に入れるとき、Z=1のみに限定されていない。ATEの公式と見比べるとわかる。 https://waidai-csc.jp/updata/2018/08/semin…

seaborn : barplot の xticks の調整が難しかった

seaborn の barplot を使っている時、1990~2020 年までのデータに不足があったので、間がとびとびのbarplotになっていた。 xticks(np.arange(1990, 2020)) とかで調整しようとすると、barが消えたりする。 不足分を補うことで、対応した。やむなし。idnex は…

2つ以上の histgram の bins の幅がいい感じにならなかったので

これでいい感じに揃えられた。 sns.set(font='IPAPGothic') plt.figure(figsize=(12, 4)) try: bins=np.histogram(np.hstack((tmp_0[col],tmp_1[col])), bins=50)[1] #get the bin edges except Exception as e: print(e) continue sns.distplot( tmp_0[col]…

Notebook を HTML形式で出力する方法

ワイルドカードでの指定でも可能 stackoverflow.com

ノンパラメトリックの検定

各水準の母分布が正規分布の場合は、分散分析による有意差検定が可能だが、ノンパラメトリックと仮定した場合は以下の検定がある。 swdrsker.hatenablog.com swdrsker.hatenablog.com

特徴量の自動選択

xgboost の特徴量選択について、total_gain で特徴量の重要度を抽出。 programmer.ink datanerd.hateblo.jp

seaborn の distplot logscale

dispplot の y軸 log scale sns.distplot(..., hist_kws={'log':True}) github.com

スニーカーについて

気に入っているスニーカーメーカーが、SPINGLE って名前なのに今更知った。。メーカーとかそんな興味なかったんやけどな。 似てる靴なのに型番が違うのは何かが違うんだけど、違いがわからない。 多分、前はSPM-356履いてて、今はSPM-443履いてる。どっちも…

ZIPファイルから、skimage と PIL で 画像を読み込む

zip を解凍せずに処理していきたい(Diskを圧迫するため)。 import pandas as pd import numpy as np import skimage.io from PIL import Image, ImageFile import io def get_pil_inzip(_zip_path, image_idx): image_id = files_in_zip_dic[image_idx][0]…

pytorch の gather と scatter の理解

gather と scatter の理解 が難しかったので、まとめた。 input を dim の方向に、arg 指定ごとに取得するイメージ。 # gather # torch.gather(input, dim, index, out=None, sparse_grad=False) → Tensor out[i][j][k] = input[index[i][j][k]][j][k] # if …

pandas groupby した後のカラム

grouypby agg した後の、columns を 階層1に統合。 tmp_kigo2.columns = ['_'.join(col) if col[1]!='' else col[0] for col in tmp_kigo2.columns]

seaborn の figsize

seaborn で figsize 変更するには以下のメソッドが使いやすい。 g = sns.catplot( x='year', y='金額', hue='フラグ', data=df, kind='bar' ) g.fig.set_size_inches(15, 4) plt.show() www.drawingfromdata.com

jupyter notebook の src から画像を復元する方法

最初の data:image/png;base64 の文言は BOMみたいなもんなので、抜いてください。 import base64 from PIL import Image from io import BytesIO text = "" def base642image(data): try: ddata = base64.b64decode(data) img = Image.open(BytesIO(ddata))…

時系列の python 実装例

www.dataquest.io www.machinelearningplus.com

git でファイルを残しつつ管理対象から消したいとき

Git

cachedオプションつけなくて、ファイル消してしまった... # --cachedオプションを付けることにより、ファイルを残したまま管理対象から外すことができます。 $ git rm --cached [削除したいファイル] qiita.com

時系列の特徴量に三角関数が有効

sin などを使うことで、周期性を特徴量に入れれるらしい。 tbnsilveira.info isadoranun.github.io pandas.pydata.org

pandas dataframe の single brackets の指定方法

single bracket の dataframe の使用方法の知らないやつ df[lambda x: x[1]==1] pandas.pydata.org

国際カンファレンス(ML)

行かなくても論文追ってみたい。 NIPS nips.cc ICML icml.cc

分類機を loss=BCE で予測するとき

0, 1 の分類器について、BCE で loss を計算すると、未来の確率の最尤は予測値となる。 def likelifood(x, n, n_1): return (x**(n_1)) * ((1- x) ** (n - n_1)) N = 100 N_1 = 80 x_list = [] for i in np.arange(0, 1.01, 0.01): xx = likelifood(i, N, N_…