-
Notifications
You must be signed in to change notification settings - Fork 0
DNET_DataMiningDataSet
サンプルデータセット
-
重回帰分析などで利用できる。
from sklearn import datasets boston = datasets.load_boston() df_data = pd.DataFrame(boston.data, columns=boston.feature_names) df_target = pd.DataFrame(boston.target, columns=['MEDV']) df = pd.concat([df_data, df_target], axis=1) df.head()
-
説明
| 変数名 | 変数の説明 |
|---|---|
| crim | 一人当たりの犯罪率=町別の犯罪率 |
| zn | 25,000 平方フィート超の区画の住宅地の比率=広い家の割合 |
| indus | タウン毎の非小売りビジネスエーカーの比率=町別の非小売業の割合 |
| chas | チャールズ川変数 (= 1 川に隣接, = 0 隣接しない)=川の隣か |
| nox | NOx濃度(0.1ppm単位) |
| rm | 1戸当たりの平均部屋数 |
| age | 1940年より前に建てられた持ち家の割合=古い家の割合 |
| dis | 5つあるボストン雇用センターまでの加重距離=主要施設への距離 |
| rad | 主要高速道路へのアクセス性の指数 |
| tax | 10,000ドル当たりの固定資産税率 |
| ptratio | 町別の生徒と先生の比率 |
| black | 町ごとの黒人の割合 |
| lstat | 低所得者人口の割合 |
| medv | 「住宅価格」(1000ドル単位)の中央値 |
補足(最新化)
load_boston()は倫理的な問題(black列など)を理由に非推奨となり、 scikit-learn 1.2 で削除された。代替としては California housing(fetch_california_housing())や Ames housing(fetch_openml(name="house_prices"))が案内されている。
古典的で非常に簡単なマルチクラス分類データセット
from sklearn import datasets
iris = datasets.load_iris()
df_data = pd.DataFrame(iris.data, columns=iris.feature_names)
df_target = pd.DataFrame(iris.target, columns=['species'])
df = pd.concat([df_data, df_target], axis=1)
df.head()※ ソースはUCIのデータセット、分析例はデータマイニング(DM)- Pythonの該当節を参照。
アイリス・データセットと同じ。
from sklearn import datasets
wine = datasets.load_wine()
df_data = pd.DataFrame(wine.data, columns=wine.feature_names)
df_target = pd.DataFrame(wine.target, columns=['classes'])
df = pd.concat([df_data, df_target], axis=1)
df.head()※ ソースはUCIのデータセット
古典的で非常に簡単な二項分類データセット
from sklearn import datasets
breast_cancer = datasets.load_breast_cancer()
df_data = pd.DataFrame(breast_cancer.data, columns=breast_cancer.feature_names)
df_target = pd.DataFrame(breast_cancer.target, columns=['diagnosis'])
df = pd.concat([df_data, df_target], axis=1)
df.head()※ ソースはUCIのデータセット、分析例はデータマイニング(DM)- Pythonの該当節を参照。
-
2クラス分類で使用できる。
from sklearn import datasets diabetes = datasets.load_diabetes() df_data = pd.DataFrame(diabetes.data, columns=diabetes.feature_names) df_target = pd.DataFrame(diabetes.target, columns=['target']) df = pd.concat([df_data, df_target], axis=1) df.head()
-
説明
| 変数名 | 変数の説明 |
|---|---|
| Pregnancies | 妊娠回数 |
| Glucose | 経口ブドウ糖負荷試験における2時間後の血漿グルコース濃度 |
| BloodPressure | 拡張期血圧(mmHg) |
| SkinThickness | 上腕三頭筋皮膚襞厚(mm) |
| Insulin | 2時間血清インスリン(mu U/ml) |
| BMI | 肥満度(体重kg / (身長m)^2) |
| DiabetesPedigreeFunction | 糖尿病血統機能 |
| Age | 年齢(歳) |
| Outcome | クラス変数(0または1) |
補足
上の表は「Pima Indians Diabetes」データセットの説明であり、 コードで読み込んでいる scikit-learn のload_diabetes()とは別物である。load_diabetes()は 10 個の特徴量(age, sex, bmi, bp, s1〜s6)と 「1 年後の疾患進行度」を目的変数とする回帰用データセットで、 2 クラス分類には使えない。Pima Indians Diabetes(Outcome が 0/1 の 2 クラス分類)は Kaggle などから取得する。
※ ソースはUCIのデータセット
- 数字の8x8画像(画像認識用。ニューラルネットワーク(推論)の該当節を参照)
- (MNIST)よりも少し小さいデータセット(1797データ)
from sklearn import datasets
digits = datasets.load_digits()
x_train_org, x_test_org, y_train_org, y_test_org = train_test_split(digits.data, digits.target, shuffle=False)
print(x_train_org.shape, x_test_org.shape)
print(y_train_org.shape, y_test_org.shape)多出力回帰タスクに適している
数字の28x28画像(画像認識用。ニューラルネットワーク(推論)の該当節を参照)
from keras.datasets import mnist
(x_train_org, y_train_org), (x_test_org, y_test_org) = mnist.load_data()
print(x_train_org.shape, x_test_org.shape)
print(y_train_org.shape, y_test_org.shape)※ 分析例はデータマイニング(DM)- Python - CNNの該当節を参照。
10種のカテゴリからなる、50,000枚のtrainデータと10,000枚のtestデータ(32x32カラー)
from keras import datasets
(x_train,y_train),(x_test,y_test)=datasets.cifar10.load_data()※ 分析例はデータマイニング(DM)- Python - CNNの該当節を参照。
100種のカテゴリからなる、50,000枚のtrainデータと10,000枚のtestデータ(32x32カラー)
from keras import datasets
(x_train,y_train),(x_test,y_test)=datasets.cifar100.load_data()- IMDB映画レビュー感情分類
- ロイターのニュースワイヤー トピックス分類
- Fashion-MNIST ファッション記事データベース
- ボストンの住宅価格回帰データセット
https://archive.ics.uci.edu/ml/datasets
- オリジナルのデータ。
- 加工済みのデータをKaggleなどで拾うことが多い。
https://archive.ics.uci.edu/ml/datasets/Iris
https://archive.ics.uci.edu/ml/datasets/Wine
https://archive.ics.uci.edu/ml/datasets/Breast+Cancer+Wisconsin+%28Diagnostic%29
https://archive.ics.uci.edu/ml/datasets/Diabetes
※ 権限の制限により、このデータセットは利用できなくなりました。
https://archive.ics.uci.edu/ml/datasets/wholesale+customers
ググるとGitHubにCSVがあるケースが多い。
https://www.kaggle.com/datasets
※ Kaggleはデータ単品ではなく分析内容も確認できるのが強い。
https://www.imdb.com/interfaces/
https://ai.stanford.edu/~amaas/data/sentiment/
...だが、生データが使えないので、誰かが加工したデータを取って来る事になる。
- 一般的にmovie_data.csvと言うファイル名が使われている。
- Kerasデータセット中にも含まれる模様。
-
scikit-learnのサンプルデータセットの一覧と使い方 | note.nkmk.me
https://note.nkmk.me/python-sklearn-datasets-load-fetch/ -
Kaggleデータセットまとめ - Qiita
https://qiita.com/hiro6000/items/27e0847e729a703915c4 -
AI・機械学習のデータセット辞典 - @IT
https://atmarkit.itmedia.co.jp/ait/series/17285/
移行メモ
- CIFAR10 / CIFAR100 の「10種(100種)のカテゴリのそれぞれに 50,000枚のtrainデータと10,000枚のtestデータ」は、 実際にはカテゴリ全体での枚数のため「〜からなる、」に修正した。
- Keras の MNIST は 28x28 画像のため「8x8」を修正した (8x8 は scikit-learn の
load_digits()の方)。- 糖尿病データセットは、コード(scikit-learn の
load_diabetes())と 説明の表(Pima Indians Diabetes)が別物のため、補足で明示した。- BMI の式「肥満度(体重kg/身長m)^2」は括弧の位置が誤っていたため 「体重kg / (身長m)^2」に修正した。
- 「少し小さデータセット」→「少し小さいデータセット」。
- 同名の見出し(「アイリス・データセット」「ワイン・データセット」 「乳がんデータセット」「糖尿病データセット」)が scikit-learn 節と UCI 節で 重複し GitHub Wiki でアンカが衝突するため、括弧で出典を補って一意にした。 Keras 節と 見つけ次第 節で重複する「IMDB映画レビュー感情分類」も同様。
- Keras データセットの本文の無い見出し 4 件は箇条書きにまとめた。
- 元 Wiki の「戻る」の並びで DataSet が HTML 実体参照(
DataSet)で 書かれていたが、PukiWiki のページ内リンク自動生成を避けるための記法と 思われるため、通常の文字列に戻した。- PukiWiki のページ内アンカ(
#xxxxxxxx)は GitHub Wiki では再現できないため、 他ページのアンカを指すリンクは「〜(ページ名の該当節を参照)」の形に置き換えた。 同一ページ内のアンカは見出しから生成されるアンカに張り替えた。
Tags: 移行, データマイニング, データセット, scikit-learn, Keras, UCI, Kaggle, MNIST, CIFAR
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。