网站首页  词典首页

请输入您要查询的论文:

 

标题 基于深度学习的商品自动定价模型研究
范文

    黄贺

    摘 要:在电商网站上,往往需要为卖家所销售的物品提供一个可以参考的售价。基于深度学习技术构建了一个电商网站的商品自动定价模型。模型能够根据卖家所提供的商品数据,同时考虑其中的结构化和非结构化的数据,来为商品生成建议的售价。使用日本最大的C2C二手交易平台提供的数据来训练模型,并使用RMSLE作为我们模型的评价指标,结果显示模型能够有效学习商品信息与真实售价的映射关系,具有很高的实用价值。

    关键词:深度学习;定价模型;循环神经网络

    中图分类号:TB 文献标识码:Adoi:10.19311/j.cnki.1672-3198.2019.09.095

    1 深度学习的发展

    人工神经元网络(Artificial Neural Network,ANN)是模拟生物神经网络进行定义的,是由大量神经元彼此连接而构成的自适应非线性动态网络系统。早在20世纪40年代心理学家Mc Culloch和数理逻辑学家Pitts提出的第1代模型——MP模型。为神经元网络的研究做了铺垫。到了20世纪50至60年代,Rosenblatt在MP模型的基础之上又继续研究,增加了自动学习的功能,提出了单层感知器模型,第一次将神经网络的研究开始应用到现实生活中来。不过,处理方式相对单一,针对线性不可分问题没法进行处理。直至20世纪80年代,误差逆传播暨反向传播网络(Back Propagation Network,BP网络)被科学家Rumelhar提出,此BP网络的提出解决了原来单层感知器没法解决的问题。再后来,各种浅层机器学习模型都先后被提出,再到21世纪初期,Hinton等人提出了多隐层的人工神经网络具有优异的特征学习能力,而且可通过“逐层预训练”来解决深层神经网络在训练上的问题。

    自此,深度学习(Deep learning)的研究成为最集中的研究方向,这使得人工神经网络得到了广大人民的响应。结合深度学习的逐层预训练算法中的自动学习应用于网络每一层的预训练,再加上有监督学习(BP算法)微调预训练好的网络。

    目前,带自动学习的包含有深度置信网络(DeepBelief Network,DBN)、卷积神经网络(Convolutional Neural Network,CNN)等。2016年初:谷歌旗下人工智能公司深灵(Deepmind)开发的AlphaGo以5:0战胜了欧洲卫冕冠军,让所有人为之震惊。AlphaGo主要采用价值网络(value networks value)、策略网络(policy network)来自动学习算法并同时选择下棋步法,这两种网络均通过神经网络模型来实现,AlphaGo的成功,标志着人工神经网络已经具备高模仿、自动学习、自动处理并决定行为的潜能。

    2 神经网络与人工神经网络

    深度学习概括来说是一套基于ANN的学习算法,它可以通过从海量的数据中通过输入项拆分并梳理出诸多隐性的元素,通过多维度标签进行对数據分类,获取有参考价值的汇总信息,来提供市场借鉴和决策。比如CNN算法是由图片像素点RGB 值可以学习到图片的内部特征,这些特征包括图片总的的实物、数字、颜色、数量等。深度学习的算法提高了人工的效率,之前需要人工手动完成的特征收集基本都可以通过深度学习的人工神经网络来完成。深度学习基本包括三个方面:人工神经网络、卷积神经网络和循环神经网络。

    卷积神经网络(Convolutional Neural Networks) 的神经网络结构是多层的,最核心的部分包括卷积层、池化层;最终是有连接层将此两层进行联通的,每一层神经网络各自独立。CNN的好处是算法中的各层局部相互独立,同时参数共享,这样大大减少了环节中的参数量,提高了处理效率。CNN最初是二维图像处理算法,结合池化层,图像的平移、倾斜、缩放、其输出项不会发生变化。Lecun 等人最初提出CNN 神经网络也正是方便图像处理,即图像输出项尽可能不受外在需求的改变而影响,处理过程更为高效而简单。

    3 商品自动定价模型

    为什么需要商品自动定价模型(跟前面的内容差不多)。

    通常人们很难确定一件商品的具体售价是多少,特别是对于二手商品等一些难以有完全相同的商品可以参照的情况下。许多的因素都会对一个商品(特别是二手商品)的售价产生影响。例如,一个商品的品牌、产地、原材料、设计等众所周知的特性。此外,如服装等商品还会受到季节、时尚潮流等影响,而对于PlayStation等电子产品在不同的地区会有巨大的价格差异。除此之外,商品的新旧、卖家的描述也会对商品的实际卖出价格产生很大的影响。因此,对于一个电商网站的卖家而言,特别是二手交易平台的卖家,很难确定自己想要卖出的商品的合理售价是多少。这时候一个能够根据卖家商品信息为商品生成参考定价的价格模型就有其存在的合理性和必要性。而本文的主要工作,也着眼于利用二手交易平台的商家提供的商品的信息来为商品提供指导价格。而一件商品的信息,往往包括了结构化和非结构化的数据,如商品的品牌、新旧、品类等都属于结构化数据,而商品的标题、商品描述等数据则属于非结构化数据。为了能够更充分的利用商品的各项信息,我们的模型应当能够同时考虑其中的结构化和非结构化数据,特别是,实际情况中往往个人商家只会提供一些商品描述等非结构化信息,我们的模型还应该能够从这样的非结构化数据中抽取出前面所提到的一些结构化信息作为特征。我们的模型由人工神经网络、循环神经网络等网络作为模块组成整个商品的自动定价模型,下面我们将分别介绍人工神经网络、循环神经网络和我们的商品定价模型。

    3.1 人工神经网络

    人工神经网络是深度学习中常用的一种最简单,也是最基本的模型结构,我们这里将讲简要介绍人工神经网络的基本原理。

    一个常见的人工神经网络架构如图所示,这个神经网络架构分为了输入层、隐藏层和输出层。顾名思义,在输入层,我们为人工神经网络输入数据,这里的数据一般指的是结构化的数据。在隐藏层和输出层,我们进行计算并输出计算的结果。在神经网络的隐藏层上,存在着将输入进行线性变换并使用激活函数进行激活的神经元。这里假设我们由M个输入的变量构成的向量x∈R1×M,神经网络由N个神经元,最终只有一个输出变量y∈R1×1。那么在输入层的数据进入隐藏层的时候,神经网络是进行下述运算的:

    其中,矩阵W连接着输入层与隐藏层,这里做的是矩阵乘法,实际上也可以看作是一个对输入进行的线性变换。之后,每个神经元都会在线性变换的基础之上加上一个常数b0,这个常数也被称为偏置。在完成了这些运算之后,我们得到向量z,神经元接下来使用激活函数进行激活运算:

    σ(z)∈R1×N

    这里面的σ(·)就是我们所说的激活函数。常见的激活函数由sigmoid函数、tanh函数和relu函数等,不同的激活函数会在不同的模型下表现不同的性能。使用何种激活函数往往是构建深度学习模型中需要调整的一项超参数。

    在完成了前面的计算之后,我们得到了隐藏层的输出,并进一步开始计算。在从隐藏层到输入层的计算中,首先也是一个矩阵乘法,我么这里记做θ∈RN×1。然后,在完成如下计算后,加上偏置即得到了最后的输出y:

    上面的计算也可以写成一个完整的运算:

    其中各个矩阵的维度如下:

    在我们的商品自动定价模型和其他很多实用的模型中,人工神经网络并不单独使用,而是与其他的网络结构相结合。

    3.2 循环神经网络

    20世纪80年代,Williams等人提出循环神经网络(Recurrent Neural Network,RNN)的概念。上面之前文章所讲述到的神经网络为全连接的,即层与层是全连接的,每层是没有连接的,这样导致某些处理没法完成。例如,在输入句子词汇过程中,后一个词汇的出现往往依赖前面词汇信息。RNN是能够建模序列数据不同时刻之间的依赖关系,所以在机器翻译、语音识别、图标标注等方面,奠定了更为广泛的使用价值。

    由于RNN的最大特点在于神经网络各隐层之间的节点是具有连接和关联的,它能够获取之前输入项的隐层输出从而判断当前隐层的输出,用大众的理解说来说就是人工的记忆功能。RNN支持任意长度的序列数据建模,但随着输入项的历史时间长度,往往RNN建模时只记录最近几次的历史状态来完成,来减少建模的复杂度,如图2为典型的RNN结构。

    将RNN 展开可以看到,它的特征是所有层共享相同权值、并且深度前馈。然而,实际研究中发现,普通的RNN结构存在梯度消失问题,这样的话,学习数据之间的长程依赖关系问题是没法解决的。针对这个问题,经过长期研究,一些为解决此问题的RNN的变种相继出现,其中最著名的包括:长短时记忆网络(Long Short-TermMemory,LSTM)、门限循环单元(Gated Recurrent Unit,GRU)。LSTM和GRU采用了特殊的隐层结构,特殊的隐层单元的长期状态被增加保存,从而长程依赖关系的问题被有效解决了,因此,此方法为广泛的循环神经网络模型。

    3.3 商品自动定价模型的网络结构

    我们的商品自动定价模型的模型架构图如图3所示,其中包含了大量的输入数据和对于不同输入数据的相应建模,我们将逐层介绍我们模型的计算过程。

    输入层:模型的输入层包含多种商品的信息,包括:商品的标题,商品的描述、商品品牌、商品的成色、商品是否包邮、商品描述的文字长度、商品标题的文字长度、商品的一、二、三级分类。其中,商品的标题和商品的描述是卖家输入的文本数据,属于非结构化数据。商品的品牌、成色、是否包邮、商品的三级分类都属于结构化的数据。此外,我们还手工构造了商品的描述长度和标题长度作为额外的特征,并发现这两个特征能帮助模型更有效的学习。这两个特征也属于结构化数据。

    嵌入层:为了能够统一处理不同类型的数据,我们对于输入的结构化和非结构化的数据都进行了嵌入操作。具体的说,对于商品描述和商品标题这样的非结构化数据,我们实际输入的是数据分词后每个单词的索引,嵌入层能将每个单词的索引转化为对应的词向量。而对于结构化数据我们也进行相同的操作,如对于是否包邮这一特征,会有0和1两种取值,则嵌入层则分别将0和1转化为两个不同的嵌入向量。

    双向GRU:对于商品标题和商品描述,在每个单词都转化为具体的词向量后,我们将词向量序列依次送入双向GRU来对其中的文本语义来进行建模。对于两个双向GRU的输出,我们会去其他输入数据的词嵌入进行拼接得到一个完整的矩阵,并使用人工神经网络进行特征的提取和组合。

    人工神经网络:我们使用深度人工神经网络对前面双向GRU的输出和其他输入数据的嵌入矩阵进行特征的提取和组合。

    4 实验

    4.1 数据集

    我们使用的数据集来自Mercari,日本最大的C2C二手交易平台。该数据集意在让数据科学家们根据其中的成交记录作为样本训练模型,并为其他的二手交易卖家提供商品的参考售价。数据会被我们划分为训练集和测试集。在测试集上,我们使用的评价标准是RMSLE(Root Mean Squared Logarithmic Error)。计算公式如下:

    数据的样本示例如图4。

    4.2 实验细节与结论

    对于商品标题和商品描述,我们设定了10和75作为截断长度,少于截断长度的将使用0作为填充,大于截断长度的数据将会被截断,它们对于的词嵌入向量分别为20和60。对于商品品牌名、商品的三级分类使用长度为10的嵌入向量。对于商品描述长度和标题长度分别使用长度为5的嵌入向量。对商品名和商品描述的语义进行建模的双向GRU的隐藏态长度分别为16和8,对于深度人工神经网络的神經元数量分别为512、256、128、64和1。训练模型使用的优化器为sgd,使用均方差损失作为损失函数。模型共训练2轮,batch为1536。

    我们将数据分为训练集和测试集两个集合,训练集有146万条样本,测试集由1万4千条样本。经过测试,我们的模型能够在测试集上RMSLE损失为0.45。

    5 结论与展望

    本文中我们根据电商网站提供的真实数据构建了一个商品自动定价模型,并在测试集上的RMSLE指标上取得了很好的结果。我们主要贡献在于:

    (1)使用真实数据构建了一个商品自动定价模型,由很高的实用性。

    (2)模型能够同时考虑商品信息中的结构化和非结构化的数据,使用神经网络学习到其中的深层次映射关系。在接下来的工作中,我们会考虑更加复杂的模型,加入预训练的词向量方式来进一步提高我们模型的性能。

    参考文献

    [1]黄立威,江碧涛,吕守业,等.基于深度学习的推荐系统研究综述[J].计算机学报,2018,41(07).

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/2/10 17:42:57