タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

GAに関するtsu-neraのブックマーク (6)

  • 遺伝的アルゴリズム - Pythonと機械学習

    目次 目次 はじめに 遺伝的アルゴリズム 用語説明 ステップ1(初期世代の作成) ステップ2 (選択) ステップ3 (交叉) ステップ4 (突然変異) Pythonで実装 実行結果 はじめに 機械学習では重みの最適化に勾配降下法が一般的に採用されているようですが、なぜだろう?と前から疑問に思っていました。 確かに勾配降下法はコスト関数の勾配方向に向かって重みを更新するだけなので、非常に簡単に実装できるのですが、学習率をうまく調整しないと発散したり、逆に学習が中々進まなかったりという問題があります。 極値解にも落ち入り易く、またコスト関数が複雑すぎて勾配が計算できない場合には使えません。 あくまで今の私にとってですが、勾配降下法はあまりいい印象が無いです。 そこで遺伝的アルゴリズムを使って重みを最適化したらどうかな?というのが今回の趣旨です。 遺伝的アルゴリズム 昔仕事で遺伝的アルゴリズム使

    tsu-nera
    tsu-nera 2017/06/10
  • ドウジンテイスウ.log — 遺伝プログラムで遊んでみた

    仕事探しなう アイコンは googLeNetが99%超の確率でルーペと認識する画像。 2016//8/17 独自ドメインに移行してみました。旧:sage-t.tumblr.com → 新:t.doujin-constant.net です。 tumblrの仕様として旧ドメインから転送されるので、リンク等はそのままで大丈夫です。 If you want to read some articles in English, please put a comment or send me a message. I will translate them. 今回は、pythonの遺伝アルゴリズム用ライブラリdeapを使って、関数の回帰を試した後○×ゲームaiを育ててみました。 遺伝アルゴリズム自体はニコ動で見かけていたので知っていたのですが、可変個数の遺伝子を扱うならどうすればいいのかとは前々から思

    ドウジンテイスウ.log — 遺伝プログラムで遊んでみた
  • 遺伝的アルゴリズムに入門するときに参考になったスライドとOneMax問題の実装 | もふもふ技術部

    概念と全貌の理解 まずはアルゴリズムの概念と全貌を理解したいのでインプットしていきます。 こちらはサックリ全貌が理解出来ます。わかりやすいです。 生物界の進化の過程を模倣したアルゴリズムなので直感的に理解しやすいと思います。細かいところはともかくたぶん一回読めはなんとなくわかるはず。 OneMax問題 Pythonの遺伝的アルゴリズムのライブラリDeapを使って実装していきます。 OneMax問題という非常に簡単な問題を遺伝的アルゴリズムで解いていくわけなのですが、OneMax問題というのは、0,1でランダムに初期化されたビット配列を全て1にするという非常にシンプルな問題です。 例えば初期化時の個体が、 [1,0,1,1,0,0,0,1,0] だったものを遺伝的アルゴリズムで進化させることで [1,1,1,1,1,1,1,1,1] こういう個体に近づけていくということです。 早速実装してみ

    遺伝的アルゴリズムに入門するときに参考になったスライドとOneMax問題の実装 | もふもふ技術部
  • DEAP - Pythonと機械学習

    目次 目次 はじめに 使い方の解説 creator.create()関数 適応度の定義 個体の定義 base.Toolbox.register()関数 遺伝子を作成する関数 個体を作成する関数 世代を作成する関数 目的関数 交叉関数 突然変異関数 選択関数 注意点 main関数内の処理 個体にnumpyのndarrayを使う場合 遺伝子が連続値の場合 変更点 実行結果 はじめに Pythonで遺伝的アルゴリズムのライブラリーが無いか検索してみたところ、どうもDEAPというライブラリーが良いらしいので使い方を調べてみることにしました。 ソースコードはGitHub上にあげられています。 PyPIにも登録されているので、pipでインストールできます。 pip install -U deap DEAPは遺伝的アルゴリズムだけでなく、他にも色々な進化的計算のアルゴリズムが実装されているみたいです。

    DEAP - Pythonと機械学習
  • PythonのDEAPが面白そう

  • Pythonの進化計算ライブラリDeap - Qiita

    DEAP概要 Pythonで使える遺伝的アルゴリズムライブラリDeapを紹介したいと思います。 Pythonの遺伝的アルゴリズムライブラリは他にもPyevolveというのがあるのですが、Deapの方が開発が盛んらしいので、こちらを使ってみたいと思います。 以下がDeapで使用できる主なアルゴリズムおよび機能です。 GA 遺伝的アルゴリズム GP 遺伝的プログラミング ES 進化戦略(CMA-ESなど) 多目的最適化(NSGA-II, SPEA-II) Co-evolution 並列化 個体の中の優等生の保持 定期的なチェックポイント ベンチマーク 進化の系図 Particle Swarm Optimization, Differential Evolution, Estimation of Distribution Algorithm Example 今回はGAのExampleを解説してい

    Pythonの進化計算ライブラリDeap - Qiita
  • 1