和風ましらに

機械学習とか勉強したことを書き認めるブログ

Python

勾配ブースティングを説明してみた

勾配ブースティングについて、ざくっと整理。 アルゴリズムの基本原理は、 「構築した学習器まででの予想値と実測値の残差(勾配)を次の学習器で学習する。」 目的変数が二乗誤差の場合は、 実測値と予測値の差分が、次の学習器での学習対象となります。 な…

Google Colaboratoryでローカル環境と連携させる方法

Google Colabとは、環境構築がほぼ不要でJupyter Notebookを触ることができ、GPUも一定無料で使えるという最強のサービスのことです。 Preferred Networks が最近出した記事で触る機会があったのと、データを読み込ませる連携に困ったのでメモ Google Develo…

matplotlibのsubplotを使った図の作成

matplotlibの使い方、subplot関数の使い方についてまとめました 基本準備 Irisのデータを使う import numpy as np import pandas as pd import matplotlib.pyplot as plt df = sns.load_dataset("iris") 通常のグラフ作成 軸の範囲・表示値設定 xlim:x軸の…

pandasでDataFrameを表示させるときに省略させない方法

何もしないでDataFrameを表示させると、カラムが省略されたり行が省略されたりする。 メモ書きに、DataFrameを省略させない方法について記載する。 カラムを省略させない方法 以下のコードをDataFrameを表示させる前に書いておけばいい。 pd.set_option('dis…

Seabornによるグラフの作成 ~相関関係の可視化~

前回に引き続き、seabornの中の関数について、自分のメモがてら紹介していきます。 今回は相関関係の可視化を中心に取り扱います。 import seaborn as sns import pandas as pd df = sns.load_dataset("iris") #データ準備 df['test'] = df['petal_length'] …

Seabornによるグラフの作成 ~factorplot関数~

グラフを作成する際に、良く使うseabornを紹介します。 seabornは簡単に統計グラフを書くことができる関数を多数提供しています。 ここでは、factorplot関数を使ったグラフ作成を中心に紹介します。 import seaborn as sns df = sns.load_dataset("iris") #…

Pandas関数について -ビニング処理(ビン分割)

pandasでビニング処理(ビン分割)を行うにはcut関数、またはqcut関数を使用。 それぞれ、 cut関数は、最小値と最大値から、等間隔に切ってビン分割するのに対して、 qcut関数は、ビンの中の値の数を揃えてビン分割するという違いがある。 cut関数 第一引数x…

Pandas関数について -値の並び替え・削除

前回まとめた関数以外に、よく使う関数の一覧 nissyl.hatenablog.com 値の並び替え sort_values関数 DataFrame内のカラムの値に基づいて、並び順をソートする。 defaultは昇順。降順にする場合は、"ascending = False"にする。 (例) df.sort_values('petal_l…

Pandas関数について -集計する時によく使うもの

前回のNumpyの使い方に引き続き、 nissyl.hatenablog.com 今回はPandas関数で、集計する際によく使う「groupby関数」「pivot_table関数」について整理。 Irisのデータセットを使って、色々触っていきます。 データ準備 [in] import sklearn,seaborn as sns i…

Numpy関数について -集合関数系

numpyの中のよく使う集合関数について整理。 単にデータ処理するだけでなく、エラーの原因を調べるためにも重宝します。 よく使う集合関数 insersect1d関数 重複しているものだけを取り出したい時。 (例) [in] np.intersect1d([1, 3, 4, 3], [3, 1, 2, 1])…

Numpy関数について -基本操作

この記事では、Pythonを使用してデータ処理をする上で必須なNumpy関数について整理。 集約関数 mean関数 平均を算出する関数。 (例) [in] import numpy as np nobel_lab = np.random.randn(5,4) [out] array([[ 0.06561081, -1.15944786, 0.72381315, 0.22…