データサイエンス

データサイエンスの専門家、機械学習の専門家、およびこの分野に関する知識が豊富な方へ

1
ニューラルネットワークを使用した順序回帰のコスト関数
順序回帰を実行するようにニューラルネットワークをトレーニングするのに最適なコスト関数は何ですか。つまり、異なる値の間の相対的な順序のみが重要である任意のスケールで値が存在する結果を予測します(例:顧客が注文する製品サイズを予測するため) : 'small'(0としてコード化)、 'medium'(1としてコード化)、 'large'(2としてコード化)または 'extra-large'(3としてコード化))?私は、二次損失(「バニラ」回帰として問題をモデル化する)またはクロスエントロピー損失(問題を分類としてモデル化する)よりも良い代替策があるかどうかを把握しようとしています。

1
バッチ正規化について
ペーパーバッチ正規化:ディープネットワークトレーニングの加速b y内部共変量シフトの削減(ここ)バッチ正規化のプロセスを説明する前に、ペーパーは関連する問題を説明しようとします(ここで扱われている正確な問題はわかりません)。 セクション2、パラ2からの抜粋: ネットワークを直接変更するか、最適化アルゴリズムのパラメーターをネットワークのアクティブ化の値に依存するように変更することにより、トレーニングステップごとまたは一定の間隔でアクティブ化を白くすることを検討できます(Wiesler et al。、2014; Raiko et al。、2012 ; Povey et al。、2014; Desjardins&Kavukcuoglu)。ただし、これらの変更が最適化ステップに散在している場合、勾配降下ステップは、正規化の更新を必要とする方法でパラメーターを更新しようとする場合があり、勾配ステップの影響が減少します。たとえば、学習されたバイアスを追加し、トレーニングデータに対して計算されたアクティベーションの平均を差し引くことによって結果を正規化する入力uを含むレイヤーを考えます。、X = X - E [ X ]bbbx^=x−E[x]x^=x−E[x]\hat x= x − E[x]ここで、 はトレーニングセットのの値のセットであり、 。x=u+b,X=x1...Nx=u+b,X=x1...Nx = u + b, X = {x_{1...N}}xxxE[x]=1N(∑ni=1xi)E[x]=1N(∑i=1nxi)E[x] = \frac 1 N(\sum_{i=1}^nx_i) 勾配降下ステップがE [x]のbへの依存を無視する場合、を更新しますb←b+Δbb←b+∆bb ← b + ∆b。ここで、Δb∝−∂l/∂x^∆b∝−∂l/∂x^∆b ∝ −\partial l/\partial\hat xです。次に、 u+(b+Δb)−E[u+(b+Δb)]=u+b−E[u+b](1)(1)u+(b+∆b)−E[u+(b+∆b)]=u+b−E[u+b]u + …

2
ビデオファイルのシャッフルされたピクセルを再構築する方法は?
ピクセルの順序が1回シャッフルされたビデオファイルがあるとします。つまり、ランダムな順序が一度定義され、すべてのフレームに適用されています。 ピクセルの最初の順序を取得するための既知のアプローチは存在しますか? 私は、空間と時間で相関しているピクセルをより近くに配置することにより、初期トポロジを取得することについていくつかのアイデアを持っています。これは研究されているのか、効率的なアルゴリズムが公開されているのか。 また、この問題は、コンピュータビジョン技術(CNNなど)を適用できるようにするために、時間の経過とともに変化する値のセットを2Dマトリックスに投影する方法と考えることができます。

5
コサイン類似度によるクラスタリング
大きなデータセットとそれらの間のコサイン類似度があります。予想するクラスターの数を事前に指定する必要なく、類似のオブジェクトをまとめるコサイン類似度を使用してそれらをクラスター化したいと思います。 私はDBSCANとAffinity Propagationのsklearnドキュメントを読みました。どちらも距離行列(コサイン類似度行列ではない)を必要とします。 本当に、私はa)距離メトリックとb)事前に指定された数のクラスターを必要としないアルゴリズムを探しています。 誰かがそれを行うアルゴリズムを知っていますか?

1
分類のための畳み込みネットワーク、照明に非常に敏感
畳み込みネットワークをトレーニングして、機械コンポーネントの画像を良品または不良品として分類しました。テストの精度は高いものの、照明がわずかに異なる画像ではモデルのパフォーマンスが低いことに気付きました。 私が検出しようとしている機能は微妙であり、照明がモデルを誤作動させて多くの偽陰性を呼び出しているようです。すべてではありませんが、ほとんどのトレーニングデータとテストデータは、拡散照明下で撮影された画像から得られました。私がモデルを試した新しい画像は、焦点を当てたライトで撮影されました。 ヒストグラムの等化(CLAHE)が役立つことを願って、モデルに供給する前に画像の等化を行い、トレーニングとテストデータのためにこれを行いました。そのときの問題は精度が高かったことですが、モデルは画像とラベルの間に他の相関関係を学習したようです。等化後、画像のすべてが目立ち、欠陥はさらに微妙になり、人間の目でも検出するのが難しくなります。 同じコンポーネントが同じ照明で、異なる方向のライトで撮影された場合でも、モデルの予測は変化しました。だから私の質問は、データの終わりやモデルで何ができるのですか?

