究極の恩恵を共有する: モデリングからスコアリングまでの旅概要
新しいデータから新しい結果を予測するための適切なモデルを見つけることは重要な成果です。 しかし、多くの場合、これは最終目標がモデルの予測力をより多くの聴衆と共有することになる旅のステップです。 JMP Pro には、予測モデルのフィッティング、比較、選択を容易にするツールが多数あります。 JMP Pro 13 では、モデルを収集し、新しいテーブルに適用し、モデル比較およびプロファイラー プラットフォームにアクセスするための効率的な方法であるフォーミュラ デポが追加されました。 実稼働環境へのモデルのデプロイを支援するために、Formula Depot はモデルをさまざまなプログラミング言語のスコアリング コードに変換することもできます。 このチュートリアルでは、不動産のケーススタディを使用して、予測モデリングのワークフローを説明します。 データをコンパイルし、モデリング用のデータを準備し、予測モデルを生成し、フォーミュラ デポにモデルを公開し、最適なモデルを探索して選択します。 次に、住宅価格を「その場で」計算できる Web アプリケーションの作成をサポートするスコアリング コードを生成します。また、データをスコアリングするためのさまざまな方法を検討し、現在の展開アーキテクチャの概要を説明します。
チュートリアルの内容
このチュートリアルの最終結果は、AWS でホストされる予測機能を備えた Web アプリケーションです。 見つけられますよここ。 以下は、このページの添付ファイルにあるように、チュートリアルに関連するコンテンツの説明です。
クライアント層 (添付ファイル RedFinWeb.zip を参照) は、ブートストラップユーザーインターフェイスとオープンレイヤーズマッピング機能については。でホストされる静的 Web サイトとして実装されます。 AWS S3 ;インターフェイスは、カスタマイズされた HTML フォームを使用してユーザー データ エントリを収集します。これらは、モデル評価の入力値として使用されます。モデル評価は、休みコンピューティング層を呼び出します。
コンピューティング レイヤー (添付ファイル RedFinServerless.zip を参照) は 2 つの Amazon サービスを使用します。 APIゲートウェイREST 呼び出しのエントリ ポイントであり、AWS にマッピングされます。ラムダサービス。 Lambda は Amazon の実装です。サーバーレスアーキテクチャパラダイム。Function-as-a-Service (FaaS) とも呼ばれます。 サーバーレスは、ステートレス、低遅延、高スループットのアプリケーションに、低い管理コストで大規模なパフォーマンスを提供するため、定義上、次のようなアプリケーションのスコアリングに最適です。恥ずかしいほど平行。
Lambda サービスは、JMP によって生成された Python スコアリング コードの最終的なデプロイ先でした。 AWS サービスへのアプリケーションのデプロイは、そのサービスを使用して手動で行うことができます。管理コンソールただし、プロセスを合理化するには、利用可能な多数のオープンソース ラッパーのいずれかを使用することをお勧めします。 この演習では、サーバーレスアプリケーションフレームワーク。
Python コードが特徴エンジニアリング タスク (クラスタリング、ビニング、代入) とその上に構築されたモデルの両方をどのようにキャプチャするかに注目してください。 これにより、モデルの作成に使用したのと同じ生データ ソースを実稼働環境での新しいデータのスコア付けにも使用できるようになります。これは、保守可能な分析パイプラインを構築する際の重要な考慮事項です。
添付ファイルにも、ジュピターノートブック(RedFinNotebook.zip) は、展開前にモデルをテストするために使用されます。ハウジング シナリオ用に JMP によって生成された Python モデルのコレクション (RedFinModels.zip)。データのクリーンアップとモデルを生成するスクリプトを含む元の JMP テーブル。 (RedFinData.zip)。 この最後の .zip ファイルには、他のアプリケーション (この場合は Excel 式) によるスコアリングのために REST バックエンドを直接呼び出す方法を示すスプレッドシートも含まれています。
参考文献
データのアクセスと操作予測モデリングRe: 究極の恩恵を共有する: モデリングからスコアリングへの旅Web ページは、スコア付けが必要なデータを取得するためのユーザー インターフェイスであるという考え方です。たとえば、ユーザーがいくつかの値を入力するダイアログなどです。 値が送信されると、イベント ハンドラーが収集し、JMP によって生成された JavaScript モデル コードを呼び出します。 結果はユーザーに表示されます。 主な利点は、サーバーに攻撃を返す必要がないため、可能な限り拡張性があることです。 欠点は、一度にスコアリングできる観測値が 1 ~ 2 個に制限されていることですが、ユースケースによっては、これは問題になりません。
具体的な例については、これを見てください。
http://jmp.valentine.s3-website-us-east-1.amazonaws.com/
ここでは、ユーザー入力の代わりに、Web ページが曲線の内側または外側として分類する必要があるランダムな点を生成します。 分類は JMP ニューラル ネットワーク モデルによって行われます。 可視化はD3.jsで行います。
Web アプリケーションを使用してユーザーからデータを収集し、入力をスコアリングして結果を返す方法を示す別の例は、 2016年の発表会。
「WebApp」フォルダーは、概念を示す完全な Web アプリケーションです。 これは、野外研究の植物学者が、測定値に基づいて新しいアイリスの花の標本を分類しようとするときに使用するように設計されました (私は知っています、どれほど独創的か... 
Re: 究極の恩恵を共有する: モデリングからスコアリングへの旅やあ、
私はあなたの助けに感謝します。あなたは最後に、HTML の後ろのブラウザ内で実行することを提案しました...
何か具体的なものを達成するのに役立つ、より詳細な情報やリンクを教えていただけますか?
ありがとう、
ジム
Re: 究極の恩恵を共有する: モデリングからスコアリングへの旅やあ@jgrayson 、
これは、インストール ディレクトリの Resources/Scoring の下にあります。 たとえば、私の Windows マシンでは、次の場所にあります。
C:\Program Files\SAS\JMPPRO\16\Resources\Scoring\JavaScript
Re: 究極の恩恵を共有する: モデリングからスコアリングへの旅やあ、
JavaScript の「jmp_score」はどこにあるのか教えていただけますか?
ありがとう、
ジム・グレイソン