タグ付けされた質問 「python」

Pythonは、機械学習で一般的に使用されるプログラミング言語です。このタグは、(a)質問の重要な部分または予想される回答として「Python」が含まれる、* on-topic *の質問に使用します。(b)「Python」の使い方について「*」*ではありません。

2
Tensorflow `tf.train.Optimizer`はどのように勾配を計算しますか?
Tensorflow mnistチュートリアル(https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/tutorials/mnist/mnist_softmax.py)に従っています。 チュートリアルではtf.train.Optimizer.minimize(具体的にはtf.train.GradientDescentOptimizer)を使用しています。グラデーションを定義するために引数がどこにも渡されていないようです。 Tensorフローはデフォルトで数値微分を使用していますか? あなたができるようにグラデーションを渡す方法はありますscipy.optimize.minimizeか?

1
ランダムフォレストの確率的予測と多数決
Scikitの学習では、モデル集約手法に多数決投票ではなく確率的予測を使用しているようですが、その理由は説明されていません(1.9.2.1。ランダムフォレスト)。 理由は明確に説明されていますか?さらに、ランダムフォレストのバギングに使用できるさまざまなモデル集約手法に関する優れた論文またはレビュー記事はありますか? ありがとう!

2
ノンパラメトリッククラスタリングのPyMC:ガウス混合のパラメーターを推定するディリクレプロセスがクラスター化に失敗する
問題のセットアップ 私がPyMCに適用したい最初のおもちゃの問題の1つは、ノンパラメトリッククラスタリングです。いくつかのデータを指定して、ガウス混合としてモデル化し、クラスターの数と各クラスターの平均と共分散を学習します。この方法について私が知っていることのほとんどは、2007年頃のマイケルジョーダンとイーワイテによるビデオ講義(スパースが大流行する前)と、Fonnesbeck博士とE. Chen博士のチュートリアル[fn1]、[ fn2]。しかし、問題はよく研究されており、信頼できる実装がいくつかあります[fn3]。 このおもちゃの問題では、1次元ガウスから10回の描画を生成し、から40回の描画を生成します。以下に見られるように、どのサンプルがどの混合成分からのものであるかを簡単に見分けられるように、ドローをシャッフルしませんでした。N(μ = 4 、σ = 2 )N(μ=0,σ=1)N(μ=0,σ=1)\mathcal{N}(\mu=0, \sigma=1)N(μ=4,σ=2)N(μ=4,σ=2)\mathcal{N}(\mu=4, \sigma=2) 各データサンプルをに対してモデル化しここで、はこの番目のデータポイントのクラスターを示します。。ここでは、使用される切り捨てられたディリクレプロセスの長さです。私にとって、です。iは= 1 、。。。、50 、Z iは I Z I ∈ [ 1 、。。。、N D P ] N D P N D P = 50yi∼N(μzi,σzi)yi∼N(μzi,σzi)y_i \sim \mathcal{N}(\mu_{z_i}, \sigma_{z_i})i=1,...,50i=1,...,50i=1,...,50ziziz_iiiizi∈[1,...,NDP]zi∈[1,...,NDP]z_i \in [1,...,N_{DP}]NDPNDPN_{DP}NDP=50NDP=50N_{DP}=50 ディリクレプロセスインフラストラクチャを拡張すると、各クラスターIDはカテゴリ確率変数からのドローであり、その確率質量関数はスティック破壊コンストラクトによって与えられます: with for a濃度パラメータ。スティックブレイキングは、最初にに依存する iidベータ分布ドローを取得することにより、合計が1になる -longベクトル構築します。[fn1]を参照してください。そして、データに無知であることを知らせたいので、[fn1]に従い、 0.3、100)と仮定します。、Z I〜C A …

1
観測48で革新的な異常値をARIMAモデルに組み込むにはどうすればよいですか?
私はデータセットに取り組んでいます。いくつかのモデル識別手法を使用した後、私はARIMA(0,2,1)モデルを思いつきました。 R detectIOのパッケージの関数を使用して、元のデータセットの48回目の観測で革新的な外れ値(IO)TSAを検出しました。 この外れ値をモデルに組み込んで、予測に使用するにはどうすればよいですか?Rではそれから予測を行うことができない可能性があるため、ARIMAXモデルを使用したくありません。これを行う方法は他にありますか? これが私の値です。 VALUE <- scan() 4.6 4.5 4.4 4.5 4.4 4.6 4.7 4.6 4.7 4.7 4.7 5.0 5.0 4.9 5.1 5.0 5.4 5.6 5.8 6.1 6.1 6.5 6.8 7.3 7.8 8.3 8.7 9.0 9.4 9.5 9.5 9.6 9.8 10.0 9.9 9.9 9.8 9.8 9.9 9.9 9.6 9.4 …
10 r  time-series  arima  outliers  hypergeometric  fishers-exact  r  time-series  intraclass-correlation  r  logistic  glmm  clogit  mixed-model  spss  repeated-measures  ancova  machine-learning  python  scikit-learn  distributions  data-transformation  stochastic-processes  web  standard-deviation  r  machine-learning  spatial  similarities  spatio-temporal  binomial  sparse  poisson-process  r  regression  nonparametric  r  regression  logistic  simulation  power-analysis  r  svm  random-forest  anova  repeated-measures  manova  regression  statistical-significance  cross-validation  group-differences  model-comparison  r  spatial  model-evaluation  parallel-computing  generalized-least-squares  r  stata  fitting  mixture  hypothesis-testing  categorical-data  hypothesis-testing  anova  statistical-significance  repeated-measures  likert  wilcoxon-mann-whitney  boxplot  statistical-significance  confidence-interval  forecasting  prediction-interval  regression  categorical-data  stata  least-squares  experiment-design  skewness  reliability  cronbachs-alpha  r  regression  splines  maximum-likelihood  modeling  likelihood-ratio  profile-likelihood  nested-models 

