機械学習アルゴリズムを学習する過程では、アルゴリズムとデバッグパラメータを検証するためのデータが必要になることがよくあります。しかし、特定のアルゴリズム タイプに適したデータ サンプルのセットを見つけるのは、それほど簡単ではありません。幸いなことに、numpy と scikit-learn は両方とも、特定の モデル に適したデータを独自に生成し、ランダム データを使用してクリーンアップ、正規化、変換し、シミュレーション用のモデルとアルゴリズムを選択できます。 。以下は、scikit-learn と numpy がデータ サンプルを生成する方法の概要です。
1. numpy ランダムデータ生成API
numpy は、単純なサンプリング データを生成するのに適しています。 API はすべてランダム クラスにあります。共通 API は次のとおりです:
1) rand(d0, d1, ..., dn) は、d0xd1x...dn 次元の 配列 を生成するために使用されます。配列の値は [0,1] の間です
例: np.random.rand(3,2,2)、次の 3x2x2 配列を出力します
array([[[ 0.49042678, 0.60643763], [ 0.18370487, 0.10836908]], [[ 0.38269728, 0.66130293], [ 0.5775944 , 0.52354981]], [[ 0.71705929, 0.89453574], [ 0.36245334, 0.37545211]]])
2) randn((d0, d1, .. ., dn) は、d0xd1x...dn 次元配列の生成にも使用されますが、配列の値は N(0,1) の標準正規分布に従います
例: np.random。 randn(3,2), 以下の 3x2 配列を出力します。これらの値は N(0,1) のサンプリング データです。N(μ,σ2)N(μ, σ2)、randn でそれぞれを生成する必要があります。値に対して σx+μσx+μ を変換するだけです。4) サンプリング データ
array([[-0.5889483 , -0.34054626], [-2.03094528, -0.21205145], [-0.20804811, -0.97289898]])
3) randint(low[, high, size])、サイズのランダム データを生成します。 、size は、行列の次元またはテンソルの次元である
integer にすることができます。値は半開区間[低、高)にあります。
例: np.random.randint(3, size=[2,3,4]) は、次元 2x3x4 のデータを返します。値の範囲は整数で、最大値は 3 です。 array([[ 2.32910328, -0.677016 ],
[-0.09049511, 1.04687598],
[ 2.13493001, 3.30025852]])
別の例: np.random.randint(3, 6, size=[2,3]) は、2x3 の次元のデータを返します。値の範囲は [3,6).
array([[[2, 1, 2, 1], [0, 1, 2, 1], [2, 1, 0, 2]], [[0, 1, 0, 0], [1, 1, 2, 1], [1, 0, 1, 2]]])
4)random_integers(low[, high, size]) で、値の範囲が閉じた区間 [low, high] である点を除いて、上記の randint と似ています。
5)random_sample([size])、半開区間 [0.0, 1.0) のランダムな浮動小数点数を返します。他の区間[a,b)の場合は、(b - a) * random_sample([size]) + a
例: (5-2)*np.random.random_sample(3)+2 [2 , 5 の間の 3 つの乱数を返します)。
array([[4, 5, 3], [3, 4, 5]])
2. scikit-learn のランダムデータ生成 API の紹介
array([ 2.87037573, 4.33790491, 2.1662832 ])出力画像は次のとおりです:
3.2 分類モデルのランダム データ
ここでは、make_classification を使用して 3 値分類モデル データを生成します。いくつかの主要なパラメーターは、n_samples (生成されたサンプルの数)、n_features (サンプル特徴の数)、n_redundant (冗長特徴の数)、および n_classes (出力カテゴリーの数) です。コード例は次のとおりです。出力画像は次のとおりです:
3.3 クラスタリングモデルのランダムデータ
ここでは、make_blobs を使用してクラスタリングモデルデータを生成します。いくつかの主要なパラメーターには、n_samples (生成されたサンプルの数)、n_features (サンプル フィーチャの数)、center (クラスター センターまたはカスタマイズされたクラスター センターの数)、cluster_std (クラスター集約の程度を表すクラスター データ分散) が含まれます。例は次のとおりです:
import numpy as np import matplotlib.pyplot as plt %matplotlib inline from sklearn.datasets.samples_generator import make_regression # X为样本特征,y为样本输出, coef为回归系数,共1000个样本,每个样本1个特征 X, y, coef =make_regression(n_samples=1000, n_features=1,noise=10, coef=True) # 画图 plt.scatter(X, y, color='black') plt.plot(X, X*coef, color='blue', linewidth=3) plt.xticks(()) plt.yticks(()) plt.show()
出力画像は次のとおりです:
3.4 分组正态分布混合数据
我们用make_gaussian_quantiles生成分组多维正态分布的数据。几个关键参数有n_samples(生成样本数), n_features(正态分布的维数),mean(特征均值), cov(样本协方差的系数), n_classes(数据在正态分布中按分位数分配的组数)。 例子如下:
import numpy as np import matplotlib.pyplot as plt %matplotlib inline from sklearn.datasets import make_gaussian_quantiles #生成2维正态分布,生成的数据按分位数分成3组,1000个样本,2个样本特征均值为1和2,协方差系数为2 X1, Y1 = make_gaussian_quantiles(n_samples=1000, n_features=2, n_classes=3, mean=[1,2],cov=2) plt.scatter(X1[:, 0], X1[:, 1], marker='o', c=Y1)
输出图如下
以上就是生产随机数据的一个总结,希望可以帮到学习机器学习算法的朋友们。
以上が機械学習アルゴリズムのランダム データ生成方法の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

slicingapythonlistisdoneusingtheyntaxlist [start:stop:step] .hore'showitworks:1)startisthe indexofthefirstelementtoinclude.2)spotisthe indexofthefirmenttoeexclude.3)staptistheincrementbetbetinelements

numpyallows forvariousoperationsonarrays:1)basicarithmeticlikeaddition、減算、乗算、および分割; 2)AdvancedperationssuchasmatrixMultiplication;

Arraysinpython、特にnumpyandpandas、aresentialfordataanalysis、offeringspeedandeficiency.1)numpyarraysenable numpyarraysenable handling forlaredatasents andcomplexoperationslikemoverages.2)Pandasextendsnumpy'scapabivitieswithdataframesfortruc

listsandnumpyarraysinpythonhavedifferentmemoryfootprints:listsaremoreflexiblellessmemory-efficient、whileenumpyarraysaraysareoptimizedfornumericaldata.1)listsstorereferencesto objects、with whowedaround64byteson64-bitedatigu

toensurepythonscriptsbehaveCorrectlyAcrossDevelosment、staging、and Production、usetheseStrategies:1)環境variablesforsimplestetings、2)configurationfilesforcomplexsetups、and3)dynamicloadingforadaptability.eachtododododododofersuniquebentandrequiresca

Pythonリストスライスの基本的な構文はリストです[start:stop:step]。 1.STARTは最初の要素インデックス、2。ストップは除外された最初の要素インデックスであり、3.ステップは要素間のステップサイズを決定します。スライスは、データを抽出するためだけでなく、リストを変更および反転させるためにも使用されます。

ListSoutPerformArraysIn:1)ダイナミシジョンアンドフレーケンティオン/削除、2)ストーリングヘテロゼンダタ、および3)メモリ効率の装飾、ButmayhaveslightPerformancostsinceNASOPERATIONS。

toconvertapythonarraytoalist、usetheList()constructororageneratorexpression.1)importhearraymoduleandcreateanarray.2)useList(arr)または[xforxinarr] toconvertoalistは、largedatatessを変えることを伴うものです。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

WebStorm Mac版
便利なJavaScript開発ツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ホットトピック









