タグ付けされた質問 「scikit-learn」

Python用の機械学習ライブラリ。このタグは、(a)scikit-learnが質問の重要な部分または予想される回答として含まれているトピックトピックの質問に使用し、&(b)はscikit-learnの使い方だけではありません。

1
DBSCANを使用して私のポイントのほとんどがノイズとして分類されるのはなぜですか?
一部のデータをクラスター化するためにsklearnのいくつかのクラスター化アルゴリズムを使用していますが、DBSCANで何が起こっているのか理解できません。私のデータはTfidfVectorizerからのドキュメントタームマトリックスで、数百の前処理されたドキュメントが含まれています。 コード: tfv = TfidfVectorizer(stop_words=STOP_WORDS, tokenizer=StemTokenizer()) data = tfv.fit_transform(dataset) db = DBSCAN(eps=eps, min_samples=min_samples) result = db.fit_predict(data) svd = TruncatedSVD(n_components=2).fit_transform(data) // Set the colour of noise pts to black for i in range(0,len(result)): if result[i] == -1: result[i] = 7 colors = [LABELS[l] for l in result] pl.scatter(svd[:,0], svd[:,1], c=colors, s=50, …

1
不均衡なクラスでFスコアを平均化する最良の方法
不均衡なクラスのデータセットがあります。3つのクラスがデータの約60%を占めます。また、不均衡を引き起こすさまざまなテスト分割があります。たとえば: トレインセット:label_1 ... label_n テストセット:label_1、label_3、label_9 これは、テストセットにラベルが3つしかない場合でも、nラベルの1つとして予測される可能性があることを意味します。したがって、sklearn.metrics.precision_recall_fscore_supportを使用すると、ゼロが多い行列が得られます。 私の問題は、クラスごとの値ではなく、すべてのクラスにわたって平均Fスコアを取得する必要があることです。ただし、上記のsklearn関数から返された行列の平均を取るだけでは、非常に多くのゼロがあるため、常に非常に低い値になります。一方、潜在的な予測の総数はクラスの総数でなければならないため、ゼロ以外の値の平均を取ることも、私には意味がありません。 この場合、平均を取る良い方法はありますか?ミクロ、マクロ、加重平均のオプションを使用してみましたが、どちらが正しいかわかりません。 誰かこれを手伝ってくれませんか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.