1
相互情報量の計算方法は?
私は少し混乱しています。誰かが2項間の相互情報を計算する方法を説明できますか? D O C U M E N T 1D O C U M E N T 2D O C U M E N T 3』Wh y』111』Ho w』101』W時間のE N』111』WH E R E』100′Why′′How′′When′′Where′Document11111Document21010Document31110 \begin{matrix} & 'Why' & 'How' & 'When' & 'Where' \\ Document1 & 1 & 1 & 1 & …

2
PyMCの2つの正規分布の近似モデル
私はソフトウェアエンジニアなので、始める前に私を許さなければならないより多くの統計を学ぼうとしているので、これは深刻な新しい領域です... 私はPyMCを学び、いくつかの本当に(本当に)単純な例に取り組んできました。私が作業を開始できない(そして関連する例を見つけることができない)1つの問題は、2つの正規分布から生成されたデータにモデルを適合させることです。 1000個の値があるとします。500から発生Normal(mean=100, stddev=20)し、別の500から生成されましたNormal(mean=200, stddev=20)。 モデルをそれらに適合させたい場合、つまり、PyMCを使用して2つの平均と単一標準偏差を決定します。私はそれが... mean1 = Uniform('mean1', lower=0.0, upper=200.0) mean2 = Uniform('mean2', lower=0.0, upper=200.0) precision = Gamma('precision', alpha=0.1, beta=0.1) data = read_data_from_file_or_whatever() @deterministic(plot=False) def mean(m1=mean1, m2=mean2): # but what goes here? process = Normal('process', mu=mean, tau=precision, value=data, observed=True) つまり、生成プロセスは通常ですが、muは2つの値のいずれかです。私はちょうど値はから来ているかどうかの間で「決定」を表す方法を知らないm1かをm2。 多分私はこれをモデリングするために間違ったアプローチを完全に取っていますか?誰かが私に例を指摘できますか?私はバグとジャグを読むことができるので、何でも本当に大丈夫です。
10 modeling  python  pymc 

2
ソリトン分布に従って数値を生成するにはどうすればよいですか?
ソリトン分布は、セット上の離散確率分布である確率質量関数と{1,…,N}{1,…,N}\{1,\dots, N\} p(1)=1N,p(k)=1k(k−1)for k∈{2,…,N}p(1)=1N,p(k)=1k(k−1)for k∈{2,…,N} p(1)=\frac{1}{N},\qquad p(k)=\frac{1}{k(k-1)}\quad\text{for }k\in\{2,\dots, N\} LTコードの実装の一部として、理想的には均一な乱数ジェネレータが利用可能なPythonで使用したいと思います。

4
R対SciPyでの対数正規分布の近似
Rを使用して、データのセットで対数正規モデルを近似しました。結果のパラメーターは次のとおりです。 meanlog = 4.2991610 sdlog = 0.5511349 このモデルを、これまで使用したことがないScipyに転送したいと思います。Scipyを使用して、1と3.1626716539637488e + 90という非常に異なる数の形状とスケールを取得することができました。また、meanlogとsdlogのexpを使用しようとしましたが、奇妙なグラフが引き続き表示されます。 私はscipyでできるすべてのドキュメントを読みましたが、この場合の形状とスケールのパラメーターの意味についてまだ混乱しています。関数を自分でコーディングするのは理にかなっていますか?私はscipyが初めてなので、エラーが発生しやすいようです。 SCIPYログノーマル(青)対Rログノーマル(赤): どの方向に進むかについての考えはありますか?ちなみに、データはRモデルと非常によく適合しているので、Pythonで他のように見える場合は、自由に共有してください。 ありがとうございました! 更新: 私はScipy 0.11を実行しています これがデータのサブセットです。実際のサンプルは38k +で、平均は81.53627です。 サブセット: x [60、170、137、138、81、140、78、46、1、168、138、148、145、35、82、126、66、147、88、106、80、54、83、13 102、54、134、34 ] numpy.mean(x) 99.071428571428569 または: 私はpdfを取り込む機能に取り組んでいます: def lognoral(x, mu, sigma): a = 1 / (x * sigma * numpy.sqrt(2 * numpy.pi) ) b = - (numpy.log(x) - mu) …
10 r  python  numpy  scipy 

