機械学習

librosa-Pythonで音声処理, 音楽解析

librosaは音楽・オーディオの処理と解析ためのPythonパッケージです。librosaの実験 | 音声ロード | 音楽情報検索 | beat tracker | 音声の可視化 | harmonic-percussive | スペクトログラム

Matplotlibでの積み上げ棒グラフ

Matplotlib での積み上げ棒グラフを作成する方法について解説します。積み上げ縦棒グラフ | 積み上げ縦棒グラフ (割合) |積み上げ棒グラフ |積み上げ横棒グラフ (割合)

mlxtendの可視化

mlxtendの可視化の紹介と実験です。主成分分析(PCA Correlation)|学習曲線(Learning Curve)|混同行列(Confusion Matrix)|決定境界(Decision Regions)|線形回帰(Linear Regression)

TensorFlowの公平性指標(Fairness Indicators)

目次 1. TensorFlowのFairness Indicators 1.1 公平性指標(Fairness Indicators)とは 1.2 Fairness IndicatorsのAPI 2. 実験 2.1 環境構築 2.2 データセット 2.3 公平性指標 関連記事: 機械学習モデルを解釈するSHAP eli5でモデルの解釈   1. TensorFlowのFairness Indicators 1.1 公平性指標(Fairness Indicators)とは Fairness Indicators はTensorFlow Model Analysis (TFMA)のパッケージにあり、公平性メトリックの計算するライブラリです。既存のツールの多くは、大規模なデータセットやモデルではうまく機能しません。しかしTensorflowのFairness Indicatorsでは、10億ユーザーのシステムで動作できるツールで大規模に強いのが特徴です。 公平性指標でやることは、 データセットの分布 定義されたユーザーグループ間のモデルのパフォーマンスを評価 個々のスライスを深く掘り下げて、根本的な原因で改善 です。 1.2 Fairness IndicatorsのAPI パッケージ: Tensorflowデータ検証(TFDV) Tensorflowモデル分析(TFMA)公平性指標 What-Ifツール(WIT) 資料https://www.tensorflow.org/tfx/guide/fairness_indicators#render_fairness_indicators GitHub: https://github.com/tensorflow/fairness-indicators   2. 実験 環境:Google Colab …

TensorFlowの公平性指標(Fairness Indicators) Read More »

MLXTENDのでのアソシエーション分析

  目次 1. Mlxtendの概要 1.1 Mlxtendとは 1.2 頻繁なパターンのモジュール 1.3 mlxtendのインストール 2. Apriori 2.1 Aprioriのアルゴリズム 2.2 Aprioriの実験 3. 相関ルール 2.1 Association Rulesのアルゴリズム 2.2 Association Rulesの実験 関連記事: 協調フィルタリング(Collaborative filtering)レコメンドエンジン レコメンドのランキングの評価指標 (PR曲線とAUC, MRR, MAP, nDCG)   1. Mlxtendの概要 1.1 Mlxtendとは Mlxtendは machine learning extensionsの英語略称で、データサイエンティストの作業のライブラリです。サンプルデータ、前処理、モデル作成、モデル評価、可視化などのモジュールを提供しています。今回はfrequent_patternsのモジュールを解説したいと思います。 Mlxtendのモジュール:http://rasbt.github.io/mlxtend/USER_GUIDE_INDEX/ Mlxtendのgithub:https://github.com/rasbt/mlxtend   1.2 頻繁なパターンのモジュール 頻繁なパターン(frequent_patterns)のモジュールはapriori、association_rules、fpgrowth、fpmaxがあります。一緒に何が変われるかというパターンを理解するために、アソシエーション分析のアルゴリズムのモジュールです。   1.3 mlxtendのインストール Colabの環境で、mlxtendを更新します。 !pip install mlxtend –upgrade import mlxtend mlxtend.__version__ 0.19.0 …

MLXTENDのでのアソシエーション分析 Read More »

時系列データの外れ値の統計的な求め方(1次元)

時系列データの外れ値の統計的な求め方(1次元)の解説 – S-Analysis
外れ値とは、統計において他の値と比べて極端に大きな値かもしくは極端に小さな値のことを指します。
外れ値とは|外れ値と異常値の違い|四分位範囲(IQR)|zスコア|pythonの実験

PyCaretでの異常検知

