タグ

ブックマーク / darden.hatenablog.com (3)

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

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

    tsu-nera
    tsu-nera 2017/06/10
  • DEAP - Pythonと機械学習

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

    DEAP - Pythonと機械学習
  • PoloniexのAPIを使ってBitcoin価格データの取得 - Pythonと機械学習

    Poloniexは仮想通貨の取引所です。かなり規模が大きく色々な仮想通貨を取り扱っています。 Python用のAPIを公開しているので、Python上からPoloniexにアクセスしていろいろな事ができるみたいです。 PoloniexのサイトでAPIの使い方を調べてみましたがよくわからないのでWeb上を検索していたら、PoloniexへのアクセスをまるごとPythonのモジュール化してくれるコードをGithubで見つけました。 インストール方法や使い方など丁寧に書かれてあるので、すごくわかりやすいです。 ページ右上のClone or downloadタブよりDownload ZIPzipファイルをダウンロードします。 ダウンロードしたpython-poloniex-master.zipを解凍し、解凍されたフォルダ内でsetup.pyを実行します。 python setup.py inst

    PoloniexのAPIを使ってBitcoin価格データの取得 - Pythonと機械学習
  • 1