質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
NumPy

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

データマイニング

データマイニングは、購買履歴やクレジットカードの利用履歴、電話の通話履歴など企業にある大量のデータを解析して、その中に隠れたパターンやルールを探し出す技術です。DMと略されることもあります。

Q&A

解決済

1回答

1220閲覧

PCAの実行中にRuntimeWarrningが出る

tkc2020

総合スコア2

NumPy

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

データマイニング

データマイニングは、購買履歴やクレジットカードの利用履歴、電話の通話履歴など企業にある大量のデータを解析して、その中に隠れたパターンやルールを探し出す技術です。DMと略されることもあります。

0グッド

0クリップ

投稿2020/12/02 07:36

編集2020/12/03 06:11

PCAを用いて画像データの次元圧縮をしようと試みているのですが、PCAの実装にてエラーが発生してしまいます。有識者の方のお力をお借りしたいです…!
#ライブラリをロード
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
#特徴量行列を標準化
features = StandardScaler().fit_transform(image_10.T).T
#features
array([[ 0.46972 , 0.35402542, 0.35402542, 0.35402542, 0.35402542,
0.35402542, 0.35402542, 0.35402542, 0.35402542, 0.35402542,
0.60469702, 0.9132159 , 0.9132159 , 0.9132159 , 0.9132159 ,
0.9132159 , 0.9132159 , 0.9132159 , 0.9132159 , 0.9132159 ,
0.9132159 , 0.9132159 , 0.9132159 , 0.9132159 , 0.9132159 ,
0.9132159 , 0.68182674, -2.03699594, -2.21053781, -2.22982025,
0.9132159 , 0.9132159 , 0.9132159 , 0.9132159 , 0.9132159 ,
0.9132159 , 0.68182674, -1.57421761, -1.57421761, -1.57421761,
0.68182674, 0.68182674, 0.9132159 , 0.9132159 , 0.9132159 ,
0.9132159 , 0.68182674, 0.7203916 , 0.70110917, -1.59350004,
0.66254431, 0.68182674, 0.9132159 , 0.9132159 , 0.9132159 ,
0.9132159 , 0.60469702, 0.60469702, 0.7203916 , -0.20516506,
0.45043757, 0.45043757, 0.10335383, 0.66254431, 0.62397945,
0.52756729, -0.3594245 , 0.56613215, 0.73967403, -2.05627837,
-0.30157721, -1.01502713, -0.34014207, 0.16120112, -0.39798936,
-0.47511908, -1.74775949, -0.30157721, 0.18048355, -2.09484323,
-0.66794339, -1.49708789, -0.3594245 , -1.45852303, -0.64866096,
-0.95717984, -2.48049184, -0.03162319, -1.74775949, -1.18856901,
-1.16928658, -0.14731777, -0.9957447 , -1.15000415, -0.82220283,
-1.2464163 , -0.66794339, -1.16928658, -1.40067574, -1.41995817]])
#分散を99%維持するPCAを作成
pca = PCA(n_components=0.99,whiten=True)
#PCAの実行
features_pca = pca.fit_transform(features)
#結果の表示
print("もとの特徴量数:", features.shape[1])
print("削除後の特徴量数:", features_pca.shape[1])
もとの特徴量数: 100
削除後の特徴量数: 1

#feature_pca
array([[0.]])
#エラー内容(PCA実行時に出てくるエラー文)
RuntimeWarning: invalid value encountered in true_divide
explained_variance_ = (S ** 2) / (n_samples - 1)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

bsdfan

2020/12/03 05:59

上に書かれているfeaturesのshapeは (1, 100) なのですが、これに対してPCAというのが、どういう結果が欲しいのかよくわからないです。
bsdfan

2020/12/03 07:15

特徴量が100個のデータが1点だけあるものについて、主成分分析をしようとしていることになります。 Warningは、データが1点しかないため分散が計算できない(0での除算になる)というものではないかと。 主成分分析はある程度データ数が多くないとちゃんとした結果は得られないと思います。 そもそも、データ数1点で主成分分析というのは意味がないです。 データ数を増やしてやってみてはどうでしょう。
tkc2020

2020/12/03 08:51

なるほど…!わざわざ丁寧に教えて頂いてありがとうございます!データを増やして試してみたいと思います!
guest

回答1

0

自己解決

データ数を増やす(複数のデータが必須)

投稿2020/12/03 08:52

tkc2020

総合スコア2

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問