libsvm形式のスパース行列にGradient Boosting Treesを使用しているSparkアプリケーションがあります。糸クラスターモードのSparkアプリケーションで時間がかかっています
val model = GradientBoostedTrees.train(trainingData, boostingStrategy)
また、最初のものは、それが始まったときからである
を取り付けられた2枚の画像を参照してください。そして、After Some timeスクリーンショットを撮りました。個々のタスクを見ると、ミリ秒と秒が表示されます。私がそれらを加えれば、彼らは私にほんの一握りを与えるでしょう。しかし、私のアプリケーションは、私が2回目のスクリーンショットを撮った時点で1.5時間走っています。
だから私は持っている問題は、私は時間(ないUI上)の90%が取られている場所を知っていますどのように
ですか?
Gradient BoostingのこのプロセスをSparkに固定する方法を教えてください。ほとんどのタスクがML LibとDecision Trees内で何が起きているのか分かります。私は5つのパーティションを使用しました - それをさらに増やす必要がありますか?どのくらいより ?
データは増加を続け、37MBから19GBに達します。なぜ正確に? - これは心配ですか?
私はトレーニングを終えて、フォールドアウトの予測を書き出そうとしていますが、サイズがINT Max_Valueのエラーを超えてしまいます。その理由は、あまりにも多くの行が書かれているようですね?それはパーティションごとですか?
私は300回のラウンドでGBTをトレーニングする必要があります。私は3回のラウンドでPOCを3〜4時間で苦労しています。 MLLibを使用してSparkで300ラウンドのGradient Boostingを行うことは可能ですか?
私はScalaの2.10.4の午前と質問2について1.5.2
はい - 私はそれを理解していますが、私はGBTを使ってそれをローカルで行いました。予測データはトレーニングデータのRFよりもはるかに優れています。実際には今日ではGBはあらゆるML問題のためのほとんどのデフォルトアルゴリズムになっています - 特にXGBoostの到来に伴います。私はいくつかの人が私を助けることを願っています。お返事をありがとうございます – Run2