Matplotlib

-Python- サポートベクターマシン

サポートベクターマシンの実装例を以下の示します. import numpy as np from operator import itemgetter class SVC: def fit(self, X, y, selections=None): a = np.zeros(X.shape[0]) ay = 0 ayx = np.zeros(X.shape[1]) yx = y.reshape(-1, 1)*X indices…

-Python- 汎化,過学習

最初に多項式回帰のアルゴリズムを示します.多項式回帰とは,入力変数 に対して出力 が の多項式関数で表されるというモデルです.簡単のために,入力が1次元と仮定し,多項式の次数が で与えられるとします. ここで,はノイズを表します.このとき線形回…

-Python- リッジ回帰

線形回帰で最小化する目的関数に,パラメータの大きさの項を足して回帰を行うのがリッジ回帰です.リッジ回帰では以下の関数を最小化するようなwを決定します. この計算を実装し,可視化するスクリプトは以下のようになります. # Import Module import num…

-Python- ニュートン法

方程式 をNewton法で解いてみるスクリプトを考えます. # Definition of Function def newton1dim(f, df, x0, eps = 1e-10, max_iter = 1000): x = x0 iter = 0 while True: x_new = x - f(x)/df(x) if abs(x - x_new) < eps: break x = x_new iter += 1 if …

-Python- 勾配降下法

下式のような制約条件のない最適化問題を考えます. Minimize ここで,[TeX: f(x, y) = 5x^2 - 6xy + 3y^2 + 6x -6y] とし,[TeX: f(x, y) = k] を満たす点の集合を考えます. f の勾配は となり,点においては,その点を通る等高線の接戦に垂直方向で,kが…

-Python- Matplotlib 等高線の描画

Matplotlibを用いて等高線を描画してみます. のkをいくつか変えて曲線を描くことを考えます.上記の方程式はkを固定すると楕円になります.ここでは k = 1, 2, 3, 4, 5 のときの曲線を描いてみます. スクリプト例を示します. # Import Module import matp…

-Python- Matplotlib 複数のグラフを並べて表示

Matplotlibでグラフを並べて描画する例を以下に示します. # Import Module import numpy as np import matplotlib.pyplot as plt x = np.linspace(-5, 5, 300) sin_x = np.sin(x) cos_x = np.cos(x) fig, axes = plt.subplots(2, 1) axes[0].set_ylim([-1.5…

-Python- Matplotlib ヒストグラム

Matplotlibを使ってヒストグラムを描画する例を以下に示します. 描画する対象は,サイコロを10回振って目の合計を計算することを1,000回やったときの,目の合計の分布がどうなるのかとします. import numpy as np import matplotlib.pyplot as plt np.rand…

-Python- Matplotlib 曲線

Matplotlib で曲線を描いてみます.例として, の関数の描画をしてみます. なめらかな曲線として描画するには,ある区間について点をたくさんとってそれをxの値として,それらに対して の値を計算します. の値としてとった点の数が十分に多ければ,それを…

-Python- Matplotlib 散布図

前回と同じデータで散布図を描画するスクリプトを以下に示します. import numpy as np import matplotlib.pyplot as plt x = np.array([0, 1, 2, 3]) y = np.array([3, 7, 4, 8]) plt.scatter(x, y, color = 'r') plt.show() 前回 のスクリプトのplot関数を…

-Python- Matplotlib 折れ線グラフ

Matplotlibを使って折れ線グラフの描画例を以下に示します. import numpy as np import matplotlib.pyplot as plt x = np.array([0, 1, 2, 3]) y = np.array([3, 7, 4, 8]) plt.plot(x, y, color = 'r') plt.show() matplotlib.pyplotをpltとしてインポート…

-Python- 回帰

最初に以下のようなデータがあるとします. x = [1, 2, 3, 6, 7] y = [1, 3, 3, 5, 4] これらの原点を通る直線(y = ax)で近似するスクリプト例を示します. # Import Module import numpy as np import matplotlib.pyplot as plt # Definition of Function…