問題タブ [pmml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2272 参照

hadoop - jpmmlカスケードでHadoopジョブキュー名を渡す方法は?

このプロジェクトで提供されている jpmml カスケード ライブラリでカスケード フレームワークを使用して pmml モデルを実行しようとしています https://github.com/jpmml/jpmml-cascading

すべての手順に従い、mvn clean install コマンドを使用してexample-1.2-SNAPSHOT-job.jarを生成できました。

ただし、以下のコマンドを使用して同じ jar を実行している場合:

Hadoop クラスターのデフォルト キューは管理目的でのみブロックされているため、DEFAULTキューでジョブを送信する権限がないため、例外を下回っています。通常のユーザーは、キュー名を指定しないと Hadoop ジョブを実行できません。

リポジトリで Hadoop ジョブ キューを提供する場所を確認できません。

Hadoopジョブキュー名を渡す方法を誰か提案できますか?

ノート:

  1. キュー名を渡してプロパティ mapred.job.queue.name を渡そうとしましたが、コマンドラインとコード自体で同じエラーが表示されます。

  2. また、oozie シェル アクション ノードを使用してジョブを実行し、アプリケーション ワークフローでキュー名を渡そうとしましたが、シェル アクション ノードを介して実行される Hadoop ジョブではなく、oozie ジョブにのみ適用できると思います。

0 投票する
1 に答える
967 参照

java - R を使用して作成した PMML ファイルを読み取るシステムをセットアップするにはどうすればよいですか?

R過去数日間、pmmlパッケージ化を使用して作成した .xml 拡張子を持つ PMML ファイルを渡そうとしていました。PMML ファイルを作成した後、iris.xmlどこに行くべきかわかりません。実際、何を探すべきかわかりません。そして、ここで Alex Guazzelli のビデオを見ました。彼は、R.

私がビデオから取り出したものは、

  1. PMMLファイルをどこかにアップロードし、テストファイルを頻繁に入力して、対応する予測値を取得するなど、示されているのと同様のことをしたいと考えています。
  2. ADAPA は良さそうに見えますが、費用もかかるようです。そこで、ADAPA ほどユーザーフレンドリーではない代替案を探したいと思います。
  3. そしたら、この作者さんが書いているページを見つけました。

そのため、最初のステップはエンジンを稼働させることでした。私は小さな問題をいくつか経験しましたが、Scott はそれらを非常に迅速に修正し、Tomcat 内にデプロイする準備ができた新しい war ファイルを提供してくれました。http://code.google.com/p/openscoring/で取得できます。それでも問題が発生する場合は、私の war ファイルを試すこともできます。Java バージョン「1.6.0_26」で構築され、tomcat 7 でテストされました。管理コンソールを使用して war ファイルをインストールした後、次のような XML で POST 要求を '<a href="http: //localhost:8080/OpenScoring/Scoring" rel="nofollow">http://localhost:8080/OpenScoring/Scoring'</p>

それからjpmmlを見つけました。ここでの問題は、パッケージ名が非常に紛らわしく、どれをインストールすればよいかわかりません。実際、私はそれらのそれぞれをインストールする方法を知りません。私は Java の基本的な知識を持っていますが、現在のシナリオでは役に立たないようです。

あらゆる種類の助けを必死に楽しみにしています。

0 投票する
1 に答える
1318 参照

python - Python の Augustus で PMML を使用したスコアリング回帰モデル

私は、同僚からの R 線形モデルから生成された PMML ファイル (以下) を持っています。これは、5 つの機能に基づいてアイテムのコストを予測するために使用されます。Python で Augustus を使用してこのモデルを消費し、これらの予測をしようとしています。Augustus によって読み込まれた PMML ファイルの取得には成功しましたが、予測値の取得に失敗しています。

オーガスタスのモデルの抽象化から多くの例を調べ、Stack と Google を検索しましたが、線形回帰がうまく使用されている例をまだ見つけていません。以前に同様の質問が 1 件ありましたが、適切に回答されることはありませんでした。他の例の回帰 PMML ファイルも試してみましたが、同様の結果が得られました。

Python で Augustus (または他のライブラリ) を使用して回帰を実行し、予測を取得するにはどうすればよいですか?

PMML コード: linear_model.xml

Python コード:

(出力)

表からわかるように、入力値のみが表示され、「コスト」値は表示されていません。コストを予測するにはどうすればよいですか?

Python 2.7、Augustus 0.6 (0.5 も試しました)、OS X 10.11 を使用しています。

0 投票する
1 に答える
741 参照

java - SparkException の解決: PMML モデルのインポート時にタスクがシリアル化できない

PMML モデルをインポートして、Spark を使用してスコアを計算したいと考えています。Spark を使用しない場合はすべて正常に動作しますが、マッパーでメソッドを使用することはできません。

問題は、シリアル化できないと思われる org.jpmml.evaluator.Evaluator からの評価オブジェクトが必要なことです。そこで、次のクラスを使用して、Serialiazable にしようとしました。

また、すべてのクラスをシリアライズ可能にしました。

ここに私のコードのサンプルがあります:

しかし、私のコードが私の問題を解決するのに役立つとは思いません。これは非常に明確です(ログを参照してください:)

org.apache.spark.SparkException: org.apache.spark.util.ClosureCleaner$.ensureSerializable(ClosureCleaner.scala:166) でタスクをシリアル化できません org.apache.spark.util.ClosureCleaner$.clean(ClosureCleaner.scala:158) ) org.apache.spark.SparkContext.clean(SparkContext.scala:1623) で org.apache.spark.rdd.RDD.map(RDD.scala:286) で org.apache.spark.api.java.JavaRDDLike$ org.apache.spark.api.java.AbstractJavaRDDLike.map(JavaRDDLike.scala:46) の class.map(JavaRDDLike.scala:89)、score.acv.AppWithSpark.main(AppWithSpark.java:117) の sun.reflect .NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:497) で org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:577) でorg.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:174) で org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:197) で org.apache.spark.deploy. SparkSubmit$.main(SparkSubmit.scala:112) at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)197) org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:112) で org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) で197) org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:112) で org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) で

