タグ

ブックマーク / aidiary.hatenablog.com (6)

  • L-systemで植物を描く - 人工知能に関する断創録

    L-system入門(2013/11/26)の続き。 前回は、L-systemで有名なフラクタルを描きましたが、今回は植物を描いてみます。植物を描くためには前回導入した記号に加えて次の2つの記号を新たに導入します。 [ : 亀の状態(位置と向き)をスタックにプッシュ ] : 亀の状態をスタックからポップこの2つだけです。スタックからポップするときは、亀の位置が変わりますが、その間は線を引きません。NetLogoで書くと下のようなコードになります。ここで、(xcor, ycor)が亀の位置、headingが亀の向いている方向です。 ; タートルの状態をプッシュ if action = "[" [ let turtle-state (list xcor ycor heading) set stack lput turtle-state stack ] ; タートルの状態をポップ if acti

    L-systemで植物を描く - 人工知能に関する断創録
    TOKOROTEN
    TOKOROTEN 2013/11/28
  • L-system入門 - 人工知能に関する断創録

    今回は、植物の成長をモデル化したLindenmayer system、略してL-systemの実験をしてみます。ライフゲームと同じく非常に単純な規則から複雑な形状が発生する複雑系の興味深い例です。 L-system L-systemは、初期文字列と書き換え規則から構成されます。たとえば、 初期文字列:b 書き換え規則1:a -> ab 書き換え規則2 : b -> a書き換え規則は、->の左側を右側に書き換えろという意味です。すごく簡単でしょ?この書き換え規則を初期文字列に適用します。この例の場合、 b -> a -> ab -> aba -> abaab -> abaababa -> ...のような感じで書き換えていきます。ポイントは、現在の文字列のすべての文字に対して書き換え規則を適用することです。書き換え規則の左側が必ず1文字(文脈自由)でかつ決定論的に書き換えていくL-system

    L-system入門 - 人工知能に関する断創録
    TOKOROTEN
    TOKOROTEN 2013/11/26
  • Pythonで音声信号処理 - 人工知能に関する断創録

    今年の目標(2011/1/1)の1つに音声認識技術の深耕というのを立ててます。いきなり音声認識をやるのは知識不足でかなり大変だということが分かったので、まずは音声のいろんな性質や信号処理の技術を一つ一つ試しながら習得していくことにしました。 音声信号処理ではよくMatlabが使われるようなのですが、 Matlabは高くて買えない(フリーのOctaveってのもあります) すでに使っているPython、Rと文法が似ていて混乱する というわけでMatlabはやめてPythonを使います。SciPyにフーリエ変換の機能があったのでたぶん同じようなことができるでしょう。Pythonのいろんな音声関係のライブラリなんかも紹介できればと思います。 当面の目標は、簡単な類似楽曲検索システムを作ることです。その後は、いろんなツール(HTKなど)を駆使して音声認識システムを作りたいと思ってます。 このページは

    Pythonで音声信号処理 - 人工知能に関する断創録
    TOKOROTEN
    TOKOROTEN 2011/06/14
  • 3日で作る高速特定物体認識システム (7) 最近傍探索の高速化 - 人工知能に関する断創録

    3日で作る高速特定物体認識システム (6) 線形探索を用いた特定物体認識(2009/11/22)のつづきです。今回がこのシリーズの最終回です。 前回の線形探索は遅すぎるので最近傍探索を高速化します。これで表題の高速特定物体認識システムができあがります。高速化にはいくつかの方法がありますが、物体モデルデータベースをなんらかのデータ構造にあらかじめ格納しておくというのがポイントです。今回は、資料でも述べられているkd-treeとLocality Sensitive Hashing (LSH)という手法を試してみます。kd-treeは木構造、LSHはハッシュでデータを構造化(インデキシング)します。kd-treeは、厳密な最近傍を求めますが、LSHは近似最近傍検索と呼ばれ、厳密な最近傍は求められない代わりに計算を大幅に高速化できます。 資料では、ANN (Approximate Nearest

    3日で作る高速特定物体認識システム (7) 最近傍探索の高速化 - 人工知能に関する断創録
    TOKOROTEN
    TOKOROTEN 2011/02/27
  • PythonでAmazon Product Advertising APIを使う - 人工知能に関する断創録

    以前、Amazon Web Serviceで書籍情報を取得する(2008/12/20)というエントリを書きましたが、2009年8月15日から新しく認証が導入されてそのままでは使えなくなっていることに気がつきました。サービス名もProduct Advertising APIに変更されたそうです。AmazonWebサービスはときどき使いたくなるのでPythonから使う方法を改めて調べてみました。以下のサイトを参考にさせていただきました。 Product Advertising API アマゾンAPIを使うのに2009年8月15日から認証が必要になるらしい AmazonアソシエイトWebサービス改めProduct Advertising APIの電子署名について調べてみました Python + Amazon = Pyzon amazon.py まず、Pyzonを参考にアイテムID(ASIN、I

    PythonでAmazon Product Advertising APIを使う - 人工知能に関する断創録
    TOKOROTEN
    TOKOROTEN 2010/12/24
  • Mendeleyで論文管理 - 人工知能に関する断創録

    今まで読んだ論文の管理にはJabRefというフリーソフトを使ってきたのですけどMendeleyというWebサービスに乗り換えることにしました。非常によいサービスだと思うのでちと紹介します。 Mendeleyは主に論文を管理するWebサービスです。ブラウザからもアクセスできるのですが、Mendeley DesktopというWindows, Mac, Linuxで使えるデスクトップアプリケーションもついています。ローカルで論文を登録してもWebと同期できるので複数のPCからも使えて大変便利です。インタフェースはすべて英語ですが日語論文の登録も問題なくできます。起動すると下のような感じになります。 Webインタフェースは下のような感じです。洗練されています。 論文の登録 手元にPDFがある場合は、そのファイルを登録すると論文リストに追加されます。その際、PDFのテキストを解析して(あまり精度は

    Mendeleyで論文管理 - 人工知能に関する断創録
    TOKOROTEN
    TOKOROTEN 2010/10/18
  • 1