粒子群最適化
群知能に属するアルゴリズム 粒子群最適化を実装する.
このSphere functionと Rosenbrock functionに粒子群最適化を適用する.
粒子群最適化
これは多次元空間において位置と速度を持つ粒子群でモデル化される。これらの粒子はハイパー空間を飛びまわり、最善な位置を探す。位置の評価は適応度関数で行う。群れのメンバーは良い位置について情報交換し、それに基づいて自身の位置と速度を調整する。このコミュニケーションは主に次の二種類の方法でなされる。
最も良い位置にいる粒子が全体に通知される。
ローカルなベストの位置にいる粒子が近傍の粒子群に通知される。位置と速度の更新は以下の式で行われ、これが繰り返される。
-
- は、慣性定数。多くの場合 1 より若干小さい値が最適である。
- と は群のうちで良い位置に向かう粒子の割合。1 に近い値が多くの場合最適である。
- と は の範囲の値をとる乱数。
- は、その粒子がこれまでに発見したベストな位置
- は群全体としてこれまでに発見したベストな位置。これをローカルなベスト にすれば、上記の後者の方法(近傍への通知)になる。
アルゴリズム
- 各粒子について と をランダムに初期化。値の範囲は問題の設定に依存する。
- を現在位置に初期化。
- を群全体で最も良い適応度を持つ粒子の位置に初期化。
- での適応度がしきい値より小さく、かつループ回数が事前に設定した回数に達していないうちは、以下を繰り返し実行する。
- 各粒子について、以下を実行する。
- 上述の式に従って を更新する。
- 新たな位置での適応度を計算する。
- での適応度よりも良い値が得られたら、 を置き換える。
- での適応度よりも良い値が得られたら、 を置き換える。
- 上述の式に従って を更新する。
- 各粒子について、以下を実行する。
Linuxの勉強日記 & top500
Linuxでは
cat /proc/cpuinfo
でPCのスペックを確認できたが, macはunuixベースなので
system_profiler -listDataTypes
で表示させる.
top500:
世界で最も高速なコンピュータシステムの上位500位までを定期的にランク付けし、評価するプロジェクトである。1993年に発足し、スーパーコンピュータのリストの更新を年2回発表している。ハイパフォーマンスコンピューティング(HPC)における傾向を追跡・分析するための信頼できる基準を提供することを目的とし、LINPACKと呼ばれるベンチマークによりランク付けを行っている。リストの作成はマンハイム大学、テネシー大学、ローレンス・バークレイ米国立研究所の研究者らによる。毎年6月のInternational Supercomputing Conference(ISC)および11月のSupercomputing Conference(SC)の開催に合わせて発表されている。(wiki調べ)
コンピュータシステムのハードウェアやソフトウェアの性能を測定するための指標
LINPACK:
システムの浮動小数点演算性能を評価する
lubuntu CUI
lubuntuをCUI起動オンリーに変更した。
ランレベル1 (シングルユーザモード) sytemctl set-default rescue.target
ランレベル3(CUI マルチユーザモード) systemctl set-default multi-user.target ランレベル5(GUI マルチユーザモード) systemctl set-default graphical.target
画面のサイズがおかしいので、
以下のサイトで解像度変更
https://forums.ubuntulinux.jp/viewtopic.php?pid=44052
カーソルがチカチカして目が痛いので
setterm -blink off
とするも解決せず...
とりあえず
setterm -cursor off
でカーソル消した。
anaconda2とanaconda3の共存
jupyter notebookにおいて、python2と3を共存させた。
kaggleにも登録した。
pythonによる機械学習
データサイエンティスト養成読本 [ビッグデータ時代のビジネスを支えるデータ分析力が身につく! ] (Software Design plus)
- 作者: 佐藤洋行,原田博植,下田倫大,大成弘子,奥野晃裕,中川帝人,橋本武彦,里洋平,和田計也,早川敦士,倉橋一成
- 出版社/メーカー: 技術評論社
- 発売日: 2013/08/08
- メディア: 大型本
- この商品を含むブログ (13件) を見る
3種類(setosa, versicolor, virginica)のあやめの
蕚片(Sepal), 花弁(Petal)のそれぞれ長さと幅が記載されいてるデータを使用.
fig.1 3種類のあやめ
fig.2 蕚片(Sepal)と花弁(Petal)
イメージを沸かしたかったので画像も拾ってきた.
:Unixコマンドなどを並んで実行する
:UNIXで使用するシェルのひとつで、GNUプロジェクトによるプロダクトのひとつである
サーバーエンジニア
:サーバーとは、ネットワーク上において他のパソコンにさまざまな機能やサービスを提供するコンピューターのことを指します。このサーバーを構築・運用する 職種が、サーバーエンジニアです。
pip
:pythonのパッケージ管理システム
中2から使っているVistaの仮想マシンVMVirtualboxにUbuntu14.04をインストールした.
ずっとmac OSを使っていたので, たまにはLinuxにも挑戦したくなった.
ついでに
プロセッサ:Intel(R) Atom(TM) CPU Z3735F @ 1.33GHz 1.33GHz
実装RAM :2.00GB
にもVM VirtualVoxを入れて, こちらにはelementary OS 0.3 Freyaを導入.
Guest Additionsを追加
これを追加するとフルスクリーンのサイズも可能
上部のメニューからDevices -> Insert Guest Additions CD Image を選択
(これでCDROMのデータをパソコンにマウント)
左上のアプリケーションからFilesをクリックしてエクスプローラーを表示
左のデバイスの項目のところにVBOXADDITIONSというのが表示されていればマウント成功
データは/media/ユーザー/VBOXADDITIONSバージョン/ ディレクトリにある
$cd /media/ユーザー/VBOXADDITIONSバージョン/ に移動して次のコマンドを実行
$sudo sh VBoxLinuxAdditions.run
管理者で実行
再起動するとディスプレイに最適化された解像度になる