検索エンジンを作る 2: 実践!インデクシング

集合知プログラミング作者: Toby Segaran,當山仁健,鴨澤眞夫出版社/メーカー: オライリージャパン発売日: 2008/07/25メディア: 大型本購入: 91人 クリック: 2,220回この商品を含むブログ (277件) を見る とりあえず前回の続きです。実際に手を動かして検索エ…

検索エンジンを作る

「集合知プログラミング」の第四章はみんな大好き検索エンジンの話です。テンション上がりますね!! 集合知プログラミング作者: Toby Segaran,當山仁健,鴨澤眞夫出版社/メーカー: オライリージャパン発売日: 2008/07/25メディア: 大型本購入: 91人 クリック: …

はてなブックマークで階層的クラスタリングしてみた

前回、階層的クラスタリングの手法について解説した訳ですが、手法だけ解説するのも手抜き感がただよってたので、実際に僕のはてなブックマーク50個に対してやってみました。以下がその結果です。基本的には、近い位置にあるヤツが似たグループって扱いにな…

クラスタリング手法について

どうもこんばんは、south37です。最近は「集合知プログラミング」を読み進めています。前回までは第二章の「協調フィルタリングによる推薦」について説明をしていた訳ですが、今回からは第三章の「クラスタリング」について説明をしていきたいと思います。 …

協調フィルタリングによるソーシャルブックマークの推薦 [実践編]

こんばんは、south37です。今回は、「協調フィルタリング」という手法で僕に最適化されたブックマークを調べてみました。まあ、前回の続きですね。 やった事 10万件のブックマークの中から、僕のブックマークした50件のサイトに最も近いサイトを調べてランキ…

協調フィルタリングによるアイテムの推薦

こんばんは、south37です。前回のブログではユーザー同士の類似度を見積もる方法について考えました。距離空間を使う方法、相関関数を使う方法等が存在し、はてなブックマークを利用するユーザ同士の比較ではjaccard相関関数が悪く無い値を与える事が分かり…

集合知プログラミング読み始めました

こんばんは、south37です。最近、O'Reillyの「集合知プログラミング」を読み始めました。 まだ本当に読み始めなんですが、なかなか面白いです。最初に取り上げられていたのは、「推薦」のお話でした。 推薦 「推薦」の方法として、「協調フィルタリング」と…

do構文とMonad

どうもこんばんは、south37です!今日は前回の予告通り、do構文とMonadの関係について見て行きたいと思います!! do構文 さて、do構文とは何だったか覚えているでしょうか? 確か、以前はIOの文脈で do構文 を紹介したと思います。 main = do putStrLn "Hello…

Haskellにおけるモナド

こんばんは、south37です。 前回は「圏論」におけるモナドについて触れた訳ですが、今回はいよいよモナドがどういう風にHaskell上で表現されているかに迫ってみたいと思います。 Haskell における Monad 自己関手であるモナド 前回、「モナド」は「自己関手…

モナド、あるいは自己関手の圏におけるモノイド対象について

どうもこんばんは、south37です。 今日は久々にHaskellネタをぶっ込んで行きたいと思います。題材は、Haskellを知っていれば嫌でもその名を耳にするであろう「モナド」についてです。 そもそもモナドって何なんですか? はい、何なんでしょう?ここで、フィ…

第一回焼き肉大会は4/6(日)に行われました。

こんばんは、south37です。前回、「次はHaskellのdo構文とモナドの関係について説明します!」とか言いましたが、すまんありゃ嘘だった。諸事情により、今回は「このブログでは何を書くの?」みたいな話をまとめる事にしました。 何で嘘付いたの? 諸事情です…

HaskellでIO!

どうもこんばんは、south37です。今日も前回に引き続き、Haskellにおいてどうやって入出力を実現しているのか、見ていきたいと思います。 do構文を使おう さて、一度前回のおさらいをしておきましょう。前回は、Hello Worldを出力するプログラムを作ったので…

HaskellでHello World!

こんばんは、south37です! 最近はHaskellネタばっか書いてる訳ですが、ここでいよいよ「Hello World」をしてみたいと思います!待ちに待ったHello Worldですよ!楽しみですね!! ...と喜ぶのは構わないですが、ここで一つ疑問が出てきます。他の言語なら真…

Functor(関手)ってなんですか?

