我从我的客户那里得到了一个新的任务(不是传统的),它是关于机器学习的。因为我从来没有去过“机器学习”,除了一些小的数据挖掘的东西,所以我需要你的帮助。
我的任务是根据性别(产品所属的人)、年龄组等对任何购物网站上的产品进行分类,我们可以拥有的培训数据是产品的标题、关键词(可在产品页面的html中找到)和产品描述。
我做了大量的研发工作,我发现Image (cloudsight,vufind)返回了产品图像的细节,但没有完全满足需求,我使用了google的建议查询,搜索了许多机器学习算法,最后.
我知道了“决策树学习算法”,但不知道它是如何适用于我的问题。我尝试了"PlayingTennis“数据集,但无法理解该做什么。
你能告诉我从哪里开始这段旅程吗?我应该专注于决策树学习算法,还是有其他算法你建议我应该专注于根据上下文对产品进行分类?
如果你说的话,我会详细地分享我寻找的东西来解决我的问题。
发布于 2015-06-25 19:15:35
我建议采取以下行动:
Feature_1,Feature_2,Feature_3,.,性别
value_1,value_2,value_3,男性
将其存储在CSV文件中将是一个很好的决定,因为您将能够在不同的机器学习工具中加载和处理它(稍后将更详细地介绍这些工具)。
详细信息
如果原始数据集中有太多的项(例如数万项),那么自己对它们进行分类可能是不切实际的。您可以做的是使用亚马逊机械土耳其简化您的任务。如果您无法使用它(上次我检查您必须有一个美国地址才能使用它),您只需对数百个项目进行分类,就可以开始处理您的模型,并对其余的项目进行分类以提高分类的准确性(您使用的培训数据越多,准确性就越高,但直到一定程度上)。
如何从dataset中提取特性
如果关键字的形式为tag=true/false,则它是一个布尔特性。如果关键字的形式类似于tag=42,则为数字关键字或序数。例如,它可以是价格值或价格范围(0-10,10-50,50-100,等等)如果关键字的形式类似于tag=string_value,您可以将其转换为转化为一个范畴价值 A类(性别)只是布尔值0/1,您可以尝试一下如何提取特征,因为它可能会影响结果的准确性。
如何从产品描述中提取特征
将文本转换为特征向量有不同的方法。寻找TF-以色列国防军算法或类似的东西。
机器学习工具
您可以使用现有的机器学习库之一,并黑掉一些加载CSV数据集、训练模型和检查准确性的代码,但首先我建议使用类似于韦卡的方法。它有或多或少直观的UI,您可以快速开始试验不同的机器学习算法,将数据集中的不同特性从字符串转换为类别,或者从实值转换到序号值,等等。Weka的优点是它有Java API,因此您可以自动化所有的数据转换过程,以编程方式训练模型等等。
选择的哪些算法
我建议使用决策树算法,如C4.5。它速度快,在广泛的机器学习任务上显示出良好的效果。此外,您还可以使用分类器集成。有各种各样的算法可以将几种算法结合起来(google用于增强,或者随机森林用于查找更多),通常它们能提供更好的结果,但是工作速度更慢(因为需要通过几种算法运行一个单一的特征向量。
让算法更加精确的另一个技巧是使用处理不同特征集的模型(例如,一种算法使用从标记提取的特征,另一种算法使用从产品描述中提取的数据)。然后,您可以使用像堆叠这样的算法将它们组合起来,得出最终的结果。
发布于 2015-06-19 11:25:37
请考虑支持向量分类器(SVC),或者为Google考虑支持向量机(SVM)。如果您有一个大型的培训集(我怀疑它),则搜索“快速”或“可伸缩”的实现。
https://stackoverflow.com/questions/30935935
复制相似问题