目次 1. 異常検知のPyCaretの概要 1.1異常検知とは 1.2異常検知の種類 1.3 PyCaretのライブラリ 2. 実験 2.1 環境構築 2.2 データロード 2.3 モデル学習 2.4 モデル推論 2.5 モデルの保存と読み込む 関連記事:PyCaret(オープンソースの自動機械学習:AutoML) 1. 異常検知のPyCaretの概要 1.1異常検知とは 異常検知(Anomaly detection) とは、データの中から異常な状態、通常のパターンとは異なる挙動を検出することです。 1.2異常検知の種類 異常検出の手法は主に3つの種類があります。 1)教師なし異常検出:ラベルがなくデータで異常モデルを学習します。 2)教師あり異常検出:「正常」および「異常」とラベル付けされたデータセットで異常モデルを学習します。 3)半教師あり異常検出:正常データのみで学習されます(異常はありません)。正常データからテストデータを推測します。   1.3 PyCaretのライブラリ pycaret.anomalyモジュールは、教師なし異常検出と教師あり異常検出の手法を提供します。 PyCaretは異常検出のアルゴリズムが12つあります。 abod     Angle-base Outlier Detection cluster   Clustering-Based Local Outlier cof        Connectivity-Based Local Outlier iforest   Isolation Forest histogram          Histogram-based Outlier Detection …

PyCaretでの異常検知 Read More »

Autoviz: データ自動可視化

目次 1 Autovizの概要 1.1 Autovizとは 1.2 Autovizのライブラリ 2. 実験 2.1 データロード 2.2 Autovizの探索的データ解析のEDA 3 まとめ 1 Autovizの概要 1.1 Autovizとは Autovizはデータセットを自動可視化するライブラリです。データのファイルタイプとしては、Pandasのデータフレーム、CSV、 txt、 json等のファイルから1行のコードで自動可視化できます。   1.2 Autovizのライブラリ AutoViz(filename, sep, depVar, dfte, header, verbose, lowess, chart_format¸ max_rows_analyzed, max_cols_analyzed) AutovizのAPI: filename- ファイル名を入力し、データフレームを使用する場合は、filenameを空の文字列(””)として指定します。 sep- ファイル内の区切り文字です。 depVar- データセット内のターゲット変数 dfte- パンダのデータフレーム header- ファイル内のヘッダー行の行番号 verbose-  0、1、または2の3つの許容値があります。 lowess- ターゲット変数に対する連続変数の各ペアの回帰直線の設定。小さなデータセットに非常に適しています。 chart_format-  SVG、PNG、またはJPGに設定することができます。 max_rows_analyzed- チャートの表示に使用される行の最大数を制限します。 max_cols_analyzed- 分析できる連続変数の数を制限します。   Github: https://github.com/AutoViML/AutoViz   2. 実験 …

Autoviz: データ自動可視化 Read More »

Pulearnでの陽性のラベルとラベルなしデータの分類分析

  目次 1. Pulearnの概要 2. 実験 2.1 データロード 2.2 SVCモデル 2.3 BaggingPuClassifierのSVCモデル 3. まとめ   1.Pulearnの概要 Pu learningとは Learning from Positive and Unlabeled dataの英語略称で、陽性のラベルとラベルなしデータで学習です。通常の二項分類分析には、1はラベル陽(positive)、0は陰性(negative)であるデータセットです。一方で、0は陰性ではなく、明示的に与えられないデータもあり、そのようなデータセットはpu learningの手法を利用します。   今回の記事では、pulerningを実験したいと思います。   論文:https://cseweb.ucsd.edu//~elkan/posonly.pdf 資料:https://pulearn.github.io/pulearn/   2.実験 環境:Google Colab データセット:陽性のラベルとラベルなしデータセットを見つけないので、scikit-learnの二項分類のbreast_cancerのデータセットにします。 モデル: SVCモデル vs BaggingPuClassifier SVCモデル   2.1 データロード ライブラリのインストール !pip install pulearn   データロードします。 569件のデータは陽性のラベルが357件あります。 import pandas as pd import numpy as np from sklearn.datasets import load_breast_cancer   cancer = load_breast_cancer() data = pd.DataFrame(np.c_[cancer[‘data’], cancer[‘target’]], columns= np.append(cancer[‘feature_names’], [‘target’]))   X = data.drop(columns=[‘target’]) …

Pulearnでの陽性のラベルとラベルなしデータの分類分析 Read More »