简单的机器学习问题。可能有很多方法可以解决这个问题:
有 4 种可能的事件的无限流:
'event_1', 'event_2', 'event_4', 'event_4'
事件的顺序不是完全随机的。我们将假设大多数事件的出现顺序有一些复杂的模式,而其余事件只是随机的。不过,我们并不提前知道这些模式。
收到每个事件后,我想根据过去事件的顺序来预测下一个事件将是什么。所以我的问题是:我应该为这个预测器使用什么机器学习算法?
然后预测器将被告知下一个事件实际上是什么:
Predictor=new_predictor()
prev_event=False
while True:
event=get_event()
if prev_event is not False:
Predictor.last_event_was(prev_event)
predicted_event=Predictor.predict_next_event(event)
问题是预测器应该维持多长时间的历史,因为维持无限的历史是不可能的。我会留给你来回答。尽管出于实用性考虑,答案不能是无限的。
所以我相信这些预测必须通过某种滚动历史来完成。因此,添加新事件和使旧事件过期应该是相当有效的,例如,不需要重建整个预测器模型。
对我来说,特定的代码而不是研究论文将为您的回复增加巨大的价值。Python 或 C 库很好,但任何事情都可以。
更新:如果每一轮可以同时发生多个事件怎么办。这会改变解决方案吗?