1
線形非分離データは、ロジスティック回帰の多項式機能を使用して学習できますか?
私は知っているPolynomial Logistic Regression簡単に、以下の画像のような典型的なデータを学ぶことができます: 私は、次の2つのデータも使用して学習することができるかどうかを疑問に思いましたか。 Polynomial Logistic Regression 私はもっ​​と説明を追加する必要があると思います。最初の形状を想定します。この2次元入力(x1 ^ 2 ...など)に追加の多項式特徴を追加すると、データを分離できる決定境界を作成できます。X1 ^ 2 + X2 ^ 2 = bを選択するとします。これにより、データを分離できます。追加の機能を追加すると、波状の形状(波状の円や波状の省略記号など)が表示されますが、2番目のグラフのデータを分離することはできませんか?

1
MLのセンサーからの時系列データの使用
小さなサイドプロジェクトについて次のデータがあります。それは、洗濯機/乾燥機の上に座っている加速度計からのものであり、マシンがいつ終了したかを教えてください。 xは入力データ(1つの値としてのx / y / z移動)、yはラベルのオン/オフ y = 1とy = 0のx値は重複しているため、xとローリング3分のウィンドウをSVMの入力として使用することを考えていました。 xyz60=res.xyz.resample("60S").max() X["x"]=xyz60 X["max3"]=xyz60.rolling(window=3, min_periods=1).max() これはこの種の問題に対する良いアプローチですか?より良い結果をもたらす可能性のある代替案はありますか?

2
MNIST分類のために荒廃したニューラルネットワークを過剰適合させないのはなぜですか?
MNIST分類のための単純なニューラルネットワーク(NN)があります。これには、それぞれ500個のニューロンを持つ2つの非表示層が含まれています。したがって、NNの寸法は784-500-500-10です。ReLUはすべてのニューロンで使用され、softmaxは出力で使用され、クロスエントロピーは損失関数です。 オーバーフィットがNNを荒廃させないように見えるのはなぜ私を困惑させるのですか NNのパラメーター(重み)の数を考慮します。およそ ただし、私の実験では、NNのトレーニングに6000の例(MNISTトレーニングセットの10分の1)のみを使用しました。(これは単に実行時間を短く保つためです。トレーニング例をさらに使用すると、トレーニングとテストのエラーはどちらも大幅に減少します。)私は実験を10回繰り返しました。単純な確率的勾配降下法が使用されます(RMSプロップまたは運動量なし)。正則化/ドロップアウト/早期停止は使用されませんでした。報告されたトレーニングエラーとテストエラーは次のとおりです。784 × 500 + 500 × 500 + 500 × 10 = 647000。784×500+500×500+500×10=647000。784\times500+500\times 500+500\times 10=647000.600060006000 番号。Et r a i n(%)EトンのE S T(%)17.811.7210.313.939.113.2411.014.158.712.169.213.279.313.388.311.9910.313.4108.612.7番号。12345678910Etra私ん(%)7.810.39.111.08.79.29.38.310.38.6Etest(%)11.713.913.214.112.113.213.311.913.412.7\begin{array}{|l|c|c|c|c|c|c|c|c|c|c|} \hline \textrm{No.} & 1 & 2 & 3 &4 &5&6&7&8&9&10\\ \hline E_{train}(\%) & 7.8 & 10.3 & 9.1 & 11.0 & 8.7 & 9.2 & …


1
マルチラベルテキスト分類の単純ベイズ
Rでマルチラベルテキスト分類にNaive Bayesを使用する方法 e1071ライブラリのnaiveBayes()を使用してみましたが、トレーニング中にマルチラベルクラス変数を受け入れないようです。 テキストドキュメントコーパスを使用してTermDocumentMatrixを作成し、このマトリックスとクラス変数(特定のドキュメントが属するトピックのリスト)を使用してモデルを作成しようとしました。以下は私が使用したコードです。 trainvector <- as.vector(traindata$bodyText) trainsource <- VectorSource(trainvector) traincorpus <- Corpus(trainsource) trainmatrix <- t(TermDocumentMatrix(traincorpus)) model <- naiveBayes(as.matrix(trainmatrix), as.factor(traindata$topics)) 最後の行は以下のエラーを示します: Error in sort.list(y) : 'x' must be atomic for 'sort.list' リストで「並べ替え」を呼び出しましたか? 使ってみた model <- naiveBayes(as.matrix(trainmatrix), as.factor(unlist(traindata$topics))) エラーが発生しました: Error in tapply(var, y, mean, na.rm = TRUE) : arguments must have …

