タグ

ブックマーク / www.chokkan.org (12)

  • EmacsとgdbでVisual Studioライクなデバッグ環境 - Não Aqui!

    C言語を勉強するとき,文法や標準関数をマスターすることに並ぶくらい重要なのが,デバッガを使いこなせるようになることです.C言語を習いたての頃は,書いたコードが予期せぬ動作をしたり,ポインタの使い方を間違えてプロセスを落とすこと(セグメンテーション違反)なんてザラです.そういう失敗をたくさん経験して,自分の書いたコードの間違いに気づき,修正していくことでコーディング力が養われていきます.しかし,自分の書いたプログラムの何処が悪いのか,皆目見当もつかないような状況に陥ってしまうと,プログラミングが嫌いになってしまいます. デバッガを文字通りに解釈すると「バグを取る」ためのツールで,プログラマにとってはコードの間違いを発見するための検証手段として欠かせません.これに加えて,正しいコードをデバッガ上で動かしてみることも,C言語の理解促進のために重要であると私は考えています.ループや条件分岐でプログ

    mamoruk
    mamoruk 2013/06/03
    「Quick Cのデバッガが使いやすかったお蔭で,挫折せずにC言語の勉強が出来たと言っても過言ではありません.(...) 研究用のC言語のプログラムは,Windows上で開発してからlinux上に移植しています.」
  • Não Aqui! » 仙台市中心部の生活・環境について

    まず,最初に断っておきますが,これから書く内容は仙台市青葉区の中心部(仙台駅や県庁周辺)の話です.仙台市は,東は海,西は山形県に面していて,地震の被害状況が場所によってかなり異なります.海岸に近い地域の被害は悲惨で,瓦礫の撤去作業が完了するまでに半年~1年はかかると言われています.一方,仙台市青葉区の中心部は,被害甚大な地域の方に申し訳ないと思うくらい,日常を取り戻しています.インターネット上を探しても,仙台市中心部の生活・環境に関する情報が乏しく,心配されている方が多いと思いますので,このエントリで仙台市中心部の現状報告をいたします. ■ ライフラインについて 電気・水道は復旧しています. 都市ガスは復旧が遅れていたものの,今では復旧しているところが殆どのようです. 私の家はLPガスですが,震災の影響を受けなかったようです(と,アパートの人から聞きました). 自分が使っているキャリアであ

    mamoruk
    mamoruk 2011/04/18
    乾研応援あげ
  • Não Aqui! » 東北大学情報科学研究科に准教授として着任しました

    日、東北大学で辞令交付式があり、情報科学研究科の准教授に任命されました。今後は、乾健太郎さん、研究室の学生・スタッフさんと一緒に、自然言語処理や知識処理の研究を進めていきます。 この日を迎えられたのも、諸先生・先輩・同僚・学生・友人の皆様のお陰です。全員挙げるとキリがないくらい、いろいろな方にお世話になりました。これから約10年間が、自分にとって当に大切な時期だと考えていて、これまで以上に研究と教育に打ち込んで行こうと思いますので、ご指導・ご支援をよろしくお願い致します。

    mamoruk
    mamoruk 2011/04/02
    岡崎さんが東北大学乾研の准教授に。
  • Não Aqui! » exp(x)の高速計算 ~実験編~

    最後に,の計算がどのくらい高速化できたのか,実験してみました.アルゴリズムとして,以下のものを比較しました. libcのexp関数 パデ近似を用いたもの(cephesの実装に近いです) 5次~13次でテーラー展開を0を中心として行ったもの 5次~13次の最良多項式近似をの範囲で行ったもの 5次~13次の最良多項式近似をの範囲で行ったもの 5次~11次の最良多項式近似をの範囲で行ったものをSSE2で実装したもの SSE2の実装で11次で打ち止めしているのは,11次と13次で演算精度の差が殆どないことが分かり,単に実装するのが面倒くさかったからだけです.0を中心としたテーラー展開や,最良多項式をの範囲で構成する手法は,の値を切り下げではなく,四捨五入(つまり0.5を足してから切り下げる)で求めます(Wapitiやsse_mathfun.hのexp計算ルーチンは四捨五入を使っています). 実験で

    mamoruk
    mamoruk 2010/09/03
    こういう実装できるのはすごいなー
  • Não Aqui! » SimString (類似文字列検索ライブラリ) 1.0 released

    SimStringという類似文字列検索ライブラリをBSDライセンスでリリースしました.類似文字列検索とは,文字列集合(データベース)の中から,クエリ文字列と似ているものを見つけ出す処理です.コンピュータは,正確に一致する文字列を探すのは得意ですが,表記揺れに出くわすと,途端に対応できなくなります.例えば,「スパゲティ」に対して,レストラン情報などを返すサービスにおいて,「スパゲッティ」や「スパゲティー」などの表記揺れが検索クエリに与えられると,通常のデータベースでは情報を提示することが出来ません.類似文字列検索を用いると,表記揺れが検索クエリに与えられても,「スパゲティ」という既知語を代替クエリとして提案したり,「スパゲティ」の情報をダイレクトに引き出すことができるようになります. 似てる語を探す技術って,文字列処理の基中の基で,自然言語処理では当たり前のように使われていてもおかしくな

    mamoruk
    mamoruk 2010/03/12
    ほほー
  • Não Aqui! » μ

    先週まで論文執筆モードだったので,ご報告が遅れましたが,娘の名前は心優(みゆ)にしました.この名前を聞いて「当て字っぽくて読めねー」と感じるか,「ありがちな名前」と感じるかで,最近の子供の名前に対する精通度が分かります.人気の名前はあまり付けたくなかったのですが,2009年の名前のランキングに普通に出てきます.文字通り「心優しい」ですが,「優」を漢語林で引くと,「上品で美しい」「みやびやか」「おだやか」「しとやか」「情深い」「のびやか」「ゆるやか」など,女の子にはうってつけの多義が並べられています. 名前を決めるのは当に大変でした.考えれば考えるほど,自分の探索空間が足りているのか不安になりました.結局は,コンピュータが生成した6,084個(読みで数えた数)の名前の候補から,私と嫁で一つ一つチェックしながら結論を出しました. 名前の候補を生成する流れは,次の通りです. 名前辞典などを見な

    mamoruk
    mamoruk 2010/02/23
    子どもの名前まで NLP でw
  • Não Aqui! » Medlineから自動構築した略語辞書Acromine

    私が昔所属していたNaCTeMで公開している,略語辞書サービスAcromineをひっそりと更新しました.以前のバージョンからの変更点は,以下の通りです. 2009年版Medlineのアブストラクトで略語抽出をやり直した 略語の完全形のクラスタリング方法を改良した 略語の完全形の異表記を表示できるインタフェースにするため,辞書検索結果の表示を表形式からツリービューに変更した 辞書引きサービスのAPIを,SOAPからREST/JSONに変更した 単に辞書の中身を新しくするだけではつまらないので,ツリービューをウェブブラウザ上で実装するときに,YUI Libraryを初めて使ってみました.ノード・ラベルの遅延ロードを行うツリービューが簡単に実装できて,便利ですね. 辞書引きサービスのAPIを使うには,登録手続きが必要になるようです(残念ながら私のコントロール範囲外).アカデミックな人たちは問題無

    mamoruk
    mamoruk 2009/10/21
  • Não Aqui! » Classias 1.0 released

    Classiasという分類のための機械学習アルゴリズムの実装を公開しました.今のところ,L1/L2正則化ロジスティック回帰(最大エントロピー法),L1/L2正則化L1損失線形カーネルサポートベクトルマシン(SVM),平均化パーセプトロンをサポートしています.学習アルゴリズムとしては,平均化パーセプトロン,L-BFGS法,OWL-QN法,Pegasos,Truncated Gradient(L1-FOLOS)を実装してあります.カーネルは使えませんが,線形識別モデルを高速に学習できるようになっています.二値分類,多クラス分類,候補選択(明示的に与えられた候補の中からスコア最大のものを選ぶタスク)をサポートしています(SVMは今のところ二値分類のみ). このツールはもともと,最大エントロピー法を自分で使うために実装したもので,作り始めてからもう2年くらい経過しています.去年のColingやEM

    mamoruk
    mamoruk 2009/09/27
    いろいろ実装されていてすごいですね〜自分も見習いたい
  • Não Aqui! » CDB++ 1.0 released

    CDB++という,静的ハッシュデータベースライブラリをリリースしました.ライセンスは修正BSDです. 静的ハッシュデータベースなので,いったんデータベースを構築したら,要素の追加や削除は行えません.その代わり,コンパクトなデータベース,高速な構築,高速な検索ができるようになっています.データ構造は,Constant Databaseを採用しています.Constant Databaseの実装はいくつかありますが,クロスプラットフォームでお手軽に使えるものがなかったので,作ってみました.また,このライブラリはcdbpp.hというインクルードファイルのみで構成されているので,このファイルをインクルードするだけでアプリケーションに組み込めます. ハッシュデータベースには,Oracle DBやTokyo Cabinetなど,優れた実装がたくさんあります.しかし,単にキーと値のペアをファイルに書き出し

    mamoruk
    mamoruk 2009/07/10
    key-value store ですね!KVS! KVS!
  • Não Aqui! » 10行強で書けるロジスティック回帰モデル学習

    ロジスティック回帰(logistic regression)の学習が,確率的勾配降下法(SGD: stochastic gradient descent)を使って,非常に簡単に書けることを示すPythonコード.コメントや空行を除けば十数行です. リストの内包表記,条件演算子(Cで言う三項演算子),自動的に初期化してくれる辞書型(collections.defaultdict)は,Python以外ではあまり見ないかも知れません. リストの内包表記は,Haskell, OCaml, C#にもあるようなので,結構メジャーかも知れません. [W[x] for x in X] と書くと,「Xに含まれるすべてのxに対し,それぞれW[x]を計算した結果をリストにしたもの」という意味になります.sum関数はリストの値の和を返すので,変数aにはXとWの内積が計算されます. Pythonでは,三項演算子を条

    mamoruk
    mamoruk 2009/04/02
    解説がていねい。こういうふうにコードと解説がセットなのはすばらいい
  • Não Aqui! » CRFsuite 0.6 released

    CRFsuiteのバージョン0.6をリリースしました.変更点は以下の通りです. 確率的勾配降下法 (Stochastic Gradient Descent: SGD) に基づく学習アルゴリズムを実装した.ベースとなっているアルゴリズムは Pegasos で,L2正則化が利用可能.学習率 (η) の調節戦略は,sgd と同じです.SGDで学習を行うには,コマンドラインに,”-p algorithm=sgd” を追加. ベンチマークテストのページに,SGDアルゴリズムの性能,実装としての sgd と MALLET との比較を追加した. L-BFGSの実装をliblbfgs 1.7にアップデートした. 学習時のメモリ使用の無駄を減らし,節約した. アイテムの属性名にコロン(:)を含めることが出来るように,エスケープシーケンス “\:”  と “\\” を導入した.これに伴い,CoNLL-2000

    mamoruk
    mamoruk 2009/03/11
    活発に開発していてすごい
  • Não Aqui! » CRFsuite 0.7 released

    CRFsuiteのバージョン0.7をリリースしました.あるマシン環境で,素性生成中にクラッシュする問題を修正しました.もしバージョン0.6でクラッシュの問題が発生していなければ,急いでアップグレードする必要はありません. この問題は,自分がテストに使っている環境では発生しませんが,海外の方から「学習が始まる前にクラッシュする」と報告がありました.クラッシュした場所から怪しい箇所を推定できる場合は別ですが,自分の環境で問題が再現出来ないと,デバッグが困難になります.こういうときは,「分からないので問題の環境に直接ログインさせて下さい」と,決まってお願いすることにしています.今までいくつかのオープンソースプロジェクトで,こういうお願いを(おそらく10回くらい)したことがあるのですが,不思議と断られたことは一度もありません.マシンに見ず知らずの人をログインさせるなんて,ハイリスクで気持ち悪いはず

    mamoruk
    mamoruk 2009/03/11
    個人的には断ったケースも見たことがあるのでなんとも言えないが、やっぱり大学は性善説かも
  • 1