3
最小限のメモリを使用してデータをトレーニングする最も効率的な方法は何ですか?
これは私のトレーニングデータです:200,000例x 10,000機能。したがって、私のトレーニングデータマトリックスは-200,000 x 10,000です。 各例の機能を生成するときに、すべてのデータセットを1つずつ(1つずつ)保存することで、メモリの問題なしにこれをフラットファイルに保存できました。 しかし、今、私がMilk、SVM light、またはその他の機械学習アルゴリズムを使用すると、すべてが1つずつトレーニングするのではなく、トレーニングデータ全体をメモリにロードしようとします。ただし、RAMが8 GBしかないので、この方法で進めることはできません。 とにかく、アルゴリズムを1つのデータセットごとにトレーニングできることを知っていますか?つまり、トレーニング中にいつでも1つのデータセットをメモリにロードするだけです。

1
指数加重平均の標準偏差
指数加重平均を計算する簡単な関数をPythonで記述しました。 def test(): x = [1,2,3,4,5] alpha = 0.98 s_old = x[0] for i in range(1, len(x)): s = alpha * x[i] + (1- alpha) * s_old s_old = s return s ただし、対応するSDを計算するにはどうすればよいですか?

1
連続変数とバイナリ変数が混在するt-SNE
現在、t-SNEを使用した高次元データの可視化について調査しています。バイナリ変数と連続変数が混在しているデータがあり、そのデータはバイナリデータを非常に簡単にクラスター化しているようです。もちろん、これはスケーリングされた(0と1の間の)データの場合に予想されます。ユークリッド距離は、バイナリ変数間で常に最大/最小になります。t-SNEを使用して混合バイナリ/連続データセットをどのように処理する必要がありますか?バイナリ列を削除する必要がありますか?metric使用できる別のものはありますか? 例として、次のpythonコードを考えます。 x1 = np.random.rand(200) x2 = np.random.rand(200) x3 = np.r_[np.ones(100), np.zeros(100)] X = np.c_[x1, x2, x3] # plot of the original data plt.scatter(x1, x2, c=x3) # … format graph だから私の生データは: ここで、色は3番目のフィーチャ(x3)の値です。3Dでは、データポイントは2つの平面(x3 = 0平面とx3 = 1平面)にあります。 次に、t-SNEを実行します。 tsne = TSNE() # sci-kit learn implementation X_transformed = StandardScaler().fit_transform(X) tsne = TSNE(n_components=2, …

4
Pythonを使用して列にカテゴリカルデータがあるかどうかを統計的に証明する方法
すべてのカテゴリー変数を見つける必要があるpythonのデータフレームがあります。int型もカテゴリ型になる可能性があるため、列の型のチェックは常に機能するとは限りません。 したがって、列がカテゴリカルであるかどうかを識別するための正しい仮説検定方法を見つけるのに助けを求めます。 私はカイ二乗検定の下で試しましたが、これで十分かどうかはわかりません import numpy as np data = np.random.randint(0,5,100) import scipy.stats as ss ss.chisquare(data) お知らせ下さい。

4
1つの値からN個の独立した乱数ジェネレータをシードする最良の方法
私のプログラムでは、大規模なデータセットのサンプリングに使用される独自のRNGを使用して、それぞれN個の個別のスレッドを実行する必要があります。結果を再現できるように、このプロセス全体に単一の値をシードできるようにする必要があります。 各インデックスのシードを単純に順次増やすだけで十分ですか? 現在、私は使用numpyのRandomStateメルセンヌツイスターの擬似乱数生成器を使用しています。 以下のコードの抜粋: # If a random number generator seed exists if self.random_generator_seed: # Create a new random number generator for this instance based on its # own index self.random_generator_seed += instance_index self.random_number_generator = RandomState(self.random_generator_seed) 基本的に、ユーザーが入力したシード(存在する場合)から始め、インスタンス/スレッドごとに、実行中のインスタンスのインデックス(0からN-1)を順番に追加します。これが良い習慣なのか、これを行うより良い方法があるのか​​はわかりません。

3
scikit learnを使用した特徴選択後のフィルターされた特徴の識別
Pythonの特徴選択方法のコードは次のとおりです。 from sklearn.svm import LinearSVC from sklearn.datasets import load_iris iris = load_iris() X, y = iris.data, iris.target X.shape (150, 4) X_new = LinearSVC(C=0.01, penalty="l1", dual=False).fit_transform(X, y) X_new.shape (150, 3) しかし、新しいX(依存変数-X_new)を取得した後、どの変数が削除され、どの変数がこの新しい更新された変数で考慮されるかをどのようにして知ることができますか?(どれが削除されたか、どれがデータに存在するか。) この識別情報を取得するのは、新しいテストデータに同じフィルタリングを適用するためです。

2
入れ子の交差検証の実装
私は入れ子の交差検証の私の理解が正しいかどうかを把握しようとしています。したがって、このおもちゃの例を書いて、私が正しいかどうかを確認します。 import operator import numpy as np from sklearn import cross_validation from sklearn import ensemble from sklearn.datasets import load_boston # set random state state = 1 # load boston dataset boston = load_boston() X = boston.data y = boston.target outer_scores = [] # outer cross-validation outer = cross_validation.KFold(len(y), n_folds=3, shuffle=True, …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.