渋谷駅前で働くデータサイエンティストのブログ

元祖「六本木で働くデータサイエンティスト」です / 道玄坂→銀座→東京→六本木→渋谷駅前

機械学習の説明可能性(解釈性)という迷宮

ちょっと前に、しょうもないことを某所で放言したら思いの外拡散されてしまいました。

これ自体は与太話なので実際どうでも良い*1のですが、最近色々な研究や技術開発の進展はたまた実務家による考察などを見ていて、「機械学習の説明可能性(解釈性)というのは思った以上に複雑な迷宮だ」と感じることがままあったのでした。


ということで、今回の記事では僕のサーベイの範囲でザッと見て目についた資料などを超絶大雑把にリストアップした上で、主に実務における説明可能性とは何かという話題について個人的に考えていることを書き出してみたいと思います。なお、このまとめはあくまでも「ビジネス実務における機械学習の説明可能性(解釈性)」という話題を念頭に置いたものであり、学術的な議論や況してや学術発表における引用に耐えるような代物ではありませんので、伏してご了承くださいm(_ _)m

*1:どうでも良くない界隈もありそうだが

続きを読む

Mac OSでR 3.6.1にアップデートしたらRStanが走らなくなったので、復旧させた話

この記事は完全に備忘録です。必要最低限の情報しか記されていませんので悪しからずご了承ください。

f:id:TJO:20191207154605p:plain

色々事情があってつい最近Rを3.6.1にアップデートして、いつも通りパッケージをインストールし直していたのですが、こういう時に毎回コケるのはRStanと相場が決まっているので、これまたいつも通りRStanをインストールした後でお馴染みの8schoolsでテストしてみたのでした。そしたら、以下のようなエラーメッセージが*1

> library(rstan)
> schools_dat <- list(J = 8, 
+                     y = c(28,  8, -3,  7, -1,  1, 18, 12),
+                     sigma = c(15, 10, 16, 11,  9, 11, 10, 18))
> fit <- stan(file = '8schools.stan', data = schools_dat)
Error in compileCode(f, code, language = language, verbose = verbose) : 
  Compilation ERROR, function(s)/method(s) not created!
...
Error in sink(type = "output") : invalid connection

こういう、RStanのインストールが通った後にもかかわらずcompileCode系のエラーが出る時はClangに問題があることが多いので、Clangをインストールし直したんですがそれでも直らず。。。しばらく困っていたのですが、結局以下のissue commentの通りに対応したら解決しました。

  1. Xcode Command Line Toolsの最新バージョンをインストールする
  2. rstanを削除する
  3. Rセッションを再起動する
  4. StanHeaders, rstanの順に再インストールする

Mac OSだとXcodeがネックになることが多いんですよね。。。ということで今後もR側のバージョンが変わった時はXcodeのアップデートも忘れずにやっておこうと思います。

*1:正確にはエラーログを取っておかなかったので下記にリンクしたissueから共通部分をコピーしてきただけですが

平均への回帰:愚かな誤謬を惹き起こす美しきrandomness

元々はQuoraでこういうアンサーを書いたのがきっかけです。

本文中では「厳密性を一切考慮しない平易な説明で良ければ(※僕自身も数理統計学的な意味での確率論に関してはど素人なのでそもそも厳密な説明はできませんが)」と断り書きを入れましたが、厳密でないどころか間違っていたらそれはそれで悲しいので、詳しい方*1からツッコミをいただくべくブログ記事にもう少し細かく書いてみようかと思ったのでした。


ということで、Quoraアンサーの補足説明も兼ねて自分なりの理解を以下に書いておきます。誤っている点や不足している点などあれば、何かしらの形でツッコミを入れて下さると有難いですm(_ _)m

*1:測度論的確率論や確率過程の専門家の皆様方

続きを読む