中野智文のブログ

データ・マエショリストのメモ

liblinear の切片を忘れていませんか?

背景 liblinear の学習で、切片を忘れているのを見た。幸いプロダクトではない。 切片とは、英語で言うと intercept (知っとるわw) このページを見に来た人は特に切片の説明自体はしなくてもよいと思う。どのように取得するのかは、 scikit-learn だと、 …

python ライブラリの gcloud(google.cloud) の storage の blob_name とは

背景 python ライブラリの gcloud(google.cloud) の storage の get_blob において、 https://googlecloudplatform.github.io/google-cloud-python/0.20.0/storage-buckets.html#google.cloud.storage.bucket.Bucket.get_blob とあるが、試してみると、googl…

sklearn にて `class_weight` が `balanced` か「なし」の探索

背景 sklearn の GridSearchCV はパラメータサーチに利用される。 sklearn.model_selection.GridSearchCV — scikit-learn 0.19.0 documentation ところが、パラメータなし、の設定例はみつからない。 sklearn.linear_model.LogisticRegression — scikit-lear…

Arduino (Uno R3互換)を Mac でLチカくらいまで。

準備 購入したもの amzn.to マニュアル CD 内の K4 というマニュアル/K4/k4 Japanese tutorial.doc ダウンロード Arduino - Software インストール 本体の準備 本体(UNO R3)をUSBケーブルで接続。緑LEDの点灯を確認。 ソフトのセットアップ 上記のファイルを…

シンギュラリティは永久機関のようなもの

背景 社員旅行の夜、シンギュラリティについて質問された。 それまであまりよく考えたことがなかったけど、このときに自分の中でかなり整理された。 無限に賢くなる? シンギュラリティの主張は、 AIがもっと賢いAIを作る。 これを繰り返す。 最終的に圧倒的…

json ぽいデータを引き抜くクソクエリ

背景 json に対応していない mysql 5.7 未満のシステムに、json で値が格納されている。 対応 クソにはクソで。 LOCATE と、SUBSTRING を駆使し、抽出を試みる。 ここに書かれているは方法は、「一般的に」JSONをパースして抽出する方法でなく、利用範囲が限…

luigi で パラメータで与えられた日付をtimedelta を使って増減させたい

背景 luigi にて、パラメータで与えられた日付に対して、固定日分前(例えば一週間など)を求めたい。 from datetime import timedelta import luigi class MyTask(luigi.Task): date = luigi.DateParameter() start_date = date - timedelta(days=7) と書く…

luigi の RangeDaily をコードで使う

背景 範囲日の繰り返し DateIntervalParameter 指定した範囲の日の処理を指定したい場合は、チュートリアルには次のようなコード例がある。 http://luigi.readthedocs.io/en/stable/example_top_artists.html#step-1b-running-this-in-hadoop def requires(s…

Julia の GaussianProcesses を jupyter notebook で表示する

背景 そろそろ jupyter notebook を使いたくなってきた。 前回、Gaussian Processes のライブラリを入れるところまではできたので(下記参照) nakano-tomofumi.hatenablog.com 今回は、jupyter notebook 上でグラフを表示するところまでやってみる。 IJulia…

BigQuery のスキーマを bq コマンドで使う形式で表示する jq

背景 ある日の空テーブルを作成しようとしたが、スキーマの文字列が必要になった。手作業だとミスが起こるから、コマンドが欲しい。 jq コマンド スキーマ文字列を取得 $ bq show --format prettyjson <既存のBQのテーブル名> | jq -r '.schema[] | map(.nam…

Julia の GaussianProcesses のライブラリを入れようとする (2)