1
バイナリ分類のためのXGBoost:適切なしきい値の選択
私は非常に不均衡なバイナリラベル付きデータセットに取り組んでいます。この場合、真のラベルの数はデータセット全体の7%にすぎません。ただし、機能の組み合わせによっては、サブセット内の機能の数が平均よりも多くなる場合があります。 たとえば、単一の特徴(色)を持つ次のデータセットがあるとします。 180個の赤いサンプル— 0 20個の赤いサンプル— 1個 緑のサンプル300個— 0 緑のサンプル100個— 1 簡単な決定木を作ることができます: (color) red / \ green P(1 | red) = 0.1 P(1 | green) = 0.25 データセット全体のP(1)= 0.2 このデータセットでXGBoostを実行すると、0.25以下の確率を予測できます。つまり、しきい値を0.5に決定した場合、 0-P <0.5 1-P> = 0.5 次に、常にゼロとしてラベル付けされたすべてのサンプルを取得します。私が問題を明確に説明したことを願っています。 ここで、初期データセットで次のプロットを取得しています(x軸のしきい値)。 しきい値= 0.1で最大のf1_scoreを持つ。今私は2つの質問があります: そのような構造のデータセットにf1_scoreを使用する必要がありますか? バイナリ分類にXGBoostを使用する場合、確率をラベルにマッピングするために0.5しきい値を使用することは常に合理的ですか? 更新。私はその話題が興味を引くと思います。以下は、XGBoostを使用して赤/緑の実験を再現するPythonコードです。それは実際に期待される確率を出力します: from xgboost import XGBClassifier from sklearn.model_selection import train_test_split import …

4
畳み込みは「画像を平坦化」しますか?
マルチチャネル画像に適用したときに、深層学習の畳み込みがどのように機能するかについての良い説明を探しています。たとえば、RGBの3つのチャネルを持つ100 x 100ピクセルの画像があるとします。入力テンソルのサイズは100 x 100 x 3になります。 Nフィルターとストライド1を使用して畳み込みを適用すると、出力次元は次のようになります。 100 x 100 x 3 x N? または 100 x 100 x N? 言い換えると、適用される畳み込みは画像を「平坦化」しますか、それともチャネルごとに畳み込みを適用しますか?


2
Rでの情報獲得
C4.5ディシジョンツリーで主要な属性を選択するための「情報ゲイン」の計算に使用されているパッケージを見つけて、「情報ゲイン」の計算にそれらを使用してみました。 ただし、以下のコードのように、各パッケージの計算結果は異なります。 > IG.CORElearn <- attrEval(In_Occu ~ In_Temp+In_Humi+In_CO2+In_Illu+In_LP+Out_Temp+Out_Humi, dataUSE1, estimator = "InfGain") > IG.RWeka <- InfoGainAttributeEval(In_Occu ~ In_Temp+In_Humi+In_CO2+In_Illu+In_LP+Out_Temp+Out_Humi, dataUSE1) > IG.FSelector <- information.gain(In_Occu ~ In_Temp+In_Humi+In_CO2+In_Illu+In_LP+Out_Temp+Out_Humi,dataUSE1) > IG.CORElearn In_Temp In_Humi In_CO2 In_Illu In_LP Out_Temp Out_Humi 0.04472928 0.02705100 0.09305418 0.35064927 0.44299167 0.01832216 0.05551973 > IG.RWeka In_Temp In_Humi In_CO2 In_Illu In_LP Out_Temp Out_Humi …

3
ゲームをプレイする簡単なAIプログラムを作成するには、どのような知識が必要ですか?
私は学士号を取得しています。私のコースの1つは「機械学習入門」でしたが、私は常にこのテーマで個人的なプロジェクトをやりたかったのです。 最近、マリオ、ゴーなどのゲームをプレイするためのさまざまなAIトレーニングについて聞いたことがあります。 ゲームをプレイする簡単なAIプログラムをトレーニングするには、どのような知識が必要ですか?そして、初心者にはどのゲームをお勧めしますか? これは私がこれまでに機械学習で知っていることです- コースと機械学習の概要。K最近傍アルゴリズム、およびK平均アルゴリズム 統計的推論 混合ガウスモデル(GMM)および期待値最大化(EM) 汎化境界とモデル選択を含む、おそらくおおよその(PAC)モデル 基本的な超平面アルゴリズム:PerceptronとWinnow。 サポートベクターマシン(SVM) カーネル 弱い学習者から強い学習者へのブースト:AdaBoost マージンパーセプトロン 回帰 PCA 決定木 決定木剪定とランダムフォレスト

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