BP Study #14に行ってきた
今回は28人でpython系コミュニティの人たちもきてたみたい。
まずは、感想。
集合知(松風さん)
オライリーの集合知プログラミング本について。
実際にWebアプリを作ってみたよって話。
なんとScalaとliftで実装したそうだ。
懇親会でLiftについて感想聞いてみたけど、やっぱりわかりづらいって。
そりゃそうだ。
集合知プログラミングでは、データをクラスタリングしたり、特徴を抽出したりと
面白いアルゴリズムがあるので、本を買って読んでみようと思う。
集合知プログラミング
posted with amazlet at 08.11.01
おすすめ度の平均:
応用しやすいアルゴリズムDjangoの紹介とAdminカスタマイズ (id:tokibito id:nullpobug)
Djangoについての紹介。
DjangoのAdminサイトのカスタマイズについての方法。
実際にカスタマイズする際には参考になりそうなないようだった。
やっぱり今はpythonがアツいのか。
懇親会
にんにく屋という店で。
にんにくメインの料理で、かなりおいしかった。
っていうか、BP Studyの懇親会で行くお店はどこもおいしい。
密かに楽しみにしてます。
集合知プログラミングとか遺伝的PGとかと関数型言語の話で盛り上がった。
あと、MoonGiftの方とお会いできた。
今度ランチに行くことに。楽しみだ。
元気な人は2次会に行ったみたいだけど、昨日はさすがに電車で帰らないと嫁に怒られるので、終電で帰ってきた。
でも楽しかった。
以下はメモ。
■集合知(松風さん) オライリーの集合知プログラミング 集合知とは? ようはみんなの知識をまとめたもの サイト 投票型 食べログ、ラーメンデータベース、4travel.jp, 解析型 kizasi,NewsGraphy 集合知プログラミング blogの内容を解析してグルーピング、特徴をまとめる Webアプリ作ってみるお! キーワードを入れると関連するサイトを自動で作る Scalaで実装。なんとLift! →Djangoの方が楽に出来たかも? →でも楽しいお! サーバー環境はslicehost EC2は初期設定めんどそう →2分くらいで →インスタンスを停止するとイメージが消える グループを見つけ出す データクラスタリング googleのblog検索RSSを利用してグループ分け 形態素解析で名詞を抽出。Mecabのjava binding Yahooは一日5万アクセスって制限ある 単語の頻度表を作成 K平均法によるクラスタリング RSS Auto Discoveryでblog検索からblogのFeedを取得 RSSの解析はscalaのxmlリテラルで K平均法クラスタリング ビアソン相関 2つの確率変数間の相関を-1〜1で表す →2つのデータ列をグラフにし、プロットした点の近似直線が 傾き1に近いほど似ている 似ていない場合は傾きが0に近い →AmazonのRecomendationなど 重心の数は? 重心がカテゴリ数 グルーピングされたクラスタの特徴は? →なんか分析するアルゴリズムがある 二次元の図で見せるとわかりやすいかも 見せ方重量 データの特徴をつかむ Blogのエントリ1個1個を要素として エントリ単位で単語頻度表を作る →表を行列にして →非負値行列印紙分解(NMF)すると特徴のデータが抽出できる →oracle data miningとかでもやってるぽい →2つの行列に分解する →重みの行列 × 特徴の行列 の形にする →特徴の行列 単語がそれぞれの特徴に対してどのくらい重要度をもつかの表 →重みの行列 特徴に対して記事がどのくらいマッチするか表す →(何らかのスコアリングに使えそうなアルゴリズム) 遺伝的プログラミング →機械学習の技術 →大量のプログラムの集団を生成して、交配などさせる Box2DAS3 →物理法則を勝手にやってくれる amCharts →グラフとか表示してくれる ■Djangoの紹介とAdminカスタマイズ (id:tokibito id:nullpobug) Djangoの紹介 DjangoAdmin 標準で管理サイトのアプリがついてる →ちょっと物足りないのでカスタマイズ ModelAdminを登録することでCRUDをカスタマイズ →ModelAdmin.Inlinesで関連先も同時に編集 →ListFilter テンプレートのカスタマイズ AdminSite.index_templteや.login_tempate、.app_templateにテンプレートのパスを設定すると優先して見に行く templates/adminにおいておく app_directoriesに優先して使用させたいTEMPLATE_LOADERを指定する メディアファイル(CSS,JavaScript) ModelAdmin.Media {% block extrahead %}に書く Viewをカスタマイズ AdminSite/ModelAdminを軽装して URLバンドリングのメソッドをOverride urlresolverを使う?(未確認) 別アプリケーションとしてViewにパーミッション設定する google codeにDjango Profiler (Templateの継承を指定するときにXPATHとかで指定できたら便利なのになぁ)