問題タブ [one-hot-encoding]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python-2.7 - PySpark-OneHotEncoding
これはナイーブかもしれませんが、私は PySpark と Spark を使い始めたばかりです。Pyspark の One Hot Technique を理解するのを手伝ってください。列の 1 つで OneHotEncoding を実行しようとしています。1 回のホット エンコーディングの後、データフレーム スキーマはベクトルを追加します。ただし、機械学習アルゴリズムを適用するには、既存のデータ フレームに個別の列を追加し、各列がカテゴリを表すようにする必要がありますが、ベクトル型の列ではありません。OneHotEncoding を検証する方法。
私のコード:
この表示:
新しく追加された列はベクトル型です。それを各カテゴリの個々の列に変換するにはどうすればよいですか
python - Scikit-learn の OneHotEncoder で次元数を取得する方法
私はOneHotEncoder
自分のプロジェクトで Scikit-learn のを使用しています。n_value
そして、が に設定されている場合、各ワンホット ベクトルのサイズを知る必要がありますauto
。私はそれを示すと思っn_value_
たが、訓練サンプルを試す以外に方法がないようだ. 問題を示すために、このおもちゃのサンプル コードを作成しました。他の解決策を知っていますか?
python - scikit-learnでラベルエンコーディングと1つのホットエンコーディング後に係数名を取得する方法は?
scikit-learn の RidgeCV() メソッドを使用して、機械学習モデル (Ridge Regression w/ Cross-Validation) を実行しています。私のデータセットには 5 つのカテゴリ機能と 2 つの数値機能があるため、まず LabelEncoder() を使用してカテゴリ機能を整数に変換し、OneHotEncoder() を適用して 0 と 1 の新しい機能列をいくつか作成しました。機械学習モデル。
私の X_train は numpy 配列になり、モデルをフィッティングした後、その係数を取得しているので、疑問に思っています.これらの係数を、対応する個々の機能に接続する簡単な方法はありますか? Pandas get_dummies とは異なり、OneHotEncoder は、ラベル付けされたカテゴリのものから生成する個々の機能のタイトルを生成していないようです...
PS: LabelEncoder の .classes_ 属性と OneHotEncoder の .feature_indices_ を使用しましたが、探しているものが正確に得られるものはありません。Cross Validated に問い合わせたところ、Stack Overflow に紹介されました。
python - ラベル エンコーディングの不明な値の処理
sk-learn でラベル エンコーディングの不明な値を処理するにはどうすればよいですか? ラベル エンコーダーは、新しいラベルが検出された場合を除いて爆発します。
私が欲しいのは、ワンホットエンコーダーによるカテゴリ変数のエンコードです。ただし、sk-learn はそのための文字列をサポートしていません。そこで、各列にラベル エンコーダーを使用しました。
私の問題は、パイプラインの交差検証ステップで不明なラベルが表示されることです。基本的なワンホット エンコーダーには、そのようなケースを無視するオプションがあります。pandas.getDummies /cat.codes
パイプラインは、未知のラベルを含む可能性のある実際の新しい着信データでも機能する必要があるため、アプリオリでは不十分です。
CountVectorizer
この目的で a を使用することは可能でしょうか?
python - ワンホット エンコーディングを使用した Tensorflow 埋め込みルックアップ
現在、埋め込みを使用したいワンホット エンコーディングがあります。しかし、私が電話するとき
埋め込みデータ形状 (11、32、729、128)
この形状は (11, 32, 128) である必要がありますが、train_data がワンホット エンコードされているため、間違った次元が得られます。
エラーを教えてください:
助けてください!ありがとう。
python - パンダが異常なテキスト順序で因数分解する方法
次のような値を持つ列「cat100」を持つデータフレームがあります。
「A」「B」…「Y」「Z」「AA」「AB」…
AAが「B」「C」...「Z」の後にあるように、pd.factorizeを使用して列を因数分解したいと思います。
私は次のようなことを試しました:
しかし、これは A を 0 に、B を 2 に、AA を 1 に割り当てます。AA を 2 に、B を 1 に割り当てたいのです。
これを行う方法を検索しましたが、何も見つかりませんでした。これを行う方法はありますか?
machine-learning - スパース行列が与えられると、Sklearn は ValueError をスローします
SVM 分類子は、フィーチャが疎なマトリックスで表されている場合は値エラーをスローしますが、フィーチャが密なマトリックスで表されている場合はエラーになりません。
機能セットで One Hot Encoding を実行し、エンコードされた出力を機能の新しいリストに追加するコードがあります。One Hot Encoding の出力が .toarray() を使用して密な配列に変換されると、私の SVM 分類子は正常に動作します。
ただし、数千のデータポイントがあり、コンピューターのメモリがすぐに不足するため、密な配列を使用することは理想的ではありません。したがって、スパース配列が必要です。以下のコードから .toarray() を単純に削除すると、 enc.transform(features) の出力はスパース行列を出力します。ただし、SVM 分類器を実行すると、次のエラーが発生します。
ValueError: 配列要素をシーケンスで設定しています。
SVM がデータを適合させようとすると、何かが失敗しているように見えます。Sklearn SVM はスパース ベクトルを受け入れるため、何が問題なのかわかりません。