该应用程序源于公共交通。用户打开应用程序并查看特定站点(第1页)的公交车出发时间,或计划从位置A到B的旅程计划器(第2页)。两个单独的页面,两个独立的功能。
您可以说用户熟悉路线,因为他们只需知道离开,而第2页则不知道路线,并需要旅行计划员来协助他们。
我正在尝试创建一个应用程序,根据特定变量(将构成一个状态)向用户显示其中一个页面。应用程序向用户显示的页面取决于给定用户操作的那些特定状态的前奖励;用户将1)保持首先显示的页面,这将导致+奖励或2)导航到另一页面,这将导致 - 奖励。
简单来说,我想在用户进入应用程序时向用户显示正确的页面,因此用户无需自己导航。
我可以使用的功能包括:
location
time of day
day of week
|----- monday
|----- tuesday
|----- wednesday
|----- thursday
|----- friday
|----- saturday
|----- sunday
week of month
|----- 1
|----- 2
|----- 3
|----- 4
month of year
|----- january
|----- february
|----- march
|----- april
|----- may
|----- june
|----- july
|----- august
|----- september
|----- october
|----- november
|----- december
action
|----- page 1
|----- page 2
使用此集合的示例如下:
用户进入应用程序,应用程序显示第1页(默认页面)。用户留在页面上,奖励给予州。
{
location: '12th Example Street, Somecity',
timestamp: '2015-03-03 08:31:12', // <--- this includes day, week, month, year etc. as you can see
action: page1
}
由于大多数上班族有7到4个工作岗位,所以很常规。周一到周五,用户通常每天早上乘公共汽车上班,然后回到家里。他知道他的路线,因此第1页将是最佳显示。这个用户在一个非特定的星期五晚上,但是在酒吧外面也有一品脱,最后是在谁知道的中间派对中导致试图回家,第2页对他来说是最佳的星期六早上。
随着学习的进行,应用程序必须在做出假设之前学习,它还必须响应常规的变化。用户可能会更改工作或移动。可以肯定地说,如果用户不知道他们应该在哪里显示第2页,如果应用程序确信用户知道他要去哪里,那么第1页是更好的选择。
现在我的问题。哪种算法/方法最适合此任务。把时间花在一个只是为了意识到这完全是浪费,只不过是一个完全无赖。我之前已经完成了有监督的学习,但是由于显而易见的原因,我不会削减它。
这是(经常性?)强化学习或无监督学习问题,我该如何解决?
欢迎任何评论!我总是喜欢自己做得更好。