我有一个观察列表,其中每个数据点是一对时间表达式(例如晚上,早晨)和12小时时钟中的一个小时(即1,2,…, 12):Y = {<e_i, h_i>}_i={1,...,N}
。我想在给定时间表达式的24小时时钟中估计小时的分布(或者等价地,将每个数据点分类为AM或PM)。
我有一种感觉,EM在这里会很有用,因为隐藏的AM/PM变量,但我正在努力定义参数。在我使用EM的所有其他示例中,对生成观察值的分布进行了一些假设(例如,它是正态分布,或者基于词袋的文档分类)。但是我不确定如何在这里定义它。
我很感激任何帮助!
我最终把它作为一个ILP问题来解决:
我为12小时和时间表达式的每个组合定义了一个二进制变量(如果是PM为true,如果是AM为false),并为每个表达式定义了开始时间和结束时间变量。我的约束是时间表达式的顺序,例如早上结束在中午开始之前,等等。我最大化了适合每个表达式开始和结束时间的观察值的数量。