前回はこちら nakano-tomofumi.hatenablog.com Optim の仕様変更への対応 問題のエラーは、次のようなもの julia> optimize!(gp) ERROR: MethodError: no method matching set_params!(::GaussianProcesses.GP, ::Float64; noise=true, mean=true, kern=true…

Julia の GaussianProcesses のライブラリを入れようとする

背景 連続腕バンディット(それもトンプソンサンプリング)をやってみようと思った。 ベルヌーイ分布のトンプソンサンプリングは、ベータ分布の乱数生成だけが肝だが、ライブラリを使ったり、最悪Cの関数を参考にしながら自分で実装すれば特に問題はない。 …

mac の gimp から印刷

背景 証明書写真を印刷したい。1mm もサイズが違わないように印刷したい。 結論 mac の gimp から印刷はうまくいかない。一旦、jpeg にして、jpeg を mac の previewer で詳細な印刷設定をしてうまくいく。 印刷前までの方法 ほぼ、下記の通り fanblogs.jp …

トラフィックエクスチェンジの闇

背景 ad fraud を追う間に、「トラフィックエクスチェンジ」というサービスを知ることになった。 トラフィックエクスチェンジとは、サイト間でユーザを交換しようという試みである。 まだ検索エンジンがあまり発展していなかった時代などは、サイト間のリン…

29戦中29連勝の勝率の信頼区間を求める

背景 仕事でどうしても必要になった(嘘) Wilson score interval で計算する。 早速だけど、下記の式を使ってみよう。 nakano-tomofumi.hatenablog.com 今回は、p = 0.05 で求める。標準正規分布の分位数はZ=1.96となる。 よって、 UCB: (29+1.96*1.96/2+1.…

BigQuery でテーブルを正規表現を指定して削除する

背景 BigQuery で特定のテーブルをワイルドカードで指定して削除したいことがある。ところが、CLIコマンドである bq はそのようなワイルドカード指定はできない。 データセットのファイル一覧を出して、それを egrep で抽出する 下記の <dataset_name> と、<regular expression> にそれぞれ、デ</regular></dataset_name>…

pdf を送ると、「Kindleに送信された文書に問題がありました」

症状 次の論文をchromeでダウンロードして、 https://openreview.net/pdf?id=BkJsCIcgl mail で kindle に送信すると次のようなエラーメールが届く 2017年6月19日(月) 午前 09:59(JST) に送信された以下のドキュメントは、指定されたKindle に送信できません…

Permission denied while globbing file pattern. のエラー

症状 BigQuery のWebコンソールでは特にエラーは出ないのに、redash だと Error running query: The job encountered an internal error during execution and was unable to complete successfully. みたいなエラー。 調査 コマンドコンソールにて同クエリ…

luigi の exit status

luigi の exit status は失敗しても 0 が返ってくるので、make などから呼び出した場合、そのまま通過してしまう。 調べると、次のページが見つかる。 qiita.com 実はコマンドラインのオプションでも設定できる。 $ luigi --help-all ... --retcode-unhandle…

Airflow と格闘中(15)

nakano-tomofumi.hatenablog.com 上記のように、もう使わない予定だが、エラーが出たので貼り付ける。 backfill で deadlocked エラー Traceback (most recent call last): File "/XXX/bin/airflow", line 28, in <module> args.func(args) File "/XXX/lib/python2.7</module>…

会社の新しいmac book pro に Julia をインストールする

自宅 mac の Julia のインストールには結構時間がかかった。 nakano-tomofumi.hatenablog.com 今回は会社の mac book pro にインストールする。 brew cask install julia でインストール cask 版を使ったら驚くべきことにサクッとインストールできた。 $ bre…

Airflow をおすすめしない理由

これまでずっと airflow と格闘してきたが(下記参照) nakano-tomofumi.hatenablog.com ここで一旦まとめることにする。 Airflow をおすすめしない理由 【致命的】Scheduler がコケる。 タスクは別プロセスで実行されるが、スケジュールもコードで書いてあ…

Airflow と格闘中(14)

nakano-tomofumi.hatenablog.com のつづき。 エラーで scheduler が落ちる。 次のエラーで落ちる。 Traceback (most recent call last): File "/XXX/python/venv/bin/airflow", line 28, in <module> args.func(args) File "/XXX/python/venv/lib/python2.7/site-pac</module>…

Airflow と格闘中(13)

nakano-tomofumi.hatenablog.com のつづき pause なんて知らない。 やっと原因の一つが分かった。 stackoverflow.com DAGが (デフォルトで)pause されていたのだ。でも pause されているなんてどこにも書いていない。 Scheduling & Triggers の項目にも、T…

Airflow と格闘中(12)

nakano-tomofumi.hatenablog.com Scheduling & Triggers の To Keep in Mind を読む。 以下を読む。 Scheduling & Triggers — Airflow Documentation 以下超訳(カッコ内は自分の感想) DAG Run は start_date から始まるよ。これは日付をしないときの話かな…

自宅macのJuliaLang環境を治す(3)

nakano-tomofumi.hatenablog.com の続き ちょっと変化があった。 $ brew test -v julia Testing staticfloat/julia/julia ==> Using the sandbox /usr/bin/sandbox-exec -f /tmp/homebrew20170526-45995-169fe4y.sb /System/Library/Frameworks/Ruby.framewo…

自宅macのJuliaLang環境を治す(2)

nakano-tomofumi.hatenablog.com のつづき。 xcode を入れる。 app store にて。 julia を再インストール $ brew reinstall julia Error: You have not agreed to the Xcode license. Please resolve this by running: sudo xcodebuild -license accept とで…

自宅のMacにRを入れる

背景 Juliaを入れ直そうと思ったら、うまくいかない。 Rを入れる。 とりあえず、Rをいれればなんとかなるかもしれない。 OS XにRをインストールするときに知っておきたいこと - Qiita にしたがって、brew で入れる方法を試すことに $ brew tap homebrew/scie…

virtualbox の時刻がずれている

背景 make をやっても、うまくいかないことがある。 ターゲットを共通化するために、前処理の複数のターゲットのアウトプットを同じものにしてあったが、 時刻がずれているため?、本来意図してない処理が呼ばれてしまう模様。 ntpd がインストールされてい…

自宅macのJuliaLang環境を治す

背景 色々不具合があるので修正しよう。 brew doctor のメッセージ Warning: You have unlinked kegs in your Cellar Leaving kegs unlinked can lead to build-trouble and cause brews that depend on those kegs to fail to run properly once built. Run…