最近では、 Invreaのスタートアップが登場しました。これは、Excelを確率的プログラミング言語として使用することを示唆しています。 以下は、スタートアップサイトの記事の1つの翻訳です(翻訳は、教育目的のみのために作成されました)。 この記事では、著者は「家庭」の状況の例を検討しています。 彼らは、2016年のオリンピックで誰がテニストーナメントで勝つかを理解することに関心があり、勝つ可能性が最も高い候補者を予測します。 記事は、第1ラウンドのすべてのゲームが完了した後、ゲーム中に8月7日に書かれました。
***
タスクの説明
「私たちの意見では、機械学習を使いやすく、誰もがアクセスできるようにすることが非常に重要です。 既存の質問またはタスクを、可能な計算に必要なフレームワークに合わせる必要性を可能な限り排除する必要があります。 著者は、Invrea Scriptingプラグイン(Excel用)を提示します。このプラグインを使用して、現在および定期的なイベントに関する決定を行うことができます。 これを実証するために、著者はExcelスプレッドシートで男子シングルストーナメントのトーナメントを再現しました。 プラグインを使用して、この組織での評価に基づいて、プロテニスプレーヤー協会(ATP)に含まれる各プレーヤーの勝利の確率が決定されました。
Excelプラグインを使用してリオ2016年の男子テニストーナメントの勝者を予測するビデオデモ(英語):
最初のラウンドの後の金メダルの勝者についての予測。 Invreaプラグインを使用して計算:

男子シングルプレーヤートーナメントでは、64人が参加し、それぞれが他のプレーヤーと向かい合っています。 勝者は次のラウンドに進み、敗者は競技を去ります。 これは決勝まで続き、勝者には金メダルが授与されます。 問題は、金を受け取る可能性が最も高いのは誰ですか? トーナメントの各プレイヤーの勝利の確率を得ることは素晴らしいことです。 テニスには多くの不確実性があります。 マレーが錦織よりも高い評価を持っているという事実は、マレーがさらに前進することを保証するものではありません。 他のスポーツイベントと同様に、失望や驚きはいつでも起こり得ます。
幸いなことに、機械学習はこの問題に対処する方法を見つけるように設計されています。 これを使用すると、マレーと錦織のどちらが勝つかを決める際に、ある程度のランダム性を考慮することができます。 マレーは、格付けによると、わずかに高い確率を持っていますが、錦織が敗北する可能性も公平です。
スプレッドシートでの確率モデルの紹介
以下は、各プレーヤーがリオに勝つ可能性を判断するために作成者が作成したExcelスプレッドシートです。 ファイルには2つのシートがあります。最初のシートには、すべてのプレーヤーのリスト、評価、およびこの評価の対数が含まれています。 プレーヤーの説明ではポイントの数が必ずしも重要ではないため、各評価にランダムな値が追加されました(図1を参照)。 たとえば、デルポトロのATPランキングは140ポイントしかありませんが、これは主にゲーム期間が短いためです。 彼の最近の結果は、彼が彼の評価が示すよりも優れたプレーヤーであると信じさせます。 ランダム性は、これらの小さな不整合を考慮するのに役立ちます。
Association of Professional Tennis Playersの評価に基づいた各プレーヤーのアプリオリな「パワー」を備えた補助スプレッドシート:
図 1。
2番目のシートには順位が含まれています。 列Cは、トーナメントを説明するページにある最初のラウンドを反映しています。 しかし、勝者を含むトーナメントのさらなる状態もすべて満たされていることがわかります(図2を参照)。 これはどのようにして生じたのですか? (F9キーを押して)スプレッドシートを更新すると、2回目以降のすべてのプレーヤーが変更されることがあります。 つまり、誰が次のラウンドに進むかを反映するセルには、確率に基づいて計算された値が含まれます。
一致結果をシミュレートする基本的なスプレッドシート:
図 2。
しかし、そのランダムな性質はルールに基づいています:プレーヤーAの評価に近いランダムな値を選択し、プレーヤーBの評価に近い別のランダムな値を選択すると想像してください。これらの値は実際の評価よりも低い場合があります。 この場合、ルール:より高いランダム変数を持つものが勝ちます。 したがって、ATPレーティングが高いということは、対戦相手を倒す可能性が高いことを意味しますが、ひどい日を過ごしたり、怪我をしたり、ランダムな値の低い値を条件付きで獲得したりする可能性があります。 ここから、物事が繰り返されます。 3回目のラウンドでは、2回目のラウンドで合格したプレイヤーに同じ平等が表示されます。 などなど。 そのため、スプレッドシートを何度も更新すると、さまざまな人々がトーナメントの勝者として宣言されます。
Invrea Scriptsでできることは、GAUSSIANなどの機能を使用してこれらのランダムセルを定義することです。このプラグインを使用すると、数千のスクリプトを自動的に生成して表示できます。 各ランダムセルの分布を確認できます。最初のラウンドで誰が勝ちますか? 二回戦で? 準決勝で? フィナーレで? 興味のあるセルの確率を調べることができます。
事後分布を生成および分析します
以下に表示されるヒストグラム(図3を参照)は、各プレイヤーの勝利について計算された事後確率であり、最初のラウンドの終わりに何が起こったのかはわかりません。 バーが高いほど、対応するプレーヤーの勝利の可能性が高くなります。 彼女をちらっと見ただけで、ジョコビッチにはかなりのチャンスがあることがわかります。 彼を潜在的に止めることができるのは、マレー、ナダル、錦織だけです(フェデラーは競技会に参加していません)。 この情報のおかげで、ジョコビッチの勝利への期待についてもっと多くの理由を述べることができます。
図 3。
実際、もっと面白いことができます。 ラウンドの終わりに結果が得られたらすぐに、ACTUAL(特別機能Invrea)を使用してテーブルでこれを考慮することができます。 これを念頭に置いて、前回のラウンドですでに得られた結果に焦点を当て、誰が決勝に勝つかというシナリオを見ることができます。 たとえば、著者は最初のラウンドの後、すべての一致の結果を使用しました。
これらには、ジョコビッチがデルポトロに負けたという事実を含む、いくつかの予期しない状況が含まれていました(図4を参照)。
図 4。
プラグインを開始した後、新しいデータを考慮して、ファイナルで勝つ人の確率分布の変化を見ることができます(図5を参照)。プレーヤー数が減り、ジョコビッチの勝利の確率はゼロになりましたが、マレー、ナダル、錦織の結果は改善されました最初のラウンドの後。

