論文紹介 - Managing Risk of Bidding in Display Advertising
社内勉強会で紹介したやつです。 数式埋め込みの都合で限定共有でQiitaに投稿しました。
論文紹介 - Managing Risk of Bidding in Display Advertising - Qiita
pure prompt で vcs の情報が出なかった問題
(発生した問題) zsh のプラグインとか設定周りを整理していたときに, いろいろやってから セッション再起動したら pure prompt のvcs情報が出なくなった。 以下と似た症状
(対応) 一応コミットはちゃんと整理していたので, checkout しながら 2分探索して問題のcommit を発見 こいつが悪さをしていた模様
+if type "bat" > /dev/null 2>&1; then + alias cat='bat' +fi
根本原因は特定できていないが, 削除して対応。後で原因は細かく調べる。
(余談)
2分探索はテスト用のscript を用意できるなら git bisect
するのが良さそう。
Git - git-bisect Documentation
auto-ls をいい感じにする
esa と typora で個人wiki 的な感じのもの作って満足 して public なoutputをサボっていたので 小ネタを書く
auto-ls
cd したときに デフォルトで 自動的に ls
と git status
してくれるやつ, history が汚染されにくくなるし便利。
不満点
出力が冗長, scipy に適当にfile を追加してみる
~/gitrepos/github.com/scipy/scipy master* ❯ touch hoge && cd . appveyor.yml CONTRIBUTING.rst hoge MANIFEST.in README.rst setup.py tools benchmarks doc INSTALL.rst.txt pavement.py runtests.py site.cfg.example tox.ini codecov.yml HACKING.rst.txt LICENSE.txt pytest.ini scipy THANKS.txt On branch master Your branch is up to date with 'origin/master'. Untracked files: (use "git add <file>..." to include in what will be committed) hoge nothing added to commit but untracked files present (use "git add" to track)
対策
git status --short
と exa
を使う
exa について
better ls, rust製
zshrc に以下を追加
export AUTO_LS_COMMANDS=(exa git-status-short) auto-ls-exa () { if type "exa" > /dev/null 2>&1; then; exa fi } auto-ls-git-status-short () { if [[ $(git rev-parse --is-inside-work-tree 2> /dev/null) == true ]]; then git status --short fi }
結果
出力が簡潔になっていい感じ, コードべた張りなのでわかりにくいが, exa 使ってるので色分けもいい感じ。
~/gitrepos/github.com/scipy/scipy master* ❯ cd . appveyor.yml CONTRIBUTING.rst hoge MANIFEST.in README.rst setup.py tools benchmarks doc INSTALL.rst.txt pavement.py runtests.py site.cfg.example tox.ini codecov.yml HACKING.rst.txt LICENSE.txt pytest.ini scipy THANKS.txt ?? hoge
一言
Captio + slackでアイデアメモ
シャワー浴びてるときとか散歩してるときとかにいいアイデア思いついても, パッとメモ取れないのが微妙にストレスだったのでいい方法がないか少し調べて試してみた。
結局一旦captio + slackに落ち着いた。
昔は fastever とか使っていたんですが. 色々あってevernote使わなくなってしまったので。
slackで自分にmentionする方法も使っていたんだけど, 遷移するのが面倒。
Captio
fastever のメール版, どっかのpodcastで最初紹介されてて良さそうだと思ったけど, メールあまり見ないしなーと思って放置していたのだが, 最近以下の記事で言及があって存在を思い出した。
自分はメインのコミュニケーションツールはslackを使っているのでそちらと連携できないか, 少し調べてみた。
slackへのメール転送
普通に公式ドキュメント記載の手順で設定した。こちらの手順で転送用のメールアドレスを取得できるので Captioの送信先にそちらを指定する。
設定した感想
良かったところ
- Captio立ち上げ早いので, パッとかけて良い。これくらいならストレス感じない
- 情報がslackに集約される
微妙なところ
通知バーでは 件名を表示してくれない
slackbotから送られてくるのでmuteできない。
- keyword notificationくらいで十分
ついでに
neovim0.2.2で `pointer being freed was not allocated`
dein周りの設定をいじっていたら, mallocのerrorが出てきて困ったのでその時の対処のメモ。 根本的な原因はわかっていない 😢 後ほどわかれば追記
バージョン情報
macOS 10.13.3 neovim 0.2.2 vim 8.0
error内容
$ vi a [dein] Invalid toml format: /path/to/.config/nvim/dein.toml [dein] Text.TOML: No such file `/path/to/.config/nvim/dein.toml'.nvim(72526,0x7fffb059b340) malloc: *** error for object 0x7fba90702470: pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug zsh: abort /usr/local/bin/nvim a $ type -a vi vi is an alias for /usr/local/bin/nvim vi is /usr/bin/vi
どうやらdein関係のキャッシュが問題?
対処
dein の各種リポジトリが入ってる削除を一旦対比させて, 素のvim経由でdein.toml読んでplugin入れ直したら直った
ググって確認したissueはこの辺とか https://github.com/Shougo/dein.vim/issues/270 https://github.com/NixOS/nixpkgs/issues/18466
こういうことかも, neovim側のバグ?
kiooss commented 10 days ago @ZackC I think the "the latest version of neovim" from Shougo is the latest unstable version of neovim, but not the latest stable version^^
macOS High Sierra updateでハードリンクしてたディレクトリが消える問題まとめ
TL;DR;
- macOS High Sierra にupdateするとファイルシステムが変わってハードリンクしてたディレクトリが使えなくなりました。
- とりあえず復旧できましたが, 同じような使い方している人はupdate気をつけたほうが良さそうです。
背景と起こっていた問題
原因
- ファイルシステムの変更でハードリンクをサポートしなくなっていた
- Apple File System Guide - Frequently Asked Questions
Does Apple File System support directory hard links?
Directory hard links are not supported by Apple **** File System. All directory hard links are converted to symbolic links or aliases when you convert from HFS+ to APFS volume formats on macOS.
解決策
- 以下にあるように,
/.HFS+/dir_*****
にハードリンクしてたディレクトリは退避されているので, そちらからコピー - https://github.com/selkhateeb/hardlink/issues/31#issuecomment-333149665
備考
- Can you install High Sierra and not convert to APFS? | Page 2 | MacRumors Forums に書かれてるように手動アップデートするとfile systemは変えずにアップデートできるらしい
一言
- OSのアップデート内容はきちんと確認しましょう。
GTC Japan 2017 参加メモ
今更感ありますが, 社内ブログに書いたネタを使いまわしました。
イベントの内容はこんな感じで, 2日目13日の方にお邪魔しました。 手元のメモを元に気になったポイントなどをまとめます。
基調講演
- Mooreの法則の話
- NVidia Holodeck
- VR内で共同作業を行えるシステム。物理シミュレーションなども可能。
- DEMO https://youtu.be/hUsP7fsjrdg
- Deep Learningにより作曲した曲のオーケストラ演奏
- Remedyとの共同研究による発話からの表情生成
- Nvidia and Remedy use neural networks for eerily good facial animation | Ars Technica
- 発話認識の精度向上のために表情とのマルチモーダル学習を行う話は聞いたことあったが, 逆の話も進んでいたのは知らなかった...
- Tesla V100の紹介
- Progressive GANの話
日本企業に対してのsales talkがすごかった
🎉 More buy GPU, More save money 🎉
ディープラーニングの本番運用への課題を解決する「ABEJA platform」
データ分析コンサルっぽい話でした 以下memo
Abejaは国内で唯一nvidiaから出資受けている
現状, アノテーション作業を付加価値高いデータサイエンティストの方がやっている
アノテーションデータがどれだけ必要かがわからない
精度が何%あれば成立するのか品質の評価のすり合わせが難しい
annotation用のソフトウェアを制作
- annotation以外でも人力AIでデータ貯めるためにオペレータが使用するソフトを内製している会社は結構あるイメージ。名刺のあの会社とか
AIタクシー, リアルタイム人口統計データを用いた深層学習によるタクシー需要予測
- 研究概要
今回講演のメディアまとめ
現状の課題
- 新人ドライバーは需要の高いエリアがわからない
- ベテランドライバーは土地勘のないエイアから得意エリアに帰ろうとしてしまう
使用データについて
- 携帯電話の基地情報データ500mグリッドで推定
- docomo携帯電話所持率に合わせて補正した値を利用
- データは30分毎にバッチ取得
用いた手法について
高次元の特徴量の抽象化のためにstacked denoising AEを使用, AEで抽象化されたデータをpredictorに入れて30分後の需要予測
ParameterOptimization
- Hyperopt でrandom search
- relu, batch normarization, adamを使用
計算環境
- DGX-1 P100 16GB * 8
工夫
- 他地点のデータを取り入れることで汎化性能を高めた
- タクシーデータ, 人口データ, 気象データを利用
気になった点
- 他の手法との検討比較がなかった。そもそもdeep でやる必要あるのか?
- グラフをパット見た感じdailyのseasonalityの影響が大きい。周期はyearlyで考慮したとのことだがその他は?
- 研究, 計算コストと実際の売上への寄与
機械学習による視覚情報理解
東大原田先生の公演 研究室の最近のDL関係の成果報告
今回の発表テーマは以下の3つ
- webDNN
- Neural renderer
- between class learning
以下で概要をまとめますが, Deepの話あまり詳しくないのでテキトーな箇所もあると思うので, 詳細気になった方は元の論文読んでください。
webDNN
- 概要
紹介ページの内容をGoogle翻訳に突っ込んだだけ
ディープニューラルネットワーク(DNN)は、多くのアプリケーションで使用することに大きな注目を集めています。しかし、多くの計算資源が必要であり、GPGPUなどの実行環境に基づくハードウェアアクセラレーションを設定するには膨大な処理が必要です。したがって、エンドユーザにDNNアプリケーションを提供することは非常に困難です。 WebDNNは、Webブラウザをインストール不要のDNN実行フレームワークとして使用することで、この問題を解決します。このフレームワークは、訓練されたDNNモデルをモデルデータを圧縮し、実行を加速するように最適化し、WebAssemblyやWebGPUなどの新しいJavaScript APIを使用してゼロオーバーヘッド実行を実現します。実証的評価では、200倍以上の加速を達成しました。
- PCなどのカメラで取り込んだ画像をリアルタイムで変換, 分類 ONNXにも対応
実際に以下のページで試せる MIL WebDNN
OSSとして公開されている :ideograph_advantage: https://github.com/mil-tokyo/webdnn
Neural renderer
- 概要 2d画像から, 3dモデルへのレンダリングをDNNで実現 既存のBoxel baseよりスムーズに3dモデルを再現
3dモデルのレンダリングをDNNで行うにあたって微分不可能な領域が存在するため, backpropの計算が困難。提案手法ではblurしてから微分。詳細は元論文fig.2, fig.3, chap.3あたりを参照
3d版deep dreamなどが紹介されていた。
between class learning
(概要) 画像識別のための新しい学習法。 CIFAR10, CIFAR100などでShake-Shake Regularizationを拡張することでSOTA達成
ベースのアイデアはMITとFAIRが出したmixupと同様。(ref. unsky/mixup: mixup: Beyond Empirical Risk Minimization )
(雑な説明)
異なる2つのクラスt1,t2に属する, imageの特徴x1, x2を r~U(0,1)
でmixinして, 特徴を (1-r)x1+rx2
, クラスを (1-r)t1+rt2
として学習を行う。
(なぜうまく行ったか)
CNNは内部表現として画像をwaveformでも扱っているため, 音声識別におけるmixinと同様に良い作用を及ぼしたと考えられる。
(元論文3.2節 ※この辺だいぶ理解が怪しいです)
ポスターセッション
富士通, デンソー, Mathworks, Brainpad, ABEJAあたりを聞きに行きました。
ABEJAのmachine learningのモデルを管理するプラットフォームはなかなか良さそうでした。公演ではDeep押しでしたがその他のモデルも管理できる模様
その他
- 人多すぎて疲れました。Deeplearningでいい感じに動線管理してほしい。。。
- ハードよりの方の話が多かったので新鮮でした。
- NVIDIA Carかっこいい