{"id":382,"date":"2013-07-09T18:10:49","date_gmt":"2013-07-09T09:10:49","guid":{"rendered":"https:\/\/blog.id774.net\/entry\/?p=382"},"modified":"2014-02-23T22:02:15","modified_gmt":"2014-02-23T13:02:15","slug":"%e7%b5%b1%e8%a8%88%e5%ad%a6%e3%81%ab%e9%96%a2%e9%80%a3%e3%81%97%e3%81%9f%e3%83%91%e3%83%83%e3%82%b1%e3%83%bc%e3%82%b8%e3%82%92-2-%e3%81%a4%e4%bd%9c%e3%81%a3%e3%81%9f","status":"publish","type":"post","link":"https:\/\/blog.id774.net\/entry\/2013\/07\/09\/382\/","title":{"rendered":"\u7d71\u8a08\u5b66\u306b\u95a2\u9023\u3057\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u3092 2 \u3064\u4f5c\u3063\u305f"},"content":{"rendered":"<p>\u81ea\u5206\u304c\u5229\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u3063\u305f\u306e\u3067 ruby \u3067\u5b9f\u88c5\u3055\u308c\u305f<a href=\"http:\/\/ja.wikipedia.org\/wiki\/%E5%8D%98%E7%B4%94%E3%83%99%E3%82%A4%E3%82%BA%E5%88%86%E9%A1%9E%E5%99%A8\">\u30ca\u30a4\u30fc\u30d6\u30d9\u30a4\u30ba\u5206\u985e\u5668<\/a>\u304a\u3088\u3073 <a href=\"http:\/\/ibisforest.org\/index.php?k-means%E6%B3%95\">K \u5e73\u5747\u6cd5\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0<\/a>\u306e\u305f\u3081\u306e gem \u30d1\u30c3\u30b1\u30fc\u30b8\u3092<a href=\"https:\/\/twitter.com\/twitt\/status\/354517031896354817\">\u30ea\u30ea\u30fc\u30b9\u3057\u305f<\/a>\u3002<\/p>\n<p>\u3044\u3064\u3082\u901a\u308a gem install \u30b3\u30de\u30f3\u30c9\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u308b\u3002<\/p>\n<div class=\"codecolorer-container text geshi\" style=\"overflow:auto;white-space:nowrap;width:1000px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/><\/div><\/td><td><div class=\"text codecolorer\" style=\"white-space:nowrap\">gem install naivebayes<br \/>\ngem install kmeans<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p><a href=\"http:\/\/rubyforge.org\/forum\/forum.php?forum_id=41559\">NaiveBayes<\/a><br \/>\n<a href=\"https:\/\/rubygems.org\/gems\/naivebayes\">https:\/\/rubygems.org\/gems\/naivebayes<\/a><\/p>\n<p><a href=\"http:\/\/rubyforge.org\/forum\/forum.php?forum_id=41560\">K-means clustering<\/a><br \/>\n<a href=\"https:\/\/rubygems.org\/gems\/kmeans\">https:\/\/rubygems.org\/gems\/kmeans<br \/>\n<\/a><\/p>\n<p>\u4f7f\u3044\u65b9\u306f\u4e0a\u304b\u3089\u305f\u3069\u308c\u308b\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3084\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u3092\u898b\u3066\u306d\u3068\u3044\u3046\u611f\u3058\u306a\u306e\u3067\u3059\u304c\u3001\u305b\u3063\u304b\u304f\u306a\u306e\u3067\u66f8\u304f\u3068\u3053\u3093\u306a\u611f\u3058\u306b\u306a\u308b\u3002<\/p>\n<div class=\"codecolorer-container text geshi\" style=\"overflow:auto;white-space:nowrap;width:1000px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/>4<br \/>5<br \/>6<br \/>7<br \/>8<br \/>9<br \/>10<br \/>11<br \/>12<br \/>13<br \/>14<br \/>15<br \/>16<br \/>17<br \/>18<br \/>19<br \/>20<br \/>21<br \/>22<br \/>23<br \/>24<br \/>25<br \/>26<br \/><\/div><\/td><td><div class=\"text codecolorer\" style=\"white-space:nowrap\">require 'naivebayes'<br \/>\n<br \/>\n# \u591a\u5909\u6570\u30d9\u30eb\u30cc\u30fc\u30a4\u30e2\u30c7\u30eb<br \/>\nputs &quot;--- The Bernoulli model ---&quot;<br \/>\nclassifier = NaiveBayes::Classifier.new(:model =&gt; &quot;berounoulli&quot;)<br \/>\n<br \/>\n# \u5206\u985e\u5668\u3092\u8a13\u7df4\u3059\u308b<br \/>\nclassifier.train(&quot;positive&quot;, {&quot;aaa&quot; =&gt; 0, &quot;bbb&quot; =&gt; 1})<br \/>\nclassifier.train(&quot;negative&quot;, {&quot;ccc&quot; =&gt; 2, &quot;ddd&quot; =&gt; 3})<br \/>\nresult = classifier.classify({&quot;aaa&quot; =&gt; 1, &quot;bbb&quot; =&gt; 1})<br \/>\n<br \/>\n# \u30dd\u30b8\u30c6\u30a3\u30d6\u3068\u5224\u5b9a\u3055\u308c\u308b<br \/>\np result # =&gt; {&quot;positive&quot; =&gt; 0.8767123287671234,&quot;negative&quot; =&gt; 0.12328767123287669}<br \/>\n<br \/>\n# \u591a\u9805\u5206\u5e03\u30e2\u30c7\u30eb<br \/>\nputs &quot;--- Relation to multinomial unigram language model ---&quot;<br \/>\n<br \/>\nclassifier = NaiveBayes::Classifier.new(:model =&gt; &quot;multinomial&quot;)<br \/>\n<br \/>\n# \u5206\u985e\u5668\u3092\u8a13\u7df4\u3059\u308b<br \/>\nclassifier.train(&quot;positive&quot;, {&quot;aaa&quot; =&gt; 0, &quot;bbb&quot; =&gt; 1})<br \/>\nclassifier.train(&quot;negative&quot;, {&quot;ccc&quot; =&gt; 2, &quot;ddd&quot; =&gt; 3})<br \/>\nresult = classifier.classify({&quot;aaa&quot; =&gt; 1, &quot;bbb&quot; =&gt; 1})<br \/>\n<br \/>\n# \u30dd\u30b8\u30c6\u30a3\u30d6\u3068\u5224\u5b9a\u3055\u308c\u308b<br \/>\np result # =&gt; {&quot;positive&quot; =&gt; 0.9411764705882353,&quot;negative&quot; =&gt; 0.05882352941176469}<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p><a href=\"http:\/\/d.hatena.ne.jp\/jewel12\/20101221\/p1\">\u591a\u5909\u6570\u30d9\u30eb\u30cc\u30fc\u30a4\u30e2\u30c7\u30eb<\/a>\u3068<a href=\"http:\/\/ja.wikipedia.org\/wiki\/%E5%A4%9A%E9%A0%85%E5%88%86%E5%B8%83\">\u591a\u9805\u5206\u5e03\u30e2\u30c7\u30eb<\/a>\u306e\u9055\u3044\u306f\u6559\u79d1\u66f8\u3084\u8ad6\u6587\u306a\u3069\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div class=\"codecolorer-container text geshi\" style=\"overflow:auto;white-space:nowrap;width:1000px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/>4<br \/>5<br \/>6<br \/>7<br \/>8<br \/>9<br \/>10<br \/>11<br \/>12<br \/>13<br \/>14<br \/>15<br \/>16<br \/>17<br \/>18<br \/>19<br \/>20<br \/>21<br \/>22<br \/><\/div><\/td><td><div class=\"text codecolorer\" style=\"white-space:nowrap\">require 'kmeans\/pair'<br \/>\nrequire 'kmeans\/pearson'<br \/>\nrequire 'kmeans\/cluster'<br \/>\n<br \/>\n# \u30cf\u30c3\u30b7\u30e5\u306e\u5206\u5e03\u304b\u3089\u30d4\u30a2\u30bd\u30f3\u76f8\u95a2\u4fc2\u6570\u306b\u3088\u308a\u8ddd\u96e2\u3092\u6c7a\u5b9a<br \/>\nuniform_hash = {<br \/>\n&quot;test01&quot;=&gt; {&quot;hoge&quot;=&gt;0, &quot;fuga&quot;=&gt;1, &quot;piyo&quot;=&gt;0 },<br \/>\n&quot;test02&quot;=&gt; {&quot;hoge&quot;=&gt;2, &quot;fuga&quot;=&gt;1, &quot;piyo&quot;=&gt;3 },<br \/>\n&quot;test03&quot;=&gt; {&quot;hoge&quot;=&gt;3, &quot;fuga&quot;=&gt;0, &quot;piyo&quot;=&gt;1 },<br \/>\n&quot;test04&quot;=&gt; {&quot;hoge&quot;=&gt;0, &quot;fuga&quot;=&gt;2, &quot;piyo&quot;=&gt;0 },<br \/>\n&quot;test05&quot;=&gt; {&quot;hoge&quot;=&gt;4, &quot;fuga&quot;=&gt;2, &quot;piyo&quot;=&gt;3 },<br \/>\n&quot;test06&quot;=&gt; {&quot;hoge&quot;=&gt;3, &quot;fuga&quot;=&gt;1, &quot;piyo&quot;=&gt;1 }}<br \/>\n<br \/>\n# \u5206\u5272\u3059\u308b\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u6570\u3092 centroid \u3067\u6307\u5b9a<br \/>\nresult = Kmeans::Cluster.new(uniform_hash, {<br \/>\n&nbsp; :centroids =&gt; 5,<br \/>\n&nbsp; :loop_max =&gt; 10<br \/>\n})<br \/>\nresult.make_cluster<br \/>\n<br \/>\n# \u7d50\u679c\u306f\u5b9f\u884c\u3054\u3068\u306b\u7570\u306a\u308b<br \/>\np result.cluster.values #=&gt; [[&quot;test01&quot;, &quot;test04&quot;], [&quot;test02&quot;], [&quot;test03&quot;, &quot;test05&quot;], [&quot;test06&quot;], []]<\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>\u4eca\u306e\u3068\u3053\u308d\u96c6\u5408\u9593\u306e\u8ddd\u96e2\u7b97\u51fa\u306b\u306f<a href=\"http:\/\/www.weblio.jp\/content\/%E3%83%94%E3%82%A2%E3%82%BD%E3%83%B3%E3%81%AE%E7%A9%8D%E7%8E%87%E7%9B%B8%E9%96%A2%E4%BF%82%E6%95%B0\">\u30d4\u30a2\u30bd\u30f3\u76f8\u95a2\u4fc2\u6570<\/a>\u3092\u5229\u7528\u3057\u3066\u3044\u308b\u3002\u305d\u306e\u3046\u3061<a href=\"http:\/\/ja.wikipedia.org\/wiki\/%E3%83%9E%E3%83%B3%E3%83%8F%E3%83%83%E3%82%BF%E3%83%B3%E8%B7%9D%E9%9B%A2\">\u30de\u30f3\u30cf\u30c3\u30bf\u30f3\u8ddd\u96e2<\/a>\u306a\u3069\u3067\u3082\u6c42\u3081\u3089\u308c\u308b\u3088\u3046\u306b\u3059\u308b\u304b\u3082\u3057\u308c\u306a\u3044\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u81ea\u5206\u304c\u5229\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u3063\u305f\u306e\u3067 ruby \u3067\u5b9f\u88c5\u3055\u308c\u305f\u30ca\u30a4\u30fc\u30d6\u30d9\u30a4\u30ba\u5206\u985e\u5668\u304a\u3088\u3073 K \u5e73\u5747\u6cd5\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0\u306e\u305f\u3081\u306e gem \u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30ea\u30ea\u30fc\u30b9\u3057\u305f\u3002 \u3044\u3064\u3082\u901a\u308a gem install \u30b3\u30de\u30f3\u30c9\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u308b\u3002  &#8230; <a title=\"\u7d71\u8a08\u5b66\u306b\u95a2\u9023\u3057\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u3092 2 \u3064\u4f5c\u3063\u305f\" class=\"read-more\" href=\"https:\/\/blog.id774.net\/entry\/2013\/07\/09\/382\/\" aria-label=\"\u7d71\u8a08\u5b66\u306b\u95a2\u9023\u3057\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u3092 2 \u3064\u4f5c\u3063\u305f \u306b\u3064\u3044\u3066\u3055\u3089\u306b\u8aad\u3080\">\u7d9a\u304d\u3092\u8aad\u3080<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[],"class_list":["post-382","post","type-post","status-publish","format-standard","hentry","category-diary"],"_links":{"self":[{"href":"https:\/\/blog.id774.net\/entry\/wp-json\/wp\/v2\/posts\/382","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.id774.net\/entry\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.id774.net\/entry\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.id774.net\/entry\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.id774.net\/entry\/wp-json\/wp\/v2\/comments?post=382"}],"version-history":[{"count":0,"href":"https:\/\/blog.id774.net\/entry\/wp-json\/wp\/v2\/posts\/382\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.id774.net\/entry\/wp-json\/wp\/v2\/media?parent=382"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.id774.net\/entry\/wp-json\/wp\/v2\/categories?post=382"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.id774.net\/entry\/wp-json\/wp\/v2\/tags?post=382"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}