機械学習

Hacker Tackleで「はてなにおける機械学習の取り組み」について登壇しました

LINE福岡で行なわれたHacker Tackleにて登壇してきました。 発表内容は(1)機械学習を使ったサービス開発の難しい点について整理し(2)その難しさを乗り越えていくためにはてながどのような取り組みを行なっているかについてでした。一口に機械学習を使ったサ…

異常検知ナイトでLT登壇しました

機械学習の中でもマイナーなテーマであろう異常検知がテーマの勉強会、異常検知ナイトというイベントでLTの登壇をしてきました。マイナーテーマなのに300人以上が集まる東京怖い。 3ページしかないですが、発表資料も置いておきます(LTのレギュレーションで3…

Rettyにおける推薦文からの見出し抽出の論文を読んだ

OR学会の自然言語処理と数理モデルの特集で、はてなと同じくC向けのサービスを運営しているRettyさんの論文が出ていたので、週末に論文を読みました。方法論としてはシンプルだけど、サービスへの貢献もなかなかありそうだなーと思いながら眺めました。 CiNi…

マージン最大化近傍法の読書メモ

社内で異常検知本の輪講を進めています。今回は近傍法による異常検知。一年くらいに一人で読んだときのメモはこちら。慣れない人は途中で出てくる劣モジュラの概念や勾配の導出が大変かなと思ったので、メモ書きしておきます。 劣勾配/劣勾配法 目的関数が連…

Multi-task Multi-modal Models for Collective Anomaly Detectionを読んだ

勤労に感謝しながら読みました(論文, スライド)。いい論文をありがとうございます。 概要 基本的にはSparse Gaussian Markov Random Field Mixtures for Anomaly Detection(ICDM 2016)の素直な拡張だと思います。式は少しゴツいですが、拡張を順番に追ってい…

Anomaly Detection in Streams with Extreme Value Theoryを読んだ

Anomaly Detection in Streams with Extreme Value Theory Amossys-team/SPOT: SPOT algorithm implementation (with variants) KDD2017の異常検知の論文です。異常検知を行なうとき、何らかの閾値を設定しますがこの閾値の決定は難しいことが多いです(そし…

IBIS2017の聴講ログ

今年で20周年のIBIS2017に仕事で聴講参加しました。IBISは意外と初参加。とにかく大量の発表があり、全部書いてると膨大になってしまうので、自分のアンテナに引っ掛かった研究についてのみログを残しておきます。問題設定やモチベーションを重点的にメモし…

Change Detection using Directional Statisticsを読んだ

方向データに対する変化点検出の論文を読んだところ、面白かったのでメモを残しておきます(論文、スライド)。IJCAI2016の論文です。 異常検知は重要な領域であるにも関わらず、まだまだ枯れていなくて論文読んでて面白いものが多いですね。 問題設定 確率分…

Sparse Gaussian Markov Random Field Mixtures for Anomaly Detectionを読んだ

異常検知の一環で外れ値検知をやっていると「どの事例が外れ値か分かるだけじゃなくて、どの次元がおかしくなったかも教えて欲しい。次元数が100とかあると、どの次元がおかしい動きをしているか人手で見るのは大変」というのをちらほら聞きます。Gaussian M…

go-active-learningを改良している話(Slackからのアノテーションをサポートなど)

以下の話の続きです、地味に続いています。自分が普段使うツールを改良していくのは楽しいですね。 自分で使ってみて、これは欲しいといったものを追加していってます。社内で紹介したところフィードバックをもらったので、それを踏まえてどうしていきたいか…

能動学習で効率的に教師データを作るツールをGoで書いた

みなさん、教師データ作ってますか?! 機械学習のツールも多くなり、データがあれば簡単に機械学習で問題を解ける環境が整ってきました。しかし、データ作成は重要ながらも未だに大変な作業です。最近、私もいくつかのドメインで教師データを作る機会があった…

Go言語にさらに入門するために係り受け解析器を書いた話

今年からGo言語に入門していますが、もう少し複雑なものをものを書いてみたいと思ったので、係り受け解析器を書きました。その過程で工夫したこと、苦労したことをまとめます。作ったものはこちら。 一人で作っているプロジェクトですが、100行以下の細かめ…

実タスクで機械学習を導入するまでの壁とその壁の突破方法

社内で機械学習の案件があった際に、機械学習の経験者しか担当できないと後々の引き継ぎで問題が起こりがちです。これを防ぐために、機械学習に興味があり、これまで機械学習を経験したことがないエンジニアにも担当できる体制を整えられることが望ましいで…

不定期ML&NLP報#4

最近の機械学習&自然言語処理に関する情報をまとめるコーナーです。前回はこちら。このエントリ忘れてるよというのがありましたら、たれこみフォームから教えてもらえるとうれしいです。 論文 ブログ/勉強会資料 ビジネス 学会/勉強会 NIPS読み会 Kaggle Tok…

不定期ML&NLP報#3

最近の機械学習&自然言語処理に関する情報をまとめるコーナーです。前回はこちら。このエントリ忘れてるよというのがありましたら、たれこみフォームから教えてもらえるとうれしいです。 論文 ブログ/勉強会資料 ビジネス 学会/勉強会 NIPS2016 NL研 coling2…

異常検知本の読書メモ Part 5(密度比推定による変化検出)

前回に引き続き、密度比を直接推定するコーナー。時系列の変化検出や多変数の依存関係の崩れを捉える構造変化検知の手法を密度比推定で解く。 変化検知問題とカルバックライブラー密度比推定法 変化検知問題は第9節で取り扱った。ある時点tを含む前後で分布…

異常検知本の読書メモ Part 4(密度比推定による異常検知)

前回扱った内容を密度比推定により直接的にかっこよく解く。 やりたいこと 正常であると分かっているデータを元に異常が含まれるかもしれないデータの中から異常な標本を見つけ出す 個々に外れ値検出するのではなく、テストデータ全体の確率分布も考える 全…

異常検知本の読書メモ Part 3(疎構造学習による異常検知)

前回の復習 前回のChaper 9では「単一の」「時系列データ」に対し、部分空間法を使った変化検出法を見た。 概要はこんな感じであった。 小さいwindow幅でデータを切って、ベクトルデータにする 過去側と現在側の2つに領域に分割 時刻tにおける過去側と現在側…

異常検知本の読書メモ Part 2(方向データの異常検知と部分空間法による変化検出)

方向データの異常検知 方向データの異常検知は前回スキップしていたところ。部分空間法による変化検出をするときに方向データに関する知識が必要になったので、戻ってきた。 方向データを扱う際にキーになる分布はフォンミーゼスフィッシャー分布。こんな分…

不定期ML&NLP報#2

最近の機械学習&自然言語処理に関する情報をまとめるコーナーです。今回は医療品設計やセキュリティなど、自分があまり知らなかった分野での機械学習適用事例が多く、勉強になるものが多かったです。前回はこちら。 このエントリ忘れてるよというのがありま…

不定期ML&NLP報#1

先日、社内で定期的に行なわれているフロントエンド会にお邪魔してきました(podcastが配信されています)。jser.infoというサイトを参照しながら雑談していたのですが、最近のフロントエンドの動向を知るという目的にはこのサイトなかなかよさそうでした。 機…

自然言語処理の深層学習において転移学習はうまく行くのか?

このエントリはDeep Learning Advent Calendar 2016 5日目のエントリです。EMNLP2016に出ていたHow Transferable are Neural Networks in NLP Applications?を読んだので、それについて書きます。 [1603.06111] How Transferable are Neural Networks in NLP…

異常検知本の読書メモ Part 1

異常検知本を最近読み進めていたので、自分が知らなくて新しく勉強になったところのみメモ。 ホテリングの法による異常検知 異常度はマハラノビス距離で与えることができる サンプル数Nが次元数Mより圧倒的に多い場合はは自由度M、スケール因子1のカイ二乗分…

Visualizing and Understanding Curriculum Learning for Long Short-Term Memory Networksを読んだ

Curriculum Learning(簡単なやつから学習して、難しいのは後のほうがうまく行きそう)の方法をLSTMで試してみた報告っぽい内容。要約は以下の通り。 One-Pass CurriculumとBaby Steps Curriculumの2種類があるけど、Baby Steps Curriculumのほうがお勧めでき…

Google機械翻訳の仕組み&できるようになったこと/まだ難しいことについて、社内の機械学習勉強会で説明します

社内の機械学習勉強会で最近話題になった機械学習関連のエントリを取り上げているのですが、ここ一ヶ月ではGoogle Neural Machine Translation(GNMT)がとても話題になっていました。GNMTで使われているEncoder-Decoderやattentionのような仕組みを直近で使う…

機械学習をプロダクトに入れる際に考える採用基準について

サービスに機械学習技術(例えばSVM)を入れる際に、「この機械学習技術は本番サービスに投入しても大丈夫なものか?」を考える基準がまとまっていると人に説明するときに便利だなとふと思ったのでまとめてみました。散々言われ尽くされている話だとは思います…

機械学習ランチ会を始めたので雑談用エントリを集めてくれるslack botを作りました

4行概要 最近社内で機械学習勉強会(ランチ会)をやっている 紹介するエントリを毎回頑張って探すのは大変 spreadsheet上で教師データを作り、機械学習モデルを学習、おすすめエントリをslackに投稿 砂場ができて便利! Google Spreadsheet上でみんなでわいわい…

実タスクで能動学習を試してみた

実タスクで簡単な能動学習を試してみました。結論としては、1200件で到達できる精度に400件程度のアノテーションでも到達でき、それによりアノテーションに要する時間をかなり削減できそうということが分かりました*1。今後、アノテーションを必要とする機械…

Precision/Recallのいずれかを重視したい場合にどのように事例を追加するか

当たり前の話かもしれないけど、自分は経験したことがなかったのでメモがてら書いてみる。絶対これで行けるというわけではないと思うが、ある程度一般性はあるんじゃないかと。 状況設定 機械学習の評価を考える際に複数の指標がトレードオフの関係にあると…

はてな社内の勉強会で構造学習について発表しました

先週末、はてな社内の勉強会で構造学習、特に実装が簡単な構造化パーセプトロンについて発表しました。発表資料と説明用にサンプルで書いたPerlの品詞タグ付けのコードへのリンクを張っておきます。 今日からできる構造学習(主に構造化パーセプトロンについ…