我有一个我认为机器学习可以解决的问题。但是,我是新手,不知道从哪里开始,因此感谢任何指向适当解决方法/指南等问题的指针。我搜索了一下,找不到任何类似的问题,但很可能是因为我不知道要搜索什么:
假设我们有一堆水果:a,b,c,d,e,f
它们都有两个与之相关的因素,价格和质量。每天在商店里,顾客可以在两包中进行选择(g1,g2)
,每包由两种价格和质量不同的水果组成(p,q)
。每天的4个水果必须是唯一的,所以g1不能在g2中有一个水果。然后,客户每人购买一包。他们看重价格和质量,但也可能受到外部因素的影响,例如它是什么水果以及它与什么结合。
是否可以从中创建训练集?
我想出了两种表示方法:
我能想到的最简单的方法:让一个水果 x 表示为x:{x_p,x_q}
,一个组表示为 ,g1(a,b)
然后定义一个训练元素day(g1,g2)
,我们将使用它来训练我们的机器。
第二种方法是让水果包含一个现在的标志来标记他们是否在一个组中,x:{x_p,x_q,present}
然后一个组就变成g1(a,b,c,d,e,f)
了,还有一天day(g1,g2)
是否可以在没有多个水果数据的情况下以第一种方式进行,还是只是特定于实现?
如何通过创建镜像训练元素来训练day(g1(a,b),g2(c,d))
vs的镜像情况,day(g1(c,d),g2(a,b))
或者机器可以自行解决?
虽然这是一个最小的例子,但如果我们从更大的水果池(20)中覆盖更多的水果(5/束)会有什么不同?
即使该组/水果组合尚未在集合中进行评估,我们是否可以使用它来预测哪个捆绑包更有可能被挑选?
我想到的另一种方法是对组进行训练,但我认为这会导致组的得分持平,并且很可能会错过组之间的关系,例如 g1 优于 g2,g2 优于 g3,g3 优于 g1 ? 这是真的还是机器也能理解?
我正在查看 javascript 库的大脑和思维,并认为其中一个可能是可能的,但我不知道我正在寻找哪种类型的算法/求解方法。任何有关解决此问题的库的建议,最好是 python/php/java/javascript,我们将不胜感激!
此外,如果有人可以为问题添加合适的标签,那就太好了!
编辑:与组镜像相同,我们如何区分组,我们需要按字母顺序对水果进行排序还是机器也可以处理?(apple,banana) 应该与 (banana,apple) 相同