どうもこんばんは、south37です。今日も引き続きHaskellネタでいこうと思います。Functorって概念を知ったので、ちょろっとまとめてみたいと思います。 そもそも、Functorってなんですか? さて、Functorって聞いて、ピンと来ますか?

Haskellの型について

こんばんは、south37です。今日はHaskellの型についてお話ししたいと思います。 強い静的型付け言語、Haskell

Haskellでの関数定義

こんばんは、south37です。今日はHaskellで関数を定義する時に使える便利な構文について紹介して行きたいと思います。ちょっと時間がないので巻き気味になっちゃいますが、許してください!!!

Scala勉強会に行ってきた

こんばんは、south37です。今日は芸者東京エンターテインメントさんが主催するScala勉強会に行ってきました。いろいろなところでScalaの名前を聞いて興味を持っていたところにアカリクさんからイベントの案内が来て、ちょうどいい機会だと思いふらっと行って…

Haskell書いてますか?

皆さん、Haskell書いてますか? 関数型言語として名を馳せるHaskell、書いてみない訳がありませんよね! って事で、今回はHaskellについてちょろっと勉強してみたいと思います。 参考にするのは、すごいHaskellたのしく学ぼう!、通称「すごいH本」と呼ばれる…

JavaScriptにおける変数巻き上げ(ホイスティング)

JavaScriptには関数スコープしか無い為、気をつけないと意図しないで既存の変数を書き換えちゃうかもって話です。

JavaScriptでスタックオーバーフローを起こさない方法

結論を先に述べると、setTimeOutを使って、処理をイベントキューにぶち込んでやれば良い。

JavaScriptの反復処理(イテレーション)について

こんばんは、south37です。 最近、JavaScriptについて知れば知る程、ダメなところが目につく様になってきました。 もちろん良いところもいっぱいあって、関数が第一級オブジェクトである事や、シングルスレッドのイベントループという形式と非同期APIによっ…

JavaScriptの関数定義

こんばんは、south37です。 最近はEffective JavaScriptを読んでるのですが、知らなかった事がポロポロ出てくるので、とても勉強になっています。これからはちょいちょい、そーやって勉強した事をまとめていけたらいいなと思います。 って事で、今日は関数定…

JavaScriptにおける暗黙の型変換

こんばんは、south37です。 前回までの流れをぶったぎって、今回はJavaScriptの話をしたいと思います。JavaSciptの悪名高い機能の一つ、暗黙の型変換についてです。

Rubyによるデザインパターン ~ その3

Rubyによるデザインパターンの内容をまとめようって試みですが、初っ端の10ページくらいをまとめて1つの記事にしちゃって、流石に楽をし過ぎた気がするのでもうちょっと書いてみます。原則は前回まとめたので、今回は実際のパターンについて説明していきたい…

Rubyによるデザインパターン ~ その2

こんにちは、south37です。 今日は、ずいぶん前にを書いて以来長らく放置していた「Rubyによるデザインパターン」の続きを書きたいと思います。ラス・オルセンさんが書いた同名タイトルの本があるのですが、この内容をまとめる感じでいきます。ちなみに、む…

rails3.2でtwitter-bootstrap

こんばんは、south37です。 未だに風邪気味が治りません。別に熱は無いので活動出来るのですが、喉がずっと痛いのが地味につらいです。ここまで風邪に粘られると思ってなかったのでビビってます。さて、今日は長らく放置してたYouTubeの動画をコメント付きで…

angularJSで遊んでみる

こんばんは、最近風邪気味でちょっぴり辛い思いをしているsouth37です。 寒い格好は良く無いですね!今日は、前回ちょろっと紹介したangularJSを使って適当なアプリを作って遊んでみたいと思います。何を作るかはノープランですが、何とかなるでしょう。

AngularJSが便利と聞いて

こんばんは、south37です。前回までbackbone.jsについて勉強していた訳ですが、最近のトレンドは圧倒的にAngular.jsらしいですね。参考データって事で、今回はAngular.jsについて学んでいこうと思います。

Backbone入門 その4

おはようございます、south37です。 今日はBackbone入門最終回です。 最後は、Routerについて勉強したいと思います。例によって、この連載を参考にしています。

Backbone.js入門 その3

こんばんは、south37です。 今日も前回に引き続きBackbone.jsです。