2018-07-01 SGDの実装を読んでみる(その1) Scikit-learn Cython Numpy Scikit-learnのSGDに関係あるソースコードを読んだ。 モチベーション 主要なクラス概観 高速化の要因(予想) 続きを読む
2018-06-17 CythonでNumpyを使ってみたかったけど脱線した Cython Numpy Python3 Scikit-learn Cythonで高速な最適化アルゴリズムを実装したくなって調べ事をしてみた。 わからないことだらけ。 Cythonを使う理由 Scikit-learnのソースコードを読んでみる CythonのNumpyに関するチュートリアルを読んでみる 続きを読む
2018-06-02 最小全域木からの脱線に次ぐ脱線 データ構造 最小全域木というキーワードが会話に出てきて、ふと思った。 定義は想像できるけど、それを求めるアルゴリズムはわかんない。 調べてたら脱線に次ぐ脱線でいろいろ調べた。 最小全域木 プリム法 クラスカル法 Union Find ならし計算量(償却計算量) 続きを読む
2018-05-27 PythonのGIL(Global Interpreter Lock) Python3 Cython Scikit-learnにあるSAG(Stochastic Averaged Gradient)のコードを読んでたら、"nogil"という見慣れない単語が出てきたので調べた。 nogilはGIL(Global Interpreter Lock)をリリースするためのもの CythonではGILの取得とリリースをプログラマが管理する必要がある Pythonのインタプリタを必要としない部分ではGILをリリースしたほうが全体として速くなる(ようである) 続きを読む
2018-05-26 Jupyter+Firefox+XKeymacs Jupyter JupyterをEmacsキーバインドで使いたかったから環境構築した。 XKeymacsのインストール(アップデート) Firefoxのインストール キーバインドの設定と確認 続きを読む
2018-05-20 Windows10でのPythonの開発環境構築&テスト Python3 Cython Jupyter Pythonの開発環境を整えた。 具体的には以下のことをした。 Anacondaのインストール Anaconda Navigatorで仮想環境の構築 Jupyter NotebookとCythonの試用 続きを読む