Я никогда не использовал .NET для любого анализа данных, но я уверен, что это не будет слишком ужасно трудно перенести то, что я говорю здесь, в логику в .NET
Одна из вещей, людям не нравится в науках о данных, так это то, что для того, чтобы увидеть, возможно ли что-то действительно (предсказание будущих результатов в этом случае), вам нужно много изучать данные и посмотреть, достаточно ли данных для шаблона (с помощью человека или с помощью алгоритма ML).
Путь к этому состоит в том, чтобы каким-то образом перетасовать и разделить данные ... скажем, в одну группу с 70 процентами данных и секунду с 30 процентами данных. Как только вы сделаете это, вы хотите обучить некоторый алгоритм первой группе (набор тренировок) и использовать вторую группу (тестовый набор) для проверки точности вашего алгоритма. Итак, как вы выбрали алгоритм? Это самая сложная часть. Только вы можете сказать, что лучше всего подходит для вашего конкретного сценария, учитывая полный доступ к данным. Однако, учитывая, что ваш результат, кажется, очень дискретный (скажем, max 5 действий), что делает это контролируемой проблемой классификации обучения. Я бы сделал некоторый анализ, используя один из этих алгоритмов (SVM, kNN и DecisionsTrees - несколько популярных), и используйте некоторую ошибку LIKE F1 или R^2, чтобы определить, насколько хорошо ваш установленный алгоритм работает на вашем тестовом наборе.