タグ

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

  • 人工知能に関する断想録

    Deep Learningの訓練終了など任意のメッセージを特定のSlackチャネルに投稿できるボットを作りました。 Yatta Kun プログラミングは不要で curl というコマンドラインツールから簡単に投稿できるので非常に便利です。可愛いくて便利なので作り方を紹介します。 職場などでみんなが使っているワークスペースで実験すると迷惑がかかる可能性があるので、最初は個人の実験用ワークスペースを作ってしまうのが良いと思います。無料でできます。 1. Incoming Webhookをインストール SlackアプリのページからIncoming Webhookをインストールします。Slackアプリページは、 https://[workspace name].slack.com/apps/ から行けます。 workspace name はワークスペース名です。 Incoming Webhook で

    人工知能に関する断想録
  • 人工知能を実現する学習アルゴリズムに必要な能力 - 人工知能に関する断創録

    今年は、Deep Learningを研究する予定(2014/1/4)だったのだけれど、多層パーセプトロンまで到達した(2014/2/5)ところで少々(?)足踏みしている。Deep Learningの構成要素であるボルツマンマシンを理解するのに手間取っているためだ。ボルツマンマシンの理解には、マルコフ確率場やMCMCの理解が必要なことがわかったので少し廻り道してモンテカルロ法を先に勉強(2014/6/20)していたというわけ。 ただ、そればかりでは少々退屈になってきたので少し先回りして Deep Learning の先駆者のBengioさんが書いた論文 Learning Deep Architectures for AI を勉強している。示唆に富む見解が多いのであとで振り返られるように記録しておきたい。 まずは、1.1節のDesiderate for Learning AIの部分。人工知能

    人工知能を実現する学習アルゴリズムに必要な能力 - 人工知能に関する断創録
  • TheanoをWindowsにインストール - 人工知能に関する断創録

    Deep Learningを実装するのによく使われるTheanoというPythonライブラリをWindowsマシンにインストールしたのでそのときの記録。ただ使うだけだったらPythonとnumpy/scipyをインストールした後にpip installs Theanoで普通に使えていた。実際、GPUが貧弱なMacbook Airではこの方法でインストールしていた。今回、PCを買い替えた(2015/1/19)こともあって、NVIDIA社のGPUを使って高速演算できるようにしてみたというわけ。私のマシンは、 OS : Windows 8.1 64bit GPU: NVIDIA GeForce GTX 760 Ti OEM という環境。Theano TutorialにもWindowsへのインストール方法は載っているけどはっきり言ってよくわからない。いろいろ調べていたところ以下の記事が自信満々で手

    TheanoをWindowsにインストール - 人工知能に関する断創録
  • Deep Learning リンク集 - 人工知能に関する断創録

    乗るしかないこのビッグウェーブに Deep Learning(深層学習)に関連するまとめページとして使用する予定です。Deep Learningに関する記事・スライド・論文・動画・書籍へのリンクをまとめています。最新の研究動向は全然把握できていないので今後研究を進めるなかで記録していきたいと思います。読んだ論文の概要も簡単にまとめていく予定です。ブログでは、当面の間、Theanoを使って各種Deep Learningアルゴリズムを実装していきたいと思います。 関連ニュースなどはTwitterでも流しているので興味があったらフォローしてください。 すべてに目が通せず更新が追いついていません。私のはてなブックマークで[Deep Learning]というタグを付けて登録しています。まったく整理できていませんがご参考まで。 Theano編 TheanoをWindowsにインストール(2015/1

    Deep Learning リンク集 - 人工知能に関する断創録
  • 3日で作る高速特定物体認識システム (1) 物体認識とは - 人工知能に関する断創録

    情報処理学会の学会誌『情報処理』の2008年9月号(Vol.49, No.9)に「3日で作る高速特定物体認識システム」という特集記事があります。OpenCVを用いた面白そうなプロジェクトなのでレポートにまとめてみようと思います。3日でできるかはわからないけど。 残念ながらこの記事はPDFを無料でダウンロードすることができません(CiNiiでオープンアクセス可能になったみたいです)。なので会員以外で元記事が読みたい人は図書館でコピーする必要があるかも・・・また、2009年9月号の人工知能学会誌にも物体認識の解説「セマンティックギャップを超えて―画像・映像の内容理解に向けてー」があります。こちらも非常に参考になりますが同様にPDFが手に入りません・・・。他にもいくつかわかりやすい総説論文へのリンクを参考文献にあげておきます。 物体認識とは 物体認識(object recognition)は、画

    3日で作る高速特定物体認識システム (1) 物体認識とは - 人工知能に関する断創録
  • ナイーブベイズを用いたテキスト分類 - 人工知能に関する断想録

    今までPRMLを読んで実装を続けてきましたが、10章からは難しくて歯が立たなくなってきたのでここらで少し具体的な応用に目を向けてみようと思います。機械学習の応用先としては画像の方が結果を見ていて面白いんですが、当面は自然言語処理を取り上げます。そんなわけで一番始めの応用は機械学習と自然言語処理の接点として非常に重要なテキスト分類(Text Classification, Text Categorization)の技法たちを試していきたいと思います。テキスト分類は文書分類(Document Classification)という呼び方もあります。テキストと文書は同じ意味です。最初なので自分の知識の整理と入門者への紹介のためにちょっと丁寧にまとめてみました。 テキスト分類とは テキスト分類とは、与えられた文書(Webページとか)をあらかじめ与えられたいくつかのカテゴリ(クラス)に自動分類するタス

    ナイーブベイズを用いたテキスト分類 - 人工知能に関する断想録
  • パターン認識と機械学習(PRML)まとめ - 人工知能に関する断創録

    2010年は、パターン認識と機械学習(PRML)を読破して、機械学習の基礎理論とさまざまなアルゴリズムを身につけるという目標(2010/1/1)をたてています。もうすでに2010年も半分以上過ぎてしまいましたが、ここらでまとめたページを作っておこうと思います。ただ漫然と読んでると理解できてるかいまいち不安なので、Python(2006/12/10)というプログラミング言語で例を実装しながら読み進めています。Pythonの数値計算ライブラリScipy、Numpyとグラフ描画ライブラリのmatplotlibを主に使ってコーディングしています。実用的なコードでないかもしれませんが、ご参考まで。 PRMLのPython実装 PRML読書中(2010/3/26) 多項式曲線フィッティング(2010/3/27) 最尤推定、MAP推定、ベイズ推定(2010/4/4) 分類における最小二乗(2010/4/

    パターン認識と機械学習(PRML)まとめ - 人工知能に関する断創録
  • テキストを描画する - 人工知能に関する断創録

    画面上にテキストを描画します。テキストを描画するにはpygame.fontモジュールを使います。pygame.fontは、TrueTypeフォント(TTF)を使って描画します。テキストの描画は、 Font オブジェクトを作成 Fontオブジェクトを使ってテキストを描画したSurfaceを作成 Surfaceを画面に描画 という手順で行います。テキストを画像化するのがポイントです。 サンプルスクリプト draw_text.py #!/usr/bin/env python # -*- coding: utf-8 -*- import pygame from pygame.locals import * import sys SCREEN_SIZE = (640, 480) pygame.init() screen = pygame.display.set_mode(SCREEN_SIZE) p

    テキストを描画する - 人工知能に関する断創録
  • Visual Wordsを用いた類似画像検索 - 人工知能に関する断創録

    類似画像検索システムを作ろう(2009/10/3) 3日で作る高速特定物体認識システム(2009/10/18) に続くOpenCVプロジェクト第三弾です。今回は、上の二つをふまえてカラーヒストグラムではなく、局所特徴量(SIFTやSURF)を用いた類似画像検索を試してみます。局所特徴量はグレースケール画像から抽出するため、カラーヒストグラムと違って色は見ていません。画像の模様(テクスチャ)で類似性を判定します。 実験環境は、Windows 7、MinGW C++コンパイラ、OpenCV2.0、Python 2.5です。EclipseでMinGWを使う方法はEclipseでOpenCV(2009/10/16)を参照してください。Visual C++にはないディレクトリスキャン関数を一部使っているのでVisual C++を使う場合は、少しだけ修正が必要です。 Bag-of-Visual Wor

    Visual Wordsを用いた類似画像検索 - 人工知能に関する断創録
  • WindowsでMeCab Pythonを使う - 人工知能に関する断創録

    語の文章を単語に分割するには形態素解析を使います。日語の形態素解析には、ChaSen、MeCab、Yahoo!形態素解析などがあります。ナイーブベイズを用いたブログ記事の自動分類(2010/7/3)でMeCabをPythonから使う方法を簡単にまとめましたが、MeCabはよく使うので再度まとめ直して独立したエントリにしました。Yahoo!形態素解析の使い方は、Yahoo!形態素解析API(2009/4/15)で書きました。 Windowsへの導入方法 MeCabは高性能な形態素解析モジュールでPythonRubyPerlJavaなどさまざまな言語から使えます。Mac OS XとLinuxでは簡単にコンパイルしてインストールができるのですが、WindowsではMinGWやVisual Studioのインストール、コードの修正が必要でかなり面倒くさい。そこで、Pythonモジュー

    WindowsでMeCab Pythonを使う - 人工知能に関する断創録
  • ライフゲームの世界 - 人工知能に関する断創録

    ニコニコ動画の複雑系コミュニティの発起人のはむくんがライフゲームの世界というとても面白い動画を投稿されています。Twitterでは何度かツイートしてたけど完結したのでブログでも紹介させていただきます。 ライフゲームの世界1 John Horton Conwayが提案したライフゲーム(Conway's Game of Life)の基的なルールを解説しています。また頻繁に現れる4種の物体(ブロック、蜂の巣、ブリンカー、グライダー)を紹介しています。最後の作品紹介は、P416 60P5H2V0 gunというすさまじいパターンが出てきます。グライダー銃から発射したグライダーたちが滑走路を通ります。グライダーの集合先では、発射された複数のグライダーが合体して宇宙船が組み立てられます。 ライフゲームの世界2 いろんな振動子(パルサー、タンブラー、銀河)が鑑賞できます。作品紹介では大量の振動子が勢揃い

    ライフゲームの世界 - 人工知能に関する断創録
  • 類似画像検索システムを作ろう - 人工知能に関する断創録

    C++版のOpenCVを使ってカラーヒストグラムを用いた類似画像検索を実験してみました。バッチ処理などのスクリプトはPythonを使ってますが、PerlでもRubyでも似たような感じでできます。 指定した画像と類似した画像を検索するシステムは類似画像検索システムと言います。GoogleYahoo!のイメージ検索は、クエリにキーワードを入れてキーワードに関連した画像を検索しますが、類似画像検索ではクエリに画像を与えるのが特徴的です。この分野は、Content-Based Image Retrieval (CBIR)と呼ばれており、最新のサーベイ論文(Datta,2008)を読むと1990年代前半とけっこう昔から研究されてます。 最新の手法では、色、形状、テクスチャ、特徴点などさまざまな特徴量を用いて類似度を判定するそうですが、今回は、もっとも簡単な「色」を用いた類似画像検索を実験してみます

    類似画像検索システムを作ろう - 人工知能に関する断創録
  • 類似楽曲検索システムを作ろう - 人工知能に関する断創録

    もう1年以上かけて音声信号処理の勉強をしてきました(Pythonで音声信号処理)。ここらで具体的なアプリケーションとして類似楽曲検索の実験をしてみたのでレポートをまとめておきます。言語はPythonです。 前に 類似画像検索システムを作ろう(2009/10/3) Visual Wordsを用いた類似画像検索(2010/2/27) という画像の類似検索に関するエントリを書きましたが、今回は画像ではなく音楽を対象に類似検索をやってみたいと思います! 今回作る類似楽曲検索システムは、従来からよくあるアーティスト名や曲名などテキストで検索するシステムや購買履歴をもとにオススメする協調フィルタリングベースのシステムとは異なります。WAVEファイルやMP3ファイルなどの音楽波形そのものを入力とするのが特徴です。たとえば、「具体的なアーティストや曲名は知らないけれど、この曲とメロディや雰囲気が似た曲がほ

    類似楽曲検索システムを作ろう - 人工知能に関する断創録
  • Pythonによるモンテカルロ法入門 - 人工知能に関する断創録

    PRMLの11章で出てくるマルコフ連鎖モンテカルロ法(Markov chain Monte Carlo methods: MCMC)。ベイズでは必須と呼ばれる手法だけれどいまいち理屈もありがたみもよくわからなくて読み飛ばしていました。 最近、ボルツマンマシンを勉強していて、ベイズと関係ないのにマルコフ連鎖やらギブスサンプラーやらが出てきて格的にわからなくなってきたのでここらで気合を入れて勉強し直すことにしました。 参考にした書籍は「Rによるモンテカルロ法入門」です。PRMLと同じく黄色いなので難易度が高そう・・・このはR言語を使って説明がされていますが、それをPythonで実装しなおしてみようかなーと計画中。numpy、scipyの知らなかった機能をたくさん使うので勉強になりそう。 ただRにしかないパッケージを使われると途中で挫折する可能性が高い・・・あと内容が難しすぎて途中で挫折す

    Pythonによるモンテカルロ法入門 - 人工知能に関する断創録
  • Pythonでゲーム作りますが何か? - 人工知能に関する断創録

    このサイトでは、プログラミング言語PythonPythonゲーム用ライブラリPygameを用いてゲーム制作の過程やテクニックをまとめています。主に自分の知識の整理に使うつもりですが、これからPythonを学んでゲームを作ってみようという方の参考になれば幸いです。 Pygameは知らなくても大丈夫ですが、Pythonの基は知っていることを前提にしています。 Pythonで書いたプログラムはWindowsでもMacでもLinuxでも動きます。 ソースコードの著作権を主張することはないので自由に使ってください。 記事下方にあるナビゲーションはほとんど役に立ちません。このページを起点としてリンク先へ、読んだら戻るといった使い方が楽だと思います。 NEW! 全ソースコードをGitHubのリポジトリとして公開しました。右下のDownload ZIPからまとめてダウンロードできます(2014/9

  • Javaでゲーム作りますが何か? - 人工知能に関する断創録

    Javaを使ったゲームプログラミングについて書いてます。 プログラムはJAR形式で公開しているのでダブルクリックで実行してください。 ソースファイルはJARファイルの中に入っているので解凍してご覧下さい。基的に全部ソースファイル入ってます。著作権を主張することはないので自由に使ってください。 リンク切れやリンク先がおかしいなどありましたらコメントをいただけると助かります。 ブログはその他雑多な記事も多いため、記事下にあるナビゲーション機能はほとんど役に立ちません。このページを起点としてリンク先へ、読んだら戻るといった使い方が楽だと思います。 リンク先がない項目は面倒くさくなって解説を書いておらず、ソースファイルの提供のみとなっています。ご了承ください。 かなり昔の記事なので細かい内容に関する質問に私からはお答えできないと思います。もっと人が多いサイトで聞いた方がよいかもしれません。 NE

    Javaでゲーム作りますが何か? - 人工知能に関する断創録
  • 1