機械学習×プログラミング勉強会 vol.2 での発表資料です。 ベイズの何が嬉しいか、ノンパラベイズの何が嬉しいかを数式を使わず語ります。Read less
機械学習×プログラミング勉強会 vol.2 での発表資料です。 ベイズの何が嬉しいか、ノンパラベイズの何が嬉しいかを数式を使わず語ります。Read less
#isucon2 参戦記を私と @pandax381 とで交互に書くことになりました。 今日は私の視線で前半戦についてまとめます。 課題、襲来 isucon2 の課題が発表されました。今回の課題はチケット販売サイトらしいです。 スコア算出方法が (完売までの時間[ms] - 0.001*GET数 - 0.01*完売後の処理数) と発表されましたが、 課題とスコア算出方法だけでは今回のキーポイントがどこになるのかが判りません。 事前の打ち合わせ通り、 @pandax381 には負荷試験を実行してHTTP/TCPレベルでの観察をお願いし、 私はアプリケーションを実際に使ってみながらソースコードやDBのスキーマと見比べて、 アプリケーションの仕様を把握しました。 この時点で、 "/ticket/<ticketid>" というパスのHTMLが500KB程度あるのを見つけました。 1Gbpsのイーサ
CentOSなどrpmを使っているシステムで、欲しいツールのrpmが見つからない、使いたいツールのバージョンが古いときに、rpmbuildを使って望みのrpmを作成することが出来ます。 ウェブを探せば色々と情報はあるんですが、ざっとスタートするときに必要な流れをまとめて書いてみることにしました。 専用のビルド環境 専用の環境を準備た方が吉です。centXbuildXXみたいな名前でVMを作ってます。 cent4build32.tnmt.local cent5build64.tnmt.local とか。 パッケージの依存性もあるので、あまりサードパーティのyumリポジトリなどを追加しないか、実環境と同じリポジトリのみ有効にするとよいです。複数サービスがあったらそれごとにVMを作るのもありかと思います。 必要なパッケージ類のインストール rpmbulidに必要なパッケージ類をインストールします
Acroquest Technologyは2012年11月9日、分散処理フレームワークのHadoopや、Hadoop上に構築する分散データベースのHBaseの内部動作を可視化するソフトウエア「halook」をオープンソースソフトウエア(OSS)として公開すると発表した。halookでは、WebブラウザからHadoopで構築したクラスター間のデータの偏りや、クラスターのタスクなどを確認できる。 Hadoopの分散ファイルシステムでは、クラスターを構成するDataNodeにデータを分散させて保存する。各クラスター内に保持しているデータは、できるだけ均等に保つことが望ましい。各クラスターに保存されているデータ量に偏りがあると、データ量が大きいクラスターに処理が集中してしまい、サーバーの台数を増やしても処理能力がスケールしない可能性があるためだ。 halookの「HDFSDataDistribut
Fluentd meetup #3 #fluentd on Zusaar で 25分枠をいただいてお話してきました。 最初はLTどうですかとお声がけいただきましたが、メイントークの枠空いてるからそっちでもいいよとのことだったので、せっかくなのでやってみることにしたわけです。 Fluentdのコミュニティに発表者として参加出来て身に余る光栄でございます。古橋さんありがとうございました。 参加するよ! / Fluentd meetup #3 #fluentd URL #zusaar 2012-10-29 14:04:41 via Zusaar @studio3104 もしよかったら Fluentd meetup でLTしませんか!? ブログ拝見しました: URL 2012-10-29 14:32:44 via YoruFukurou to @studio3104 @frsyuki 古橋さんから
#isucon2をやりましたの話 - tagomorisのメモ置き場 これの続き。主に反省というか振り返りというかについて書きますよ。(誰かが次回っぽい何かをもしかしてやるかもしれないときのために!) 参加層について 今年はいろんな言語が使われたので大変よかったですね! 実際、告知をすればいいというものではなくて、各コミュニティの適切な層に届けるというのはなかなか難しい。告知から参加申し込み受付まではそう期間を空けられないし、参加者総数はそうそう増やせないし*1。 それでも参加層が広がるのは良いことだと思う。イベントとして好評なまま回数を重ねることが大事なんじゃないかな。誰がやるにしろ。 問題設定について 今回は(最終的に)トランザクションが問題になるものにしよう、そのために並列度はガツンと上げよう、というのは最初に決めていた。 が、実際には実装のめんどくささを意識してなかった。今にして思
「Twilio」(トゥイリオ)という企業(あるいはサービス)をご存知だろうか? 500 Startupsや Union Square Venturesなどの投資家から3400万ドルの資金を集め、サンフランシスコでいまもっとも注目されているスタートアップ企業の1つだ。 Twilioが手がけるのは、VoIP(Voice over Internet Protocol)の機能をWeb APIとして開発者向けに提供するクラウドサービス。Twilioのサービスに登録した開発者はREST方式のAPIを呼び出すことで、一般の固定電話や携帯電話に発信したり、かかってきた電話を着信したりできる。TwilioはAPIの利用料を開発者から徴収するビジネスモデルだ。 と、ここまでの説明だけではTwilioがなぜそこまで注目されているのか、分かりづらいかもしれない。正直なところ、この記事を書いている私も当初「おもしろ
魔術師本: (名詞) MITの入門コースで使う計算機科学の優れた教科書 ハル・エイブルソン, ジェリー・サスマン, ジュリー・サスマン共著(和田英一訳)「計算機プログラムの構造と解釈 第二版」(ピアソン・エデュケーション 2000年). 表紙の魔術師ゆえにそういわれる. LISP/Scheme世界の聖典のひとつ. まれに紫本としても知られている. ハッカー英語辞典 第2版(MITプレス 1993)より λλλ 計算機プログラムの構造と解釈 第二版 λλλ λλλ(Structure and Interpretation of Computer Programs Second Edition) λλλ λλλ に関連するホームページ λλλ λ 訳者跋文 λ 正誤表 λ 人名地名考 Ben Bitdiddle, Alyssa P. Hacker, Sl
Wizard Book n. Hal Abelson's, Jerry Sussman's and Julie Sussman's Structure and Interpretation of Computer Programs (MIT Press, 1984; ISBN 0-262-01077-1), an excellent computer science text used in introductory courses at MIT. So called because of the wizard on the jacket. One of the bibles of the LISP/Scheme world. Also, less commonly, known as the Purple Book. from The New Hacker's Dictionary, 2
ひげぽんさんの所をパクってテンプレートにして書いてみました。 練習問題をスキップしつつ、私も約半年でで読み終えました。とても楽しい日々を過ごすことができました。 SICPを読む過程で得たもの ・遅延評価とstream ・制約プログラミング、ロジックプログラミング、amb ・Emacs(Meadow)+gauche+Quackの組み合わせ便利 ・同じ事を表現するのに、抽象度を上げたり、下げたりできること。 ・手加減してあればLispのソースも追えるようになった。手加減していないのは駄目。 ・Lisp特有の、手続きを評価する→S式ができる→また評価する→S式ができる、という気持ち悪い再帰の存在。 ・SICP読み仲間ではないけどいろんなblogつながり。組み込みとFPGAだけでない、いろんな世界がある事をあらためて感じた。 SICPを読みはじめたときの動機を振り返る ・関数型言語について Lis
Heads-up: Dashing still works great, but is no longer maintained. Read up about it over here. You can also use the fork of the project. Dashing is a Sinatra based framework that lets you build beautiful dashboards. Check out a demo over here. Here's another one, optimized for 1080p screens. Key features: Use premade widgets, or fully create your own with scss, html, and coffeescript. Widgets harne
Fluentd meetup #3 #fluentd on Zusaar 開催されたので参加してきた。また td-agent に fluent-plugin-webhdfs がバンドルされるようになった後ということで、それについて話さないかと言われていたのでそういう話をひとつしてきた。 今回の会場はIIJさんの会議室。広くていいなあ。ありがとうございました! で、話の内容とか参加者の反応を見ていると、もうだいぶ普通に使われるツールになったのかなーという気がする。もうあまり面白ネタとか驚きが無い。LT枠も4枠は結局埋まらなかったみたいだし。 何か面白なプラグインを書いてネタに走る人とかそろそろ出てこないかなーw あとIIJの人の話す内容を聞いてて、書こうかと思いつつ放置しているプラグインとか改良を放置しているプラグインとかが脳内によみがえってきてまいった。すいませんすいません。pullreq
【MLB】すれ違いの6年。理解されることのなかった松坂大輔の「美意識」 webスポルティーバ 10月12日(金)19時8分配信 松坂大輔と初めて出会ったのは、彼が18歳のときだ。あれから14年が経ち、松坂は32歳になった。 高校生の頃から今に至るまで、松坂と接していて、いつも思うことがある。 それは、超一流のプレイヤーにありがちなコンプレックスの類を、彼からはまったく感じたことがないということだ。わかりやすいところで言えば、体が小さいとか、家が貧しいとか、野球界のエリートコースを歩めなかったとか、超一流の域に達したプレイヤーから話を聞くと、望むと望まざるとにかかわらず子どもの頃から背負わされた何かしらのコンプレックスがあったんだろうなと想像させることが珍しくない。そうしたプレイヤーほど、負の感情をバネに天井を押し上げ、屋根を突き破って、無限に広がる大空へと飛び立っていくものだ。 しか
oven::indirectedがポインタの配列を、間接参照した範囲に変換するものであるのに対し、 oven::outdirectedは値の配列をポインタ(もしくはイテレータ)の範囲に変換します。 #include <iostream> #include <vector> #include <boost/foreach.hpp> #include <pstade/oven/initial_values.hpp> #include <pstade/oven/outdirected.hpp> #define foreach BOOST_FOREACH using namespace pstade::oven; int main() { std::vector<int> v = initial_values(3, 1, 4); foreach (std::vector<int>::const_i
2011-01-18追記 教科書編その2 にて2011年版のIR教科書を紹介しています 情報検索(IR)の勉強を本格的に始めて8ヶ月.大体どんな分野があって,どんなことを勉強すればいいのかわかってきた(と思う).この気持ちを忘れないうちにメモしておこう.以下,若輩があーだこーだ言ってるだけなので,間違いや他に情報があれば,ぜひコメントをお願いします. # ここで述べている情報検索とは,コンピュータサイエンスの一分野としての情報検索です.図書館情報学の側面は一切扱っていません,あしからず. というわけでまず教科書編. 本腰を入れて勉強する場合,基礎づくりのためには教科書選びがいちばん重要だと思っている.自分の知っている限り,情報検索における教科書の選択肢はそれほど広くはない.以下に紹介する本は,情報検索を学ぶ上で「買い」の本.これらを読めば,最新の論文を読めるだけの土台はできるし,専門家と議
最近重点的に勉強しているので,これまで集めた教科書情報,資料等へのリンクをまとめてみる.紹介している教科書はほとんど読んでいないので妄言注意. この他にお薦め教科書,勉強法があればぜひ教えてください. 文字列探索は検索対象テキストの中から転置インデクスのような外部データ構造を利用せずに目的の文字列を探索する課題です.文字列探索,文字列照合,パターンマッチなどとも呼ばれています(一番オーソドックスな呼び方はなんでしょう?) 教科書 和書で文字列探索だけを取り扱っている本を見かけたことがない.アルゴリズム本の探索の章にKMP法,BM法が紹介されているだけのケースが多い.注意してみるとAC法を扱っている本が意外と少ないことに気がつく... (文字列探索でよい和書の情報募集中) 追記 (2009-04-02) Thanks to cubicdaiyaさん! 情報検索アルゴリズムにKMP法, BM法
昨年書いた教科書編が(僕にとっては)嬉しくて跳ね上がるほどブックマークされたので,調子に乗って第二弾を書いてみました.皆様ありがとうございます(ブックマークにがんばってくださいというコメントがあったのがめちゃくちゃ嬉しかったです).今回は研究寄りですが,少しでも誰かの役に立てば幸いです. 僕は網羅的にサーベイを,キーワード検索以外に主に二つの方法で行っています. 会議毎にサーベイ 研究者毎にサーベイ 1.はさておき,2.ですが,僕は研究者のDBLPをチェックしています.気になる論文の著者のDBLPを眺めると,知らなかった要チェックや!論文を拾うことができます. なので,一線で活躍する研究者の論文は定期的にチェックする必要があります. 今回はIR研究者の中でも,戦闘力が高く,この人は常にウォッチせねばという研究者の一部を紹介したいと思います. 下記は若輩の独断と偏見に基づくものです.一線で活
SVMツールで有名なLIBSVMの作者らがまとめた "A Practical Guide to Support Vector Classification" という良資料[1]の日本語解説資料をまとめてみたので公開. SVM実践ガイド (A Practical Guide to Support Vector Classification) View more presentations from sleepy_yoshi 元資料はこちら 本資料作成のきっかけは,まわりの人に「SVMとかいう手法使ったんだけど,機械学習よくわからなくてさ」という感じで相談を受けて「カーネルは何使ってるの?」「素性のスケーリングはした?」「Cパラメータは調整した?」というようなことを聞くのだけれど,「???」というやりとりにうんざりしたから. その都度,Cパラメータというものがありまして〜,カーネルというものが
一晩寝てからデーモンプロセスの作り方を眺めてとても簡単だということに気がついた.自分メモ. デーモンへの道のり fork()して子プロセス (次郎) を生成.親プロセス (太郎) を終了する 次郎プロセスでsetsid()する 次郎プロセスはセッショングループリーダになる この時点で次郎プロセスは制御端末を持たなくなる 次郎プロセスがfork()して孫プロセス (三郎) 生成.次郎プロセス終了 chdir("/")する. shutdown時のumount処理に迷惑をかけないため 標準入力,標準出力,標準エラー出力を閉じる サンプルコード 比較を行うために3つのプログラムを書いた. daemon 全部行う nondaemon 2度目のfork()をしない nondaemon2 setsid()しない #include <stdio.h> #include <stdlib.h> #includ
VvZX(qvZX)Afork()VXeR[gpBVXeR[oAovZXmAvZXRs[B ovZXevZXARs[VvZXqvZXBevZXAqvZXfork()lpB evZXAfork()qvZXvZXIDpAqvZX0pBplAevZXqvZXッBlBAqvZXPvOヲB int main(void){ pid_t child // fork()li[ if( !(child=fork()) ){ // child=0qvZX printf("inchildprocess\n"); exit(0); } // evZXqvZXID\ヲ prinft("inparentprocess:childprocessID=%d\n,child); return 0; }
Boost C++ Libraries ...one of the most highly regarded and expertly designed C++ library projects in the world. — Herb Sutter and Andrei Alexandrescu, C++ Coding Standards The Boost.Asio library offers side-by-side support for synchronous and asynchronous operations. The asynchronous support is based on the Proactor design pattern [POSA2]. The advantages and disadvantages of this approach, when co
Boost.Asio概要 翻訳は自分の勉強のために行います.とりあえず意味がわかればいいやという感じで進めます.訳せないところは飛ばします. そういった意味で不正確な訳なことをご了承下さい. http://www.boost.org/doc/libs/1_47_0/doc/html/boost_asio/overview.html 1. Boost.Asioの原理原則 大部分のプログラムは、外の世界と何らかの方法でやりとりをします。それは、ファイルを通じて、ネットワークを通じて、シリアルケーブルを通じて、もしくは、コンソールを通じて、です。しばしば、ネットワークの場合、I/O命令の完了までに長い時間がかかる場合があります。これは、アプリケーションの開発者にとって、とりわけ挑戦となります。 Boost.Asioはこれらの長い実行時間のかかる操作を扱います。スレッドや明示的なロックなしにです
Boost Advent Calndar 2011に恐縮ですが参加させて頂きました。15日目です。 最初はBoost.Asioについてまとめるぞーと意気込んでいたものの変に長くなってしまったのでBoost.Asioの中のio_serviceに絞ったためこんなタイトルに成り申した。 Boost.Asioとは 主にネットワークのI/Oのような時間のかかってしまう処理を非同期的かつ簡潔に扱えるようにした便利なライブラリです。 ネットワークを中心に、シリアルポート、タイマー、シグナルのハンドリングなども扱えます。 と、いうわけでio_serviceです。 Windows環境にてVC++10、Boost1.48.0を用いています。 io_service 全てはこのクラスに始まり、このクラスに終わります。 各OSの提供するI/O制御への橋渡しをしてくれるもので、Asioの提供するIOサービス(dead
N3491 Minutes: SG4 Networking, October 2012 ポートランド会議での、ネットワーク関係のミーティング議事録。 C++11までは、コア言語、ライブラリ、進化という大きく3つのワーキンググループに分かれて策定作業が行われていました。 C++1yでは、TR2という大きな枠組の中でライブラリを議論するのではなく、並行関連やネットワーク関連に深い知識のあるメンバを集めた専門家グループを立てて、議論が進められています。 SG1 : 並行・並列 SG2 : モジュールシステム SG3 : ファイルシステム SG4 : ネットワーク SG5 : トランザクショナルメモリ SG6 : 数値計算 ※SGはStudy Groupの略 今回公開されたのはネットワーク関係の議事録です。 まずAsioについて。C++1yではネットワークの基礎ライブラリとして、Boost.Asi
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く