python, R, vimでデータマイニング

python, R, vim で疑問に思ったことなどを

2019-04-01から1ヶ月間の記事一覧

count encodingの実装

データフレーム全体に対してCount Encodingするパッケージを作成しました。 別データに適用することも考慮して 変換テーブルの役割の辞書を作成する関数 上記を適用する関数に分けました。 create_count_encoding_dicts apply_encode_dicts 以下 README 3. u…

lightgbmの変数の重要度を取得する関数

lightgbmの変数の重要度を取得する関数 Table of Contents 1. 概要 2. 使用例 1. 概要 モデル構築後に変数の重要度を確認することが多いので関数化しました。学習済みのestimatorを与えると重要度テーブルがデータフレームで返されます。utils4mlという自作…

loadbank:検証用データを作成するパッケージを作成しました。

loadbank:検証用データを作成するパッケージを作成しました。 Table of Contents 1. 概要 2. 基データ 3. データ作成方針 4. パッケージの使用例:データ作成 5. LGBMClassifierでモデルを作成して精度を見てみる。 6. LGBMRegressorでモデルを作成して精度…

自分好みのcross_val_predictを実装したい

sklearnのcross_val_predictをちょくちょく使用するが自分好みにちょっと改造したい。 具体的には各FOLD毎にfitしたestimatorを取得したい。 あとで実装候補としてメモ。

RMSEを計算する関数を用意しておく

sklearnにはRMSEを計算する関数がない模様で毎回コードを書くのが面倒なので自作パッケージ内の関数として用意しておく。 1. rmse Root mean squared error regression loss. 1.1. 使用方法 from utils4ml.sklearnwrappers import rmse 1.2. 関数定義 import…

*.adoc にasciidoctorコマンドを適用する find -exec

自分用にパッケージを作成していてドキュメントをadocで作成している。 一つの関数ごとにadocを一つ作成していて数が多くなるので一括でコマンドを適用したい。 一般的な使用方法なので調べればすぐに分かるけど私用にshellscriptに用意しておこう。 find . …

機械学習モデルのパラメータをデータフレームに変換してCSVファイルに書き込む

機械学習モデルのパラメータをデータフレームに変換してCSVファイルに書き込む Table of Contents 1. パラメータの辞書作成 2. パラメータをデータフレームに変換 3. 関数化 機械学習モデルのパラメータは辞書で作成します。パラメータの内容を確認するとき…

LGBMClassifierのモデルをdumpしたい

LGBMClassifierのモデルをdumpしたい Table of Contents 1. モデルの作成 2. モデルのdump 3. モデルのload 4. loadしたモデルでpredict ちょっと調べてみたところfrom sklearn.externals import joblibで行けるらしい。試してみる。→ 問題なくできました。 …

pip install from git ssh

git sshのインストールで少しだけハマったので。 gitのcloneで使用するSSHのURIは git@github.com:<username>/<reponame>.git なので頭にssh://を付与して pip install ssh://git@github.com:<username>/<reponame>.git とすると場所がみつからずエラーとなる。 :を/に変える必要があった。 pip insta</reponame></username></reponame></username>…

Pipenv でプロジェクト名(ディレクトリ名)や場所を変更したい

ちょっと調べたのですが有用な情報を見つけることができませんでした。 あまり推奨されないのでしょうか? 環境構築に時間がかかりますし、ネット環境がない状況に対応するため 予め構築済みの環境を使いましたかったのですが。

pipenv install が遅すぎた

pipenv install が遅すぎて困りました。 とても許容できるような遅さではありません。 調べてみるとlock処理に時間がかかるようです。 --skip-lock を指定するとlockをスキップできるようです。 毎回オプションを指定したくないのでエイリアスを設定します。…