図 5。
実際、最初のラウンドの結果に関する情報は、プラグインが勝者となる可能性の高いユーザーをより適切に計算するのに役立つため、各ランダムセルの分布が変更されています。 これらの結果について結論を導き出し、マレーまたは錦織の勝者を引き受けることができます。 トーナメント中、進行中のイベントに関する情報を追加して、さらにフォローできます。 2回目のラウンドの結果が表示されたら、ACTUALSを使用してそれらを追加できます。予測はさらに良くなります。
また、トーナメント中に予測できる大量の情報があります。 第4準々決勝で最も勝者となる可能性のある人は誰ですか(図6)。 2回目の準決勝(図7)? 上記のヒストグラムを見ると、これらの各質問に対する答えを得ることができます。
図 6。
図 7。
Invrea Scenariosはこの種の予測に役立ちますが、それだけではありません。 プラグインは、不確実性をシミュレートし、仮定、ビジネス決定、保険、および支払いスケジュールの新しい情報と新しいデータに基づいて何かを予測できます。 Excelスプレッドシートのセル間の関係として決定をシミュレートできる場合は、Invreaが役立つ可能性が十分にあります。 さらに、私たちは私たちの生活の他の分野からの状況とタスクを使用して、特定のイベントの予測に関連する一連の記事を続けます。」
***
あとがき
先に述べたように、この記事は、男子トーナメントの第1ラウンドのみの終了後、8月7日に書かれました。 既にご存知のとおり、リオ2016年の勝者はAndy Murrayであり、その勝利は記事で最も高い確率で予測されました(翻訳の図5を参照)。
この分野に興味があり、翻訳が気に入ったら、一般的な機械学習、特に確率的プログラミングに関連する他の記事を翻訳する計画があります。 また、教育および商業プロジェクトでの最新の機械学習アプリケーションについて話すアイデアもあります。