{"action":"opened","issue":{"url":"https://api.github.com/repos/naoa/groonga-minhash/issues/24","repository_url":"https://api.github.com/repos/naoa/groonga-minhash","labels_url":"https://api.github.com/repos/naoa/groonga-minhash/issues/24/labels{/name}","comments_url":"https://api.github.com/repos/naoa/groonga-minhash/issues/24/comments","events_url":"https://api.github.com/repos/naoa/groonga-minhash/issues/24/events","html_url":"https://github.com/naoa/groonga-minhash/issues/24","id":166091307,"number":24,"title":"ナイーブベイズ分類器","user":{"login":"naoa","id":5455147,"avatar_url":"https://avatars.githubusercontent.com/u/5455147?v=3","gravatar_id":"","url":"https://api.github.com/users/naoa","html_url":"https://github.com/naoa","followers_url":"https://api.github.com/users/naoa/followers","following_url":"https://api.github.com/users/naoa/following{/other_user}","gists_url":"https://api.github.com/users/naoa/gists{/gist_id}","starred_url":"https://api.github.com/users/naoa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naoa/subscriptions","organizations_url":"https://api.github.com/users/naoa/orgs","repos_url":"https://api.github.com/users/naoa/repos","events_url":"https://api.github.com/users/naoa/events{/privacy}","received_events_url":"https://api.github.com/users/naoa/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-07-18T13:17:49Z","updated_at":"2016-07-18T13:17:49Z","closed_at":null,"body":"doc -> category を推定するナイーブベイズ分類器を作ってみる\r\n\r\n事前に必要なもの\r\n* 全文書数: grn_table_sizeで求められる\r\n* 全単語 : lexiconを引くことにより得られる\r\n* あるカテゴリーの全文書での出現数: ii_estimated_sizeが使えそう\r\n* あるカテゴリーに含まれるあるwordの出現数\r\n* あるカテゴリーに含まれる全wordの出現数の総和\r\n\r\n## 事前学習\r\n1. カテゴリーを参照型のベクターカラムとし、カテゴリテーブルの別カラムに文書のLexiconに対する参照型重みベクターをつくる。あるカテゴリーでの文書のワードの出現数を、カテゴリーテーブルのキー(id)で検索->table_groupで求めて重み付きベクターにして保存する。\r\n2. カテゴリーテーブルの別カラムに、あるカテゴリーのワード総数も保存する。groupの総和\r\n3. ワードからあるカテゴリでの出現数を高速に引くために、カテゴリーテーブルの重みベクターに対し、文書のLexiconからの転置索引を作る。\r\n\r\n### 分類\r\n1. 入力文書をトークナイズしてword一覧を取得  \r\n2. カテゴリーテーブルから全カテゴリー、もしくはword一覧をOR検索してword一覧が含まれるカテゴリー群（どっちがコストが高いか）を求める  \r\nカテゴリーごとに  \r\n3.  P(cat) = log(あるカテゴリーの全文書中の出現数 / 全文書数)  \r\n  入力文書のwordごとに、  \r\n  4.  P(word|cat) += log((あるカテゴリーに含まれるあるwordの出現数 + 1) / (あるカテゴリーに含まれる全wordの出現数の総和 + 総単語数))  \r\n5. 求めたカテゴリーのスコアの中から値が高いものが最も適合度が高い"}}
{"actor":{"display_login":"naoa"}}