-R- 正則化パラメータの選択

Lasso推定値は正則化パラメータλの値に依存するため,λの値が異なると当然Lasso推定値も異なってきます. 特に,Lasso推定値の違いは変数選択の結果の違いに直接影響してくるため,正則化パラメータの値の選択は重要です. 前回の投稿(アメリカの犯罪例にLa…

-R- glmnetパッケージをインストール

ターミナルからRを立ち上げます. $ r R version 3.6.0 (2019-04-26) -- "Planting of a Tree" Copyright (C) 2019 The R Foundation for Statistical Computing Platform: x86_64-apple-darwin17.7.0 (64-bit) R is free software and comes with ABSOLUTEL…

-gnuplot- gnuplotのインストール (with Aquaterm)

macOSにHomebrew経由でgnuplotをインストールすると,terminal type が 'qt' のみとなってしまい,非常に困ってしまいます. 以前は,Homebrewのインストールで $ brew install gnuplot --with-aquaterm とすれば良かったのですが,現段階では何故かエラーと…

-Python- 主成分分析

主成分分析に関するメモです. 主成分分析を行うには scikit-learn パッケージを使用して,sklearn.decomposition の PCA でインスタンスを生成します. 以下の例では,Davis データを用いて主成分分析を行っています. Davisデータ(Davis.csv)はJupyter N…

-Python- 交差検証法によるテスト誤差の推定

K重交差検証法によってテスト誤差を推定する際のメモです. K重交差検証法の計算プロセスは以下のようになります. 学習方法と損失:チューニングパラメータをもつアルゴリズム,損失 入力:データ 入力データを要素数がほぼ等しいK個のグループに分割する.…

損失関数,トレーニング誤差,テスト誤差

データ数を20,10組のデータセットに対してトレーニング誤差をプロットした際の実装例のメモです. まずはパッケージを読み込みます. >>> import numpy as np >>> import matplotlib.pyplot as plt >>> import scipy.stats >>> パラメータ範囲を設定します…

-Python- 共分散,相関係数

Pythonのnumpyのnp.covやnp.corrcoefを使い,データから標本共分散,標本相関係数を求める例のメモです. 関数には, データの次元 x データ数 のサイズのデータ行列を入力します. >>> import numpy as np >>> from sklearn.datasets import load_iris >>> …

-Python- 分位点

標準正規分布 $N(0, 1)$の上側$\alpha$点を$z_{\alpha}$と表します. Pythonでは sp.stats.norm.ppf を使うと正規分布の分位点の値が得られます. Pythonでの実装は以下のようになります. >>> import scipy as sp >>> from scipy.stats import norm の0.7点…

期待値と分散

Pythonでは,確率分布からデータを生成するための関数 np.random や scipy.stats として提供されています. サンプルの生成で使うのは,以下のような関数です. 正規分布 np.random.normal(loc = 0.0, scale = 1.0, size = None) オプションのlocは期待値,s…

-Python- サイコロ投げ

等確率で出るサイコロの目をPythonで再現するには,ランダムに要素を取り出す関数 np.random.choice を用います. >>> import numpy as np >>> np.random.choice(np.arange(1, 7), 10) array([5, 6, 3, 2, 1, 4, 3, 3, 2, 2]) >>> np.arange(1, 7) は,標本…

-R- Windows10にRStudioをインストール

WIndows10にRStudioをインストールした際のメモです. まずは,CRANからRStudioのインストーラーをダウンロードします. "Download R for Windows" を選択して,その後,base > Download R 3.6.0 for Windows (3.6.0は現時点でのバージョン)をクリックする…

-R- Jupyter NotebookでRを使う

以前に,Homebrew経由でRをインストールする記事を投稿しました. 今回は,RをJupyter Notebookで使えるようにするための手順のメモです. まずは,ターミナルからRを起動します. $ r 続いて,IRkernelのページにある手順に従って必要になるパッケージをイ…

Homebrew経由でRをインストール

Homebrew経由でRをインストールした際のメモです. ターミナルから,以下のコマンドを入力します. $ brew tap brewsci/science 以前は,外部リポジトリの `homebrew/science` に `tap` すれば良かったようですが,外部リポジトリ `brewsci/science` に `tap…

Juliaの計算の仕組み

Juliaは, 「関数を実行したときに,与えられた引数の型情報を使い,その関数をネイティブコードにコンパイルしてから実行する仕組み」 なので,高速に計算したい場合は関数化して計算する必要があります. 以下に,円周率のモンテカルロ計算を実行した時にか…

-macOS- HomeBrew list コマンド

HomeBrewでインストールしたソフトを確認するには,ターミナルで以下のように入力します. $ brew list すると,HomeBrew経由でインストールしたものの一覧が表示されます. 一覧の中でアンインストールしたいものがあるときは,以下のように入力します. $ …

-Julia- ベクトルと行列の演算

ベクトルと行列の演算例をREPLを使って行う際のメモです. 1次元配列は要素をカンマ(,)で区切ります.また,1次元配列は列ベクトルに相当します. julia> col = [1.0, 2.0] # Column vector 2-element Array{Float64,1}: 1.0 2.0 行ベクトルは行の数が1つ…

-Julia- REPLにおけるギリシャ文字表示

JuliaのREPLではLaTeX表記でタブ補完することで,以下のような表示が可能です. julia> α β γ δ ϵ ζ η θ ι κ λ μ ν ξ ø π ρ σ τ υ ϕ χ ψ ω 入力は \alpha + tab, \beta + tab, \gamma + tab, \delta + tab, \epsilon + tab, \zeta + tab, \eta + tab, \theta…

-Julia- -q オプション

Juliaを対話的実行で使用する際には,以下のようにターミナルから"julia"コマンドを実行します. すると,以下のようにJuliaのロゴと共にREPLが起動します. $ julia _ _ _ _(_)_ | Documentation: https://docs.julialang.org (_) | (_) (_) | _ _ _| |_ __…

-Julia- 平均の計算

Juliaで平均の計算を行ってみた際のメモです.実行例はREPLで行なった結果です. まずは相加平均(算術平均)についてです. 1〜10までの整数の和の平均を求めてみます. 総和は`sum()`関数を用いて求めます. julia> x1 = [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7…

-Python v Julia- 二項分布

以前に,Pythonで二項分布のグラフをプロットする投稿をしました.今回は,同様の内容をJuliaで行ってみます. 二項分布の確率質量関数は です. 実装は以下のようになります.実装例はREPLで行った結果です. julia> using Statistics julia> using Distrib…

-Python vs Julia- 順列・組合せ

以前に,順列・組合せに関する計算をPythonで行う投稿 をしました. 今回は,それをJuliaで行ってみます.計算例はREPLで行なったものです. 順列 1, 2, 3の3つの数字の並べ方は 通りです. 階乗を求めるには factorial() 関数を使用します. julia> factori…

-Python vs Julia- 整数の乱数を発生させる

過去にPythonを用いて整数の乱数を発生させるコード例を投稿しました. その中では,20回サイコロを振ることを想定して,整数の乱数を発生させるに,Pythonで以下のように書きました. >>> import numpy as np >>> np.random.choice(np.arange(1, 7), 20) ar…

-Julia- パッケージのインストール

Juliaにおいてパッケージをインストールした際のメモです. 現時点ではバージョン1.1ですが,Julia 1.0以降では"pkgモード"が作られています. REPLを起動して"]"を入力するとプロンプトが "(v1.1)pkg>"と変わります. この状態で add "Package Name" とする…

-Julia- Plotのインストールと描画

Juliaでは,Pythonのmatplotlibのように描画用のパッケージが固定されておらず,現段階では色々と選ぶことができるようです. 描画用パッケージとして,とりあえずPlotをインストールしてみることにしました.以下はその際のメモです. REPLを起動します.そ…

-Python vs Julia- 配列についてについての比較

Python言語とJulia言語の比較を行った際のメモです. 今回は,配列についての比較です.比較を行った環境はPythonはver 3.6.6,Juliaは ver 1.1.0です.比較はREPLで行い,プロンプトが" >>> "となっているものはPythonでの実施で," Julia> "となっているも…

-Julia- データ型

Julia のデータ型についてのメモです. まずは,整数型についてです. julia> 12345 12345 julia> typeof(12345) Int64 julia> 1 1 julia> typeof(1) Int64 整数型にはInt8, 16, 32, 64, 128型がありますが,特に指定しなければInt64型として扱われるようで…

-Python vs Julia- 数値と文字列についての比較

Python言語とJulia言語の比較を行った際のメモです. 今回は,数値と文字列についての比較です.比較を行った環境はPythonはver 3.6.6,Juliaは ver 1.1.0です.比較はREPLで行い,プロンプトが" >>> "となっているものはPythonでの実施で," Julia> "となっ…

-Julia- Hello Worldから四則演算まで

前回の投稿でJuliaのインストールに成功したようなので,とりあえず,触ってみた結果のメモです. REPL(Read-Eval-Print Loop)を立ち上げて,以下のように入力してみました. まずは,お決まりの"Hello World"のプリントと,型の判定,文字列の連結です. $ …

-Julia- Julia のインストール

Julia v1.0.1をインストールした際のメモです(以下のメモはJupyter Notebookがインストールされている前提です). macOSの場合 Homebrew経由でインストールしました. まずは,Homebrewのアップデートを行なった後に, $ brew cask install julia とコマン…

wekaのインストール

Wekaはニュージーランドのワイカト大学で開発された機械学習,データマイニング用フリーソフトウェアです(関連書籍Data Mining, Fourth Edition: Practical Machine Learning Tools and Techniques ). 以下は,Wekaをインストールした際のメモです.Weka…