原因: java.io.NotSerializableException: org.xml.sax.helpers.LocatorImpl シリアル化スタック:

0 投票する
0 に答える
381 参照

java - Java または PMML への MATLAB SVM 分類器

MATLAB (CompactClassificationSVM) にトレーニング済みの SVM 分類器があり、そのすべての設定とサポート ベクターなどがあります。ただし、Android タブレットで予測を実行する必要があるため、Java でモデルを正確に再現したいと考えています。利用可能なトレーニング データがありません。

最も簡単なのは、MATLAB でモデルを PMML ファイルにエクスポートできるようにすることですが、そうする方法が見つかりません。

別のオプションは、SVM 用のライブラリを使用することですが、最初にそのライブラリを使用して実際にトレーニングしない限り、トレーニング済みのモデルを取得する方法がわかりません。ライブラリが PMML へのエクスポートをサポートしている場合、このライブラリは Java である必要はありません。

MATLAB SVM で訓練された分類器を PMML にエクスポートしたり、Java に移植したりする方法について何か提案はありますか?

0 投票する
1 に答える
111 参照

pmml - jpmml使用時のツリーサイズの制限

jpmml (バージョン 1.1.16) でツリー モデルを使用する場合、サイズ制限はありますか?

一部の入力に対して非常に大きなツリー (PMML サイズが数百 MB、数百万の葉) がある場合、次の例外が発生します。

java.lang.NullPointerException at org.jpmml.evaluator.PredicateUtil.evaluateSimplePredicate(PredicateUtil.java:79) at org.jpmml.evaluator.PredicateUtil.evaluate(PredicateUtil.java:54) at org.jpmml.evaluator.TreeModelEvaluator.evaluateNode( TreeModelEvaluator.java:171) org.jpmml.evaluator.TreeModelEvaluator.handleTrue(TreeModelEvaluator.java:186) org.jpmml.evaluator.TreeModelEvaluator.handleTrue(TreeModelEvaluator.java:197) org.jpmml.evaluator.TreeModelEvaluator.handleTrue (TreeModelEvaluator.java:197) org.jpmml.evaluator.TreeModelEvaluator.evaluateTree(TreeModelEvaluator.java:139) org.jpmml.evaluator.TreeModelEvaluator.evaluateRegression(TreeModelEvaluator.java:94) org.jpmml.evaluator.TreeModelEvaluator. evaluate(TreeModelEvaluator.java:77) org.jpmml.evaluator.MiningModelEvaluator.evaluateSegmentation(MiningModelEvaluator.java:463) org.jpmml.evaluator.MiningModelEvaluator.evaluateRegression(MiningModelEvaluator.java:149) :130) org.jpmml.evaluator.MiningModelEvaluator.evaluate(MiningModelEvaluator.java:106) で org.jpmml.evaluator.ModelEvaluator.evaluate(ModelEvaluator.java:263) で org.openscoring.service.ModelResource.evaluate(ModelResource. java:550) org.openscoring.service.ModelResource.doEvaluate(ModelResource.java:404) で org.openscoring.service.ModelResource.doEvaluateCsv(ModelResource.java:339) で org.openscoring.service.ModelResource.evaluateCsv(ModelResource) .java:299) を sun.reflect に置きます。NativeMethodAccessorImpl.invoke0 (ネイティブ メソッド) の sun.reflect.NativeMethodAccessorImpl.invoke (未知のソース) の sun.reflect.DelegatingMethodAccessorImpl.invoke (未知のソース) の java.lang.reflect.Method.invoke (未知のソース) の org.glassfish. jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81) at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:143) at org.glassfish.jersey. org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker の server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:160)。org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:97) の doDispatch(JavaResourceMethodDispatcherProvider.java:158) org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java: 389) org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347) で org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102) で org.glassfish.jersey .server.ServerRuntime$2.run(ServerRuntime.java:303) at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) at org.glassfish.jersey.internal.Errors$1.call(Errors. java:267) org.glassfish.jersey.internal.Errors.process(Errors.java:315) で org.org.glassfish.jersey.internal.Errors.process(Errors.java:297) で org.glassfish.jersey.internal.Errors.process(Errors.java:267) で org.glassfish.jersey.process.internal.RequestScope.runInScope( RequestScope.java:317) org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:286) org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1072) org.glassfish.jersey .servlet.WebComponent.service(WebComponent.java:399) の org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:381) の org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:344) ) org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587) で org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) で org.eclipse.jetty .servlet.ServletHandler.doScope(ServletHandler.java:515) の org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) の org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler) .java:141) org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215) で org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) で org. org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) の eclipse.jetty.server.Server.handle(Server.java:497) org.eclipse.jetty.server.org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) の HttpConnection.onFillable(HttpConnection.java:257) org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) ) org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) で java.lang.Thread.run (不明なソース) で

0 投票する
1 に答える
591 参照

android - JPMML を Android Studio プロジェクトにインポートする

Android Studio プロジェクトにjpmml ( https://github.com/jpmml/jpmml ) を追加するにはどうすればよいですか? pom.xml ファイルを使用しようとしましたが、役に立ちませんでした。アドバイスをお願いします。