タグ

アルゴリズムとPythonに関するbunhikoのブックマーク (8)

  • Python言語による実務で使える100+の最適化問題 | opt100

    指針 厳密解法に対しては、解ける問題例の規模の指針を与える。数理最適化ソルバーを使う場合には、Gurobi かmypulpを用い、それぞれの限界を調べる。動的最適化の場合には、メモリの限界について調べる。 近似解法に対しては、近似誤差の指針を与える。 複数の定式化を示し、どの定式化が実務的に良いかの指針を示す。 出来るだけベンチマーク問題例を用いる。OR-Libraryなどから問題例をダウンロードし、ディレクトリごとに保管しておく。 解説ビデオもYoutubeで公開する. 主要な問題に対してはアプリを作ってデモをする. 以下,デモビデオ: 注意 基的には,コードも公開するが, github自体はプライベート そのうちにするかもしれない(予約はしているが, 保証はない). プロジェクトに参加したい人は,以下の技量が必要(github, nbdev, poetry, gurobi); ペー

  • パターン認識と機械学習(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)まとめ - 人工知能に関する断創録
  • パックマンを遺伝的アルゴリズムしてみた - そこはかとなく書くよ。

    GDD(Google Developer Day)のQuizが終わりました。 その中にパックマンという問題がありました。これはパックマンの敵の動きを示されその中でいかにドットを多く取っていくかという問題でした。 敵の動きのシミュレートは(めんどくさいけど)すぐにできたので、あとは自機の動きをどのように導き出すかがポイントとなります。 うーんと唸りましたが、なんとなーく遺伝的アルゴリズムを使って計算機に導き出してもらうこととしました。 pyevolve ありがたいことにpythonには、pyevolveという遺伝的アルゴリズムを簡単に使えるライブラリがあります。これを使わせてもらうことにしました。 ちなみに、今回はじめて遺伝的アルゴリズムを勉強したので、たぶんいろいろ間違っていると思います。ご指摘がありましたらぜひお願いします。(というか、どうやろうかな、と思ったときにこれを機会にちょっとG

    パックマンを遺伝的アルゴリズムしてみた - そこはかとなく書くよ。
  • 機械学習 はじめよう 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    機械学習 はじめよう 記事一覧 | gihyo.jp
  • 「言語処理のための機械学習入門」を参考に各種モデルに対するEMアルゴリズムを実装したよ - nokunoの日記

    Amazonにもレビューを書いたのですが、高村さんの「言語処理のための機械学習入門」を読みました。実はこのを読むのは2回目で、1回目はドラフト版のレビューをさせていただく機会があったのですが、そのときは「言語処理研究者のための機械学習入門」というタイトルで、ちょっと敷居が高いのではないかとコメントしたら「研究者」の部分が削られたという経緯があったりしました。 それはともかくとして、以前読んだときは時間もなくて実装までする暇はなかったのですが、今度はもうちょっとじっくり読みたいなということで、このブログに書いてみようと思います。EMアルゴリズムは教師なし学習を確率モデルと最尤推定でやろうとするときに必ず出てくる手法で、隠れ変数や欠損値を含む色々なモデルに適用できる汎用的なフレームワークになっています。一般的には混合ガウス分布の場合をまず説明して、それがk-means法の一般化した形になって

  • OpenBayesの使い方(1) - 人工知能に関する断創録

    ベイズネットワークのゲームへの応用(2008/5/2)の続き。というわけでPythonのベイズネットのライブラリであるOpenBayesの使い方をちょっとまとめておきます。 ここでは、OpenBayesのチュートリアルにあるSprinklerというベイズネットを作成してみます。この例はいろんなとこでよく見るなぁ。 このベイズネットのノードは、 Cloud (C) : 曇っているか? Sprinkler (S) : スプリンクラーで水をまいたか? Rain (R) : 雨が降ったか? WetGrass (W) : 芝生が濡れているか? を表している。各ノードはTrue(1)かFalse(0)の2値を取る。矢印は因果関係を表している。 C→S : 曇っているかによってスプリンクラーを使うか決まる C→R : 曇っているかによって雨が降るか決まる S→W : スプリンクラーを使ったかによって芝生

    OpenBayesの使い方(1) - 人工知能に関する断創録
  • 『マッチ箱の脳』人工知能ジェネテックアルゴリズムをPythonでやってみた - 牌語備忘録 -pygo

    マッチ箱の脳 WEB ver『‚Ù‚Ú“úŠ§ƒCƒgƒC�V•· - ‚ª‚ñ‚΂ê�X�ì‚­‚ñ‚̈â“`Žq‚­‚ñ』のマッチ箱で作るGAをPythonでやってみた。 人工知能の一つである「遺伝的アルゴリズム」 (以後、Genetic Algorithm=GAと呼ぶ) ‚Ù‚Ú“úŠ§ƒCƒgƒC�V•· - ‚ª‚ñ‚΂ê�X�ì‚­‚ñ‚̈â“`Žq‚­‚ñ プログラムの仕様はこちら 問題は問1〜10まですべて3択(問題はこちら) Python [訂正] 若干修正 [訂正] 重複したリスト削除 [訂正] frozenset()をset()に [訂正] #!/usr/local/bin/pythonを#!/usr/bin/env pythonに 修正:一部削除 #!/usr/bin/env python # *-# -*- coding: utf-8 -*- # Gene

    『マッチ箱の脳』人工知能ジェネテックアルゴリズムをPythonでやってみた - 牌語備忘録 -pygo
  • スペル修正プログラムはどう書くか

    Peter Norvig / 青木靖 訳 先週、2人の友人(ディーンとビル)がそれぞれ別個にGoogleが極めて早く正確にスペル修正できるのには驚くばかりだと私に言った。たとえば speling のような語でGoogleを検索すると、0.1秒くらいで答えが返ってきて、もしかして: spelling じゃないかと言ってくる(YahooMicrosoftのものにも同様の機能がある)。ディーンとビルが高い実績を持ったエンジニアであり数学者であることを思えば、スペル修正のような統計的言語処理についてもっと知っていて良さそうなものなのにと私は驚いた。しかし彼らは知らなかった。よく考えてみれば、 別に彼らが知っているべき理由はないのだった。 間違っていたのは彼らの知識ではなく、私の仮定の方だ。 このことについてちゃんとした説明を書いておけば、彼らばかりでなく多くの人に有益かもしれない。Google

  • 1