CN110909536A - 用于自动生成产品的文章的系统和方法 - Google Patents
用于自动生成产品的文章的系统和方法 Download PDFInfo
- Publication number
- CN110909536A CN110909536A CN201910799302.2A CN201910799302A CN110909536A CN 110909536 A CN110909536 A CN 110909536A CN 201910799302 A CN201910799302 A CN 201910799302A CN 110909536 A CN110909536 A CN 110909536A
- Authority
- CN
- China
- Prior art keywords
- sentence
- sentences
- target
- feature
- filtered
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000010801 machine learning Methods 0.000 claims description 5
- 230000006978 adaptation Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 description 28
- 238000013473 artificial intelligence Methods 0.000 description 20
- 238000001914 filtration Methods 0.000 description 19
- 230000015654 memory Effects 0.000 description 14
- 230000004044 response Effects 0.000 description 13
- 238000013135 deep learning Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 239000013598 vector Substances 0.000 description 8
- 230000003993 interaction Effects 0.000 description 7
- 239000000284 extract Substances 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000002996 emotional effect Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 241000555745 Sciuridae Species 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 239000010985 leather Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000007935 neutral effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 229920000742 Cotton Polymers 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012553 document review Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000008140 language development Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0623—Item investigation
- G06Q30/0625—Directed, with specific intent or strategy
- G06Q30/0627—Directed, with specific intent or strategy using item specifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/55—Rule-based translation
- G06F40/56—Natural language generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Business, Economics & Management (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Economics (AREA)
- Computing Systems (AREA)
- Strategic Management (AREA)
- Databases & Information Systems (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种用于生成产品的文章的方法和系统。该方法包括:接收来自用户的请求;当请求包括产品的标识时,从特征数据库中检索产品的特征,当请求包括关键字时,通过比较关键字与特征或特征的同义词之间的相似度来检索产品的特征;生成与特征对应的候选句子;从候选句子中选择句子,并且修改和重新排列句子以生成文章。
Description
交叉引用
在本公开的描述中引用并讨论了一些参考文献,这些参考文献可以包括专利、专利申请和各种出版物。之所以提供这些参考文献的引用和/或讨论仅仅是为了使本公开的描述变得明晰,而不是承认任何这样的参考文献是本文所述的公开内容的“现有技术”。本说明书中引用和讨论的所有参考文献均以引用的方式整体并入本文中,就同每篇参考文献以引用的方式单独并入一样。
技术领域
本公开总体上涉及自动生成文章,并且更具体地涉及用于在在线平台上自动生成描述电子商务产品的文章的系统和方法。
背景技术
这里提供的背景描述是旨在总体上呈现本公开的背景。当前署名的发明人的就在此背景技术部分中所描述的程度的工作,以及说明书中可能尚未构成提交时的现有技术的各方面,无论是明确的还是隐含的方式均不被视为针对于本公开的现有技术。
电子商务一直是社会生活的重要组成部分。每天,在amazon.com、jd.com和alibaba.com等在线零售平台上都有数十亿种商品可供出售。许多产品附带的是最低程度的文字描述,这让消费者难以形成全面的认知感受,更不用说购买的兴趣了。
以人工方式编写高质量的文本描述似乎是此问题的一种解决方案。但是,鉴于商品数量十分巨大,人工写作需要耗费极大的劳动力。
因此,本领域需要解决上述缺陷及不足之处。
发明内容
在某些方面,本公开涉及一种用于生成目标产品的文章的方法。在某些实施例中,该方法包括:由计算设备接收来自用户的请求,该请求包括目标产品的关键字和标识中的至少一个;基于请求,确定目标产品的至少一个目标特征;生成与目标特征对应的多个候选句子;基于来自用户的指令,从候选句子中选择多个目标句子;并且基于目标句子生成文章。
在某些实施例中,确定至少一个目标特征的步骤包括:确定该请求包括目标产品的关键字还是标识;当请求包括目标产品的标识时:从特征数据库中检索至少一个目标特征,该特征数据库包括产品的标识和产品的对应特征;并且当请求包括目标产品的关键字时:通过将目标产品的关键字与同义词词典进行比较来确定至少一个目标特征,该同义词词典中的词典词包括特征和特征的同义词。
在某些实施例中,目标产品的标识是目标产品的库存单位(SKU)。
在某些实施例中,将关键字与同义词词典进行比较的步骤包括:将关键字与词典词进行匹配,并且当不存在匹配时,计算关键字与词典词之间的相似度,并将与关键字的相似度最高的词典词定义为目标产品的特征。
在某些实施例中,使用机器学习来计算关键字与词典词之间的相似度。
在某些实施例中,生成多个候选句子的步骤包括:选择与目标特征对应的候选句子;确定候选句子与目标特征之间的冲突;移除具有冲突的候选句子,以获得经过滤句子;提取每个经过滤句子中反映的特征;并且基于每个经过滤句子的反映特征与产品的目标特征之间的适配值,对经过滤句子进行排序。基于每个经过滤句子的反映特征与目标特征之间的相同特征的数量来计算出适配值。
在某些实施例中,该方法还包括向经过滤句子添加新句子,该新句子通过以下方式生成:用同义词替换经过滤句子中的一个经过滤句子中的动词或形容词。
在某些实施例中,该方法还包括向经过滤句子添加新句子,该新句子通过以下方式生成:将经过滤句子中的一个经过滤句子解析成句法成分;并将句法成分重新组织成与经过滤句子中的该一个经过滤句子不同的句法结构。
在某些实施例中,选择多个目标句子的步骤包括:基于经过滤句子的排序,从经过滤句子中选择一个目标句子;从经过滤句子中移除所选择的一个目标句子,并对其余经过滤句子进行重新排序;并且从经过重新排序的其余经过滤句子中选择另一目标句子。
在某些实施例中,基于目标句子生成文章的步骤包括:提供用于修改目标句子和重新排列目标句子的界面。
在某些方面,本公开涉及一种用于生成目标产品的文章的系统。在某些实施例中,系统包括计算设备。计算设备具有处理器和存储计算机可执行代码的存储设备。当在处理器处执行时,计算机可执行代码配置为执行上述方法。
在某些方面,本公开涉及一种存储计算机可执行代码的非暂时性计算机可读介质。当在计算设备的处理器处执行时,计算机可执行代码配置为执行上述方法。
根据以下结合附图及其说明的优选实施例的描述,本公开的这些及其他方面将变得显而易见,但是,可以在不脱离本公开的新颖概念的精神和范围的前提下影响其中的变化和修改。
附图说明
附图示出了本公开的一个或多个实施例,并与书面描述一起用于解释本公开的原理。在任何可能的情况下,在整个附图中使用相同的附图标记来表示实施例的相同或相似的元素。
图1示意性地描绘了根据本公开的某些实施例的文章生成系统。
图2示意性地描绘了根据本公开的某些实施例的文章生成系统。
图3A示意性地描绘了根据本公开的某些实施例的特征解析模块。
图3B示意性地描绘了根据本公开的某些实施例的属性和特征。
图4A示意性地描绘了根据本公开的某些实施例的文本生成模块。
图4B示意性地示出了呈现成对共同出现的属性的知识图。
图4C示意性地示出了根据本公开的某些实施例的对搜索到的句子进行解析并以不同的句法结构重新组织经解析的句子的示例。
图5示意性地描绘了根据本公开的某些实施例的文章呈现模块。
图6示意性地描绘了根据本公开的某些实施例的用于呈现文章的方法。
图7示意性地描绘了根据本公开的某些实施例的用于呈现文章的方法。
图8示意性地示出了根据本公开的某些实施例的工程架构。
图9A至图9D示意性地示出了根据本公开的某些实施例的文章生成应用程序的界面。
图10示出了根据本公开的某些实施例的工作流程。
具体实施方式
在以下示例中更具体地描述了本公开,这些示例仅是说明性的,因为其中的许多修改和变化对于本领域技术人员来说是显而易见的。现在详细描述本公开的各种实施例。参考附图,在所有视图中相同的数字表示相同的组成部分。如本文的描述和随后的权利要求中所使用的,“一个(a)”、“一个(an)”和“该”的含义包括复数指代,除非上下文另有明确说明。此外,如本文的描述和随后的权利要求中所使用的,“在......中”的含义包括“在......中”和“在......上”,除非上下文另有明确规定。此外,为了方便读者,可以在说明书中使用标题或副标题,这不会影响本公开的范围。另外,本说明书中使用的一些术语在下面作出了更具体的定义。
本说明书中使用的术语通常在本领域、在本公开的上下文内以及在使用每个术语的特定上下文中具有普通的含义。用于描述本公开的某些术语在下文或说明书中的其他地方进行了讨论,从而向从业者提供关于本公开的描述的额外指导。应当理解的是,可以以不止一种的方式来叙述同样的事情。因此,替代性语言和同义词可以用于本文所讨论的任何一个或多个术语,并且对于术语是否在本文中详细阐述或讨论也没有任何特殊意义。提供了某些术语的同义词。一个或多个同义词的叙述并不排除其他同义词的使用。本说明书中任何地方的示例(包括本文中讨论的任何术语的示例)的使用仅是说明性的,并且决不限制本公开或任何示例性术语的范围和含义。同样地,本公开不局限于本说明书中给出的各种实施例。
除非另有定义,否则这里使用的所有术语(包括技术术语和科学术语)具有与本公开所属领域的普通技术人员通常理解的含义相同的含义。将进一步理解的是,诸如在常用词典中定义的那些术语应被解释为具备与其在相关领域和本公开的上下文中的含义一致的含义,并且将不被解释为理想化的或者过于正式的意义,除非在此明确作出了如此的定义。
如本文所用,“大约”、“约”、“基本上”或“大致”通常表示在给定值或范围的20%内,优选地10%内,更优选地5%内。这里给出的数值是近似的,这就意味着如果没有明确地说明,可以推断出术语“大约”、“约”、“基本上”或“大致”。
如本文所用,“多个”意指两个或更多个。
如本文所用,术语“包括”、“包含”、“携带”、“具有”、“含有”、“涉及”等应理解为开放式的,也就是说意味着包括但不限于。
如本文所用,短语“A、B和C中的至少一个”应该被解释为使用非排他逻辑OR表示逻辑(A或B或C)。应当理解,方法内的一个或多个步骤可以以不同的顺序(或同时地)执行,而不会改变本公开的原理。如本文所用,术语“和/或”包括一个或多个相关所列项目的任何和所有组合。
如本文所用,术语“模块”可以指代以下内容,作为以下内容的一部分或者包括以下内容:专用集成电路(ASIC);电子电路;组合逻辑电路;现场可编程门阵列(FPGA);执行代码的处理器(共享、专用或群组);提供所述功能的其他合适硬件组件;或者上述部分或全部的组合,比如在片上系统中。术语“模块”可以包括存储由处理器执行的代码的存储器(共享、专用或群组)。
如本文所用的术语“代码”可以包括软件、固件和/或微代码,并且可以指代程序、例程、函数、类和/或对象。如上所使用的术语“共享”意味着可以使用单个(共享)处理器来执行来自多个模块的一些或所有代码。另外,来自多个模块的一些或所有代码可以由单个(共享)存储器存储。如上所使用的术语“群组”意味着可以使用一组处理器来执行来自单个模块的一些或所有代码。另外,可以使用一组存储器来存储来自单个模块的一些或所有代码。
如本文所用的术语“界面”通常是指在组件之间的交互点处的通信工具或装置,用于执行组件之间数据通信。通常,界面可以适用于硬件级别和软件级别,并且可以是单向或双向界面。物理硬件界面的示例可以包括电连接器、总线、端口、电缆、终端和其他I/O设备或组件。与界面通信的组件可以是例如计算机系统的多个组件或外围设备。
本公开涉及计算机系统。如附图中所示,计算机组件可以包括示为实线框的物理硬件组件以及示为虚线框的虚拟软件组件。除非另有说明,否则本领域普通技术人员将理解的是,这些计算机组件可以以(但不限于)软件、固件或硬件组件或其组合的形式来实现。
这里描述的装置,系统和方法可以由一个或多个处理器执行的一个或多个计算机程序实现。计算机程序包括存储在非暂时性有形计算机可读介质上的处理器可执行指令。计算机程序还可以包括存储数据。非暂时性有形计算机可读介质的非限制性示例是非易失性存储器、磁存储装置和光存储装置。
现在将在下文中参考附图更全面地描述本公开,其中在附图中示出了本公开的实施例。然而,本公开可以以许多不同的形式体现,并且不应该被解释为局限于这里阐述的实施例;相反,提供这些实施例是为了使本公开变得彻底和完整,并且将本公开的范围完全传达给本领域技术人员。
随着电子商务平台上所列出的产品的数量不断增多,需要通过给出描述产品的高质量文章来促进产品的销售。然而,当以人工方式编写产品的文章时,难以扩大写作过程,而且,成本高,效率低。
在某些方面,本公开开发了一种计算机辅助文章或内容生成系统,这极大地促进了广告内容的生成(比如,商品描述、广告陈述、文章等),这最终改善了销售情况和用户体验。
在某些实施例中,使用高级人工智能(AI)技术来提供新颖的软件系统,以便基于描述商品的SKU id或关键字自动地生成高质量的文本。AI生成的文本与在线文本编辑器相结合,为写者提供了随时可供他们选择、编辑和提交的材料。与传统方式相比(从零开始写作),该系统明显加快了文章写作过程。该系统拥有一个Web界面,用户可以在其中输入关键字,选择AI生成文本,对文本进行刷新/编辑并进行提交。AI是基于历史电子商务文本内容进行训练的,由专业写手编写,并且基于用户反馈(用户评分、AI生成文本的选择和编辑)不断地自我完善。换言之,本公开通过将包括自然语言处理、机器学习、Web用户界面(UI)和软件工程在内的技术集成在一起,提供了一种嵌入了AI以便于在电子商务环境中进行写作的系统。该系统尤其能够克服人类写作解决方案的弊端:(1)规模-该系统可以根据需要生成尽可能多的文本;(2)效率-该系统为每个用户每秒钟生成数千个句子;(3)成本-与专业写手的劳动力相比,电力、互联网服务和计算机折旧的成本可以忽略不计。
图1示意性地描绘了根据本公开的某些实施例的文章生成系统。如图1所示,系统100包括输入模块110、特征解析模块120、文本生成模块130、文章呈现模块140、编辑器模块150和“我的文章”模块160。
当用户170想要生成文本内容时,系统100需要知晓用户的意图:内容将要描述哪个物品,物品的哪个特征最吸引人,哪种写作风格最合适。因此,系统100向用户170提供输入框,以便他们键入物品SKU或关键字作为输入110。
在库存管理领域,SKU是一种独特的待售物品(比如,产品或服务)类型以及与该物品类型相关联的所有属性,这些属性将本物品类型与其他物品类型区分开来。对于产品而言,这些属性可以包括制造商、描述、材料、尺寸、颜色、包装和保修条款。当企业对其库存进行盘点时,企业会计算每个SKU的数量。SKU还可以指代唯一标识符或代码,而这种唯一标识符或代码指代的是特定的库存单位。这些代码不进行规范或标准化。当公司从供应商处收到物品时,公司可以选择保留供应商的SKU或创建自己的SKU。在某些实施例中,SKU指的是唯一标识符,比如,具有8至16个数位的数字。
响应于接收到输入110,系统100在过程122中判断输入110是SKU 123还是关键字124-如果是前者,则系统100查询内部数据库125,以找出与该SKU 123相关联的属性;如果是后者,则系统100在过程126中查询同义词词典,以找出与关键字同义的产品特征132,其中特征是产品属性的值。总而言之,特征解析模块120将输入110转译为产品的特征132。
然后,在过程134中,响应于接收到产品的特征132,文本生成模块130采用AI算法来基于产品特征132生成句子。
文章呈现模块140提供web界面,以便向用户170呈现AI生成的句子,使得用户170可以选择并刷新句子。刷新发生在两种情况下:(1)用户想要更多的候选句子,以及(2)在用户将句子选为选择之后。在场景(2)中,从句子候选列表中移除与所选句子携带重复特征的候选句子。由于所选句子已经表示了一部分特征,因此,不再需要添加相似的句子。刷新是从搜索结果中移除这些句子。如图1所示,系统100在过程142中判断是否有满意的句子。如果有,则用户170在过程144中选择满意的句子,并且在过程146中整合满意的句子。如果没有满意的句子,则系统在过程148中进行刷新,以生成不同的句子或更多的句子,以供作出进一步的判断。
在整合句子之后,用户170使用编辑器150来构造文章的个别句子。编辑器150为用户提供了灵活的交互界面:用户可以拖动句子来改变其布局顺序;用户可以对句子内的文本进行编辑;用户可以删掉整个句子;用户可以自己编写文本。编辑内容和合并后的文章可以由用户170提交给web服务,或者可以保存来供稍后提交。此外,将编辑内容传回文本生成模块130中的算法和模型,由此例如通过重新训练模型改进算法和模型。
我的文章模块160用于存储先前保存/提交的文章,以便用户170可以搜索到他们以前的作品并重复使用这些作品。
图2示意性地描绘了根据本公开的某些实施例的文章生成系统。图2中所示的系统200和图1中所示的系统100是展示相同或相似系统的不同方式。如图2所示,系统200包括服务器计算设备210、一个或多个用户计算设备250以及将用户计算设备250与服务器计算设备210连接的网络230。
服务器计算设备210可以用作服务器或主计算机。在某些实施例中,服务器计算设备210可以是提供文章生成服务的服务器计算机、集群、云计算机、通用计算机或专用计算机。在某些实施例中,用户计算设备250可以是云计算机、移动设备、平板电脑、通用计算机、无头计算机、可穿戴设备或专用计算机,其可访问由服务器计算设备210提供的文章生成服务。在某些实施例中,网络230可以是有线或无线网络,并且可以体现成各种形式,比如,公共网络和专用网络。网络的示例可以包括但不限于LAN或包括互联网在内的广域网(WAN)。在某些实施例中,可以应用两个或多个不同的网络和/或接口来将服务器计算设备210连接到用户计算设备250。在某些实施例中,网络230也可以是系统接口、通用串行总线(USB)接口。
如图2所示,服务器计算设备210可以包括但不限于处理器212、存储器214和存储设备216。在某些实施例中,服务器计算设备210可以包括其他硬件组件和软件组件(未示出)来执行其相应的任务。这些硬件和软件组件的示例可以包括但不限于其他所需的存储器、接口、总线、输入/输出(I/O)模块或设备、网络接口和外围设备。
处理器212可以是配置为控制服务器计算设备210的操作的中央处理单元(CPU)。处理器212可以执行服务器计算设备210的操作系统(OS)或其他应用程序。在一些实施例中,服务器计算设备210可以具有一个以上的CPU作为处理器,比如,两个CPU、四个CPU、八个CPU或任何合适数量的CPU。存储器214可以是易失性存储器(如随机存取存储器(RAM)),用于在服务器计算设备210的操作期间存储数据和信息。在某些实施例中,存储器214可以是易失性存储器阵列。在某些实施例中,服务器计算设备210可以在一个以上的存储器214上运行。存储设备216是用于存储服务器计算设备210的OS(未示出)和其他应用程序的非易失性数据存储介质。存储设备216的示例可以包括非易失性存储器,比如,闪存、存储卡、USB驱动器、硬盘驱动器、软盘、光盘驱动器、固态驱动器(SSD)或任何其他类型的数据存储设备。在某些实施例中,存储设备216可以是本地存储、远程存储或云存储。在某些实施例中,服务器计算设备210可以具有多个存储设备216,这些存储设备可以是相同类型的存储设备或不同类型的存储设备,并且服务器计算设备210的应用程序可以存储在计算设备210的一个或多个存储设备216中。如图2所示,存储设备216包括文章生成应用程序220。文章生成应用程序220提供有效地生成文章的平台。
文章生成应用程序220包括特征解析模块222、文本生成模块224、文章呈现模块226和用户交互模块228。在某些实施例中,文章生成应用程序220可以包括用于模块222-228的操作所需的其他应用程序或模块。应当注意,模块各自由计算机可执行代码或指令或者数据表或数据库实现,它们共同形成一个应用程序。在某些实施例中,每个模块还可以包括子模块。替代地,一些模块可以组合为一个堆栈。在其他实施例中,某些模块可以实现为电路而不是可执行代码。在某些实施例中,文章生成应用程序220的一些或所有模块可以位于远程计算设备或云设备处。
特征解析模块222配置为在经由交互界面(如图形用户界面(GUI))从用户接收到输入后,对输入进行解析,以获得一个或多个产品的一个或多个特征,并将特征发送到文本生成模块224。参考图3A,特征解析模块222包括子模块和数据,具体为请求接收器2220、SKU查询模块2222、SKU特征数据库2224、同义词匹配模块2226、产品特征列表2228以及同义词词典2230。请求接收器2220配置为接收来自用户的请求或输入。请求可以包括用户输入的产品的关键字或产品的SKU。然后,请求接收器2220配置为将SKU发送到SKU查询模块2222或/和将关键字发送到同义词匹配模块2226。
SKU查询模块2222配置为响应于接收到SKU,使用SKU查询SKU特征数据库2224,由此获得与具有SKU的产品相对应的单个或多个产品特征。SKU特征数据库2224也称为产品属性数据库,其中产品的特征是产品的某些属性的值。每个产品都由其特定SKU标识出,并且产品的特征存储在数据库中并链接到SKU。换句话说,每个SKU对应于或标识其中一个产品,而每个产品都标记有作为某些属性的值的一个或多个特征。通过查询SKU特征数据库2224,直接检索到与具有SKU的产品相对应的特征。通常,用户的请求仅包括与一个产品相对应的一个SKU。在某些实施例中,请求还可以包括两个或多个SKU和一个或多个对应的产品,并且由SKU查询模块2222生成多个产品的特征。在某些实施例中,使用由产品的商家或销售商输入的信息自动地生成SKU特征数据库2224。在某些实施例中,可以手动地标记或检查产品的特征。
图3B示意性地描绘了根据本公开的某些实施例的属性和特征。在某些实施例中,如图3B所示,总共有十个定义的属性,包括写作风格、性别、季节、颜色、面料、厚度、袖子、衣领、场景和服装功能。每个属性都有多个值,也就是特征。这些特征用于标记句子。在一些实施例中,十个属性包括总共300至400个特征。每个属性的特征1和特征2仅是示例,并不表示它们在属性中的顺序。此外,一个属性的特征1与另一属性的特征1之间没有对应关系;并且一个属性的特征2与另一属性的特征2之间也没有对应关系。在某些实施例中,属性和特征存储在特征列表2228中,并且可以通过向特征列表2228添加新条目而轻易地实现扩展。
同义词匹配模块2226配置为响应于接收到单个或多个关键字,获得与关键字对应的产品的单个或多个特征。在某些实施例中,同义词匹配模块2226使用如下的深度学习来执行其功能。首先,同义词模块2226将用户输入的关键字与存储在特征列表2228中的特征词进行匹配,以查看是否存在完全匹配。如果存在完全匹配,则匹配的特征被视为产品的解析特征。其次,如果没有完全匹配,则同义词模块2226使用同义词词典2230执行代理匹配,以获得与输入关键字最相似的特征。作为示意性示例,同义词词典2230的形式如下:
D={W1:[S11,S12,...,S1p(1)],W2:[S21,S22,...,S2p(2)],...,Wn:[Sn1,Sn2,...,Snp(n)]},
D是同义词词典,W1是同义词词典中的第一个词,S11,S12,...,S1p(1)是词W1的总数量为p(1)的同义词;W2是同义词词典中的第二个词,并且S21,S22,...,S2p(2)是词W2的总数量为p(2)的同义词;Wn是同义词词典中的第n个词,并且Sn1,Sn2,...,Snp(n)是词Wn的总数量为p(n)的同义词。特征列表2228的形式如下:
T={t1,t2,...,tq}
对于用户输入的特定关键字Winput,将关键字映射到特征的过程遵循伪代码:
如果特征词t匹配,或换言之,与词Winput或Winput的任何同义词相同,则D[Winput]&T由属性列表T得到映射属性t。
函数“find_surrogate()”用于找出与输入关键字最相似的特征。这里,“相似度”是基于词的语境定义的。在某些实施例中,该函数检索大型语料库(例如,维基百科语料库),找到两组分别包括两个词的句子。然后,该函数提取每组句子中这两个词周围的语境词。每个词由向量定义,两个词之间的距离是建立在句子中两个词共同出现的基础上。最后,该函数比较两个语境词的两个向量,并根据它们的距离查看它们是否相似。两个词越相似,这两个词就越有可能成为彼此语境下的代理(surrogate)。通过上述过程,对于输入关键字,该函数找到具有最相似的语境词向量的特征。在某些实施例中,使用深度学习方法(如AI)来执行find_surrogate()。在文章生成应用程序220的操作期间,可以通过AI将输入的关键字变换为向量,并且将该向量与特征的向量进行比较,从而找到与输入的关键字最密切相关的特征。通过顺序地(或者在某些实施例中非顺序地)采用SKU查询、特征列表匹配以及最后的同义词匹配(包括找出代理),特征解析模块222能够基于用户的输入找出一个或多个特征。
文本生成模块224配置为响应于从特征解析模块222接收到特征,基于产品的特征生成句子,并将生成的句子提供给文章呈现模块226。参考图4A,文本生成模块224包括子模块和数据,具体为特征接收器2240、句子特征数据库2242、句子搜索模块2244、句子过滤模块2246、句子变型模块2248和句子排序模块2250。特征接收器2240配置为从特征解析模块222接收特征。句子特征数据库2242存储标记有特征的经过清理的句子。句子搜索模块2244配置为基于由特征接收器2240接收到的特征从句子特征数据库2242搜索句子。句子过滤模块2246配置为移除具有特征冲突的搜索到的句子,以获得经过滤句子。句子变型模块2248配置为改变经过滤句子以获得变型句子。句子排序模块2250配置为基于特征的数量对经过滤句子或变型句子进行排序。
特征接收器2240配置为当来自用户的输入是产品的SKU时从SKU查询模块2222接收特征,或者当来自用户的输入是产品的单个或多个关键字时从同义词匹配模块2226接收特征。所接收的特征可以是一个或多个。
句子特征数据库2242存储标记有特征的句子,并且句子特征数据库2242可以用于对深度学习模块进行训练以生成句子。在某些实施例中,文本生成模块224使用一个或多个深度学习模型执行其功能,并且单个或多个深度学习模型可以对应于句子搜索模块2244、句子过滤模块2246、句子变型模块2248和句子排序模块2250。在某些实施例中,句子特征数据库2242的创建包括数据获取、数据清理和数据标记。数据作为电子商务环境中的高质量文本内容是由专业写手编写。在某些实施例中,这些文本是从为电子商务平台工作的专业写手处收集的,并且在平台的许可下,可以从内部数据库提取或者经由网络爬虫(webcrawling)提取文本。从例如网络爬虫得到的原始文本是充满噪声的,这是因为网页爬虫也会提取出与产品无关的文本,比如,网页小标题、网页上按钮的名称、用户评论、侧边栏广告等。因此,在数据采集之后,噪声会以半自动地方式移除,即,在人工监督下根据诸如网页上位置和特殊字符之类的图案通过计算机移除。在此之后,将每个文本内容(例如,产品描述的整个主体)剪切成句子并依次存储在数据库中,其中该句子可以具有表明该句子的文章或段落出处的索引以及该句子在文章或段落中的序列号。保留内容与其成员句子之间的对应关系,并且还保留句子的顺序。除了文本本身外,文本的标签对于深度学习或人工智能(AI)的成功而言也是不可或缺的。标签建立了文本与其使用背景(商品)之间的联系。因此,标签是根据商品所表现的特征来定义的。但是,所有商品有数千种可能的特征。在某些实施例中,仅采用与消费者相关的特征,此举将可表示特征的数量降低至数百个。更重要的是,为了最大限度地提升用户体验,写作风格应该因产品而异(设想一下针对时尚产品的文艺诗意风格与针对电子产品的文本数字风格)。因此,写作风格也被定义为特征。以下是我们如何定义可表示特征的细节。
首先,定义一组属性,每个属性具有许多特征,作为它们的可能值。属性以及属性的示例性特征在图3B中示出。例如,属性“写作风格”可以被视为特征“文艺性”或特征“描述性”,属性“性别”可以被视为特征“男性”或特征“女性”。然后,逐个属性且逐个特征地对每个句子进行手动标记。句子可以用一个或多个特征标记。标记规则是语义性的---不仅仅是表面的文字意义,而且还有隐藏的可推断/隐含意义。在某些实施例中,经过充分训练的文本生成模块224还可以用于处理未标记的原始文本,获得文本的特征标签,并将具有标记特征的处理后文本存储到句子特征数据库2242。
句子搜索模块2244配置为针对句子特征数据库2242搜索一个或多个特征,以获得包含至少一个特征的句子,那些搜索结果也被称为搜索到的句子。搜索到的句子的数量可以基于一个或多个特征而变化。在某些实施例中,给定一组预期特征,句子搜索模块2244应用深度学习或AI算法来搜索携带相同特征的句子。搜索算法是整体上而不是单独地考虑特征集,这就意味着句子携带的输入特征越多,句子在搜索结果中的排序就越高。搜索算法还考虑句子的顺序,其中携带第一预期特征的句子的排序高于其他句子。此外,该算法考虑句子的协同作用。该系统允许用户逐步地选择句子。如果用户选择了一个句子,算法将把这个选择作为附加输入,并对搜索结果进行更新以获得句子之间更好的协同作用。详细而言,如果选择了一个句子(这意味着已经呈现了该句子携带的特征),那么,要搜索的下一个句子最好是那些携带互补特征的句子。
句子过滤模块2246配置为过滤搜索到的句子以消除冲突。出于句子过滤的目的,首先应用机器学习分类器来计算出每个句子反映每个产品属性的概率。在某些实施例中,句子与特征之间的相关性由0和1之间的数字定义,其中0表示该句子与特征无关,1表示该句子与特征相关,并且高分(如0.9)意味着该句子很可能与特征相关。然后,构建知识图来定义产品属性之间的冲突。冲突意味着句子属性不能与其中一个产品属性共存:例如,“女性”与“男性”、“夏季”与“羊毛大衣”、“套装”与“休闲”、“高跟鞋”与“运动”。为了构建知识图,对文本中产品属性之间的共同出现频率进行评估。如果两个产品属性很少共同出现在一个句子中,那么这一对两个属性就是冲突的实例。图4B示意性地示出了呈现属性的成对共同出现的知识图。如图4B所示,属性春季、夏季和冬季是属性“季节”的值,且因为它们不会共同出现,因此是冲突值。在某些实施例中,知识图存储在句子特征数据库2242中。相反,经常同时出现的特征不发生冲突。在某些实施例中,使用AI构建知识图。
在构建模型和知识图之后,可以基于AI句子搜索模型和知识图来选择句子。在某些实施例中,特征接收器2240从特征解析模块222接收一个或多个产品特征,并且句子搜索模块2244基于产品特征提供搜索到的句子。然后,句子过滤模块2246从搜索到的句子中提取句子特征。当其中一个搜索到的句子的特征与其中一个产品特征发生冲突时,该搜索到的句子被定义为冲突句子,并且句子过滤模块2246从搜索结果中移除该冲突句子。例如,产品特征包括“冬季、皮裙和女性”,搜索到的句子包括“女性和夏季”的特征。句子过滤模块2246检查到特征“女性和夏季”与特征“冬季、皮裙和女性”之间的冲突,并且发现特征“夏季”与特征“冬季”发生冲突。因此,句子过滤器模块2246移除该句子。在从搜索到的句子中移除所有冲突句子之后,句子过滤模块2246的执行得到经过滤句子。在某些实施例中,句子过滤模块2246还配置为对经过滤句子进行计数。当计数数量小于阈值时,句子过滤模块2246配置为将经过滤句子发送到句子变型模块2248,以便生成更多句子。当计数数量大于阈值时,句子过滤模块2246配置为将经过滤句子发送到句子排序模块2250,从而对那些经过滤句子进行排序。
当经过滤句子小于阈值时,用户可能没有足够的句子可供选择。因此,句子变型模块2248被并入文本生成模块224中以生成更多句子。在某些实施例中,即使经过滤句子大于阈值,句子变型模块2248仍然可以执行变型处理以获得各种句子。需要注意的是,提供变型句子的一个目的是产生足够数量的句子供用户选择,而另一个目的在于提高所生成句子的多样性,因为电子商务环境中的广告内容应避免重复---我们不应该为不同制造商的不同产品制作重复的文本。
具体地,句子变型模块2248配置为响应于从句子过滤模块2246接收到经过滤句子,生成经过滤句子的变型句子。句子变型模块2248配置为通过不同的方式生成变型句子,包括词语的替换和句法结构的改变。对于措辞方法,所选句子中的词可以用其同义词替换。句子变型模块2248根据一组规则执行替换---用某些词类替换某些区域中的词(例如,动词、形容词,但没有主语名词),并且句子的感情色彩是相同的。这里的感情色彩是指词所代表的态度或意见,它可以是积极的、消极的或中性的;例如,“恐怖”是消极的,“令人惊讶的”是积极的,“电影”是中性的。在某些实施例中,句子变型模块2248包括对词类和感情色彩进行分析的功能,并且可以使用自定义的或公共的同义词词典。下面给出了同义词“惊恐的”替换“受惊吓的”一词的示例:
熊追赶着受惊吓的松鼠。→熊追赶着惊恐的松鼠。
对于句法结构方法(Manning′1999,其全部内容通过引用的方式并入本文中),句子变型模块2248首先从数据库2242中的所有句子中提取不同的句法结构。然后,句子变型模块2248将当前搜索到的句子解析成句法成分,并将这些成分重新组织成不同的句法结构。图4C示出了对搜索到的句子进行解析并以不同的句法结构重新组织经过解析的句子的示例。如图4C所示,句子变型模块2248将搜索到的句子解析成语法树,然后再应用以下公式来转换句子的句法结构:
主语→宾语
宾语→主语
动词→is+动词被动语态+by
根据动词的时态调整“is”的时态。
在某些实施例中,上述公式可以反演,从而将被动语态转换为主动语态。在变型之后。句子变型模块2248配置为将这些变型句子提供给句子排序模块2250。
句子排序模块2250配置为响应于从句子过滤模块2246接收到经过滤句子或从句子变型模块2248接收到变型句子,基于反映的产品特征的数量对经过滤句子或变型句子进行排序。AI模型经过训练后给出每个[句子,特征]对的分数(从0到1)。分数表示给定句子描述给定特征的可能性。AI模型是基于人类标记的数据进行训练,但却比人类标签更准确,其原因如下:(1)人类标签会错误地标记某些数据,但AI可以将其保存回来,例如,即使描述裙装的句子没有被标记为人类的“裙装”,AI仍会给它一个较高的“裙装”分数,前提是AI识别出了该句子包含描述裙装的文字;(2)人类标签只能是0或1,而范围为0到1的分数更适合于真实场景---在大多数情况下,是否调用描述特征的句子是随意的,例如,“这件衣服是用丝绸制成的”很有可能但却不是百分之百地适合于“夏天”,因此,给出0.8分的可能性分数优于1分的标签。
如上所述,首先将过滤器应用于所选择的句子,同时不会与产品属性发生任何冲突。然后,基于反映的产品属性的数量,对经过滤句子进行排序。在某些实施例中,句子排序模块2250定义如下内容:
A={句子特征:s,w}。这里对于具有一个或多个相关特征的每个句子A,每个特征具有表明其与句子的可能性的0到1分数以及表明特征对于读者的重要性的权重w。
B={产品属性}
m=dot(s(|AB|,w(|AB|)/|A|,其中|A|表示A中的特征,|AB|表示A和B中的特征,s(|AB|)是特征|AB|与句子的分数的向量,w(|AB|)是特征对于读者的重要性的向量。dot(,)表示点积。
每个特征的w取决于特征被人类感知并标记的可能性。例如,“面料”属性的特征将会被感知到,因而相比起描述“场景”属性的句子会更频繁地被标记。
度量m用于对句子进行排序。句子反映的产品属性越多,我们可以看到的句子与产品之间的相符度就越高。在获得句子的排序后,文本生成模块224的句子排序模块2250配置为将经过排序的句子发送到文章呈现模块226。
文章呈现模块226配置为响应于接收到经过排序的句子,基于来自用户的指令选择句子,重新排列和修改所选择的句子以形成文章,并且提交此文章。在某些实施例中,文章呈现模块226的功能由用户交互模块228呈现为web界面,以实现与用户的交互。文章呈现模块226具有子模块和存储数据。如图5所示,文章呈现模块226包括句子接收器2260、句子选择模块2262、句子刷新模块2264、文章编辑器2266和我的文章2268。句子接收器2260配置为接收由文本生成模块224生成的句子。句子选择模块2262配置为接收用户从所生成句子中的选择,由此获得所选择的句子。句子刷新模块2264配置为从用户接收刷新指令以刷新所生成的句子,这样使得用户可以从所生成的句子的刷新列表中选择句子。文章编辑器2266配置为从用户接收指令以修改和重新排列所选句子。我的文章2268配置为在接收到来自用户的指令后将当前经过修改和重新排列的句子存储为文章,或者例如在电子商务网站中提交并显示该文章。
句子接收器2260配置为从文本生成模块224的句子排序模块2250接收句子,并将句子呈现给用户。
句子选择模块2262配置为在接收到用户从经过排序的句子中对句子的选择后,向句子刷新模块2264发送通知并将该句子发送到文章编辑器2266。
句子刷新模块2264配置为在接收到用户选择了一个句子的通知之后刷新所生成的句子。具体而言,句子刷新模块2264配置为指示文本生成模块224不仅基于来自特征解析模块222的特征,而且还基于与所选句子相对应的单个或多个特征生成一组新的句子。例如,可以从特征列表中移除与所选句子相对应的特征以生成一组新的句子,或者替代地,在生成一组新的句子期间,与所选句子相对应的特征被赋予低权重。
可以重复句子选择模块2262选择句子的操作以及句子刷新模块2264和文本生成模块224刷新所生成的句子的操作,直到用户选出了足够数量的句子为止。
在某些实施例中,句子刷新模块2264可以由特定操作激活,例如,用户选择“刷新”按钮。换言之,在从所生成的句子中选择一个句子之后,文章生成应用程序220不会自动刷新句子列表,并且用户可以继续从句子列表中选择下一个句子。当用户选择了几个句子并对剩下的句子不满意时,他可以手动点击“刷新”按钮,以指示文本生成模块224生成一组新的句子。与上面的描述类似,一组新的句子的生成移除了与所选句子相对应的特征,或者向那些特征赋予低权重。
在某些实施例中,当生成的句子不多时,用户还可以点击“刷新”按钮或专门的“句子变型”按钮,以增加生成的句子的数量。所列句子的增加可以包括替换所生成句子中的词或重新排列所生成句子的句法结构。
文章编辑器2266配置为向用户提供对从句子选择模块2262接收到的所选句子进行编辑的方法。文章编辑器2266可以包括重新排列所选句子的序列,修改所选句子中的词,删除所选句子或者在所选句子之间添加新的句子。
我的文章2268配置为在接收到来自用户的指令后将文章编辑器2266所修改的句子存储到文章文件中,从存储器中检索文章文件,或者将文章提交给电子商务网站。
在某些实施例中,特征解析模块222和文本生成模块224均可以使用深度学习算法来执行。
图6示意性地描绘了根据本公开的某些实施例的用于呈现文章的方法。在某些实施例中,该方法由图2中所示的服务器计算设备210实现。应特别注意的是,除非在本公开中另有说明,否则该方法的步骤可以以不同的顺序排列,因此并不局限于图6所示的顺序。
如图6所示,在过程602中,特征解析模块222经由交互界面接收来自用户的输入。该输入可以是产品的标识(如SKU)或者表示产品特性的一个或多个关键字。例如,关键字可以包括表示产品颜色的“红色”、表示产品主要类别的“裙装”、表示产品适用季节的“夏季”等。
在过程604中,在接收到产品的标识或特性后,特征解析模块222解析产品的标识或特性以获得产品的一个或多个特征,并将这些特征发送到文本生成模块224。
在过程606中,在从特征解析模块222接收到特征后,文本生成模块224生成与特征相对应的多个句子,并通过界面(比如,由网络服务器提供的图形用户界面)向用户呈现所生成的句子。
在过程608中,在从用户接收到关于所生成句子的编辑指令后,文章呈现模块226根据用户的指令获得文章,并存储或提交文章。
该方法可以提供用户界面,进而实现与用户的交互。例如,该方法可以呈现为网页。此网页提供了供用户通过网页输入标识或关键字的输入框。作为响应,该方法对输入进行解析以获得产品的特征,生成句子,并通过网页将所生成的句子呈现给用户。当呈现所生成的句子时,网页向用户提供功能键,使得用户能从所生成的句子中选择句子,重新排列和修改所选择的句子,进行刷新以获得更多的句子,保存包括经过编辑的句子的文章,检索所保存的文章,或者将文章提交到电子商务平台。
可以使用诸如AI之类的深度学习来执行步骤604,以便将输入的关键字有效且准确地与特征相关联。关键字的数量和关键字的顺序被视为深度学习训练和部署的参数。可以使用诸如AI之类的深度学习来执行步骤606,以便将输入的特征有效且准确地与所生成的句子相关联。特征的数量、关键字的顺序和一个或多个句子的选择被认为是供深度学习以选择其他句子的参数。在某些实施例中,可以向用户呈现特征,使得用户便可以对特征实施操作,比如,删除其中一个特征、对特征加以修改等。在某些实施例中,获得特征的解析步骤在计算设备上执行,但却没有呈现给用户,用户通过网页输入标识和关键字,并通过网页获得句子。
图7示意性地描绘了根据本公开的某些实施例的用于呈现文章的方法。在某些实施例中,该方法由图2中所示的服务器计算设备210实现。应特别注意的是,除非在本公开中另有说明,否则该方法的步骤可以以不同的顺序排列,因此并不局限于图7所示的顺序。在某些实施例中,图7中所示的方法是图6中所示方法的一个详细实施例。
如图7所示,在过程702中,计算设备210的用户交互模块228将用户计算设备250上的GUI提供给用户,使得用户可以通过GUI与文章生成应用程序220进行交互;用户通过GUI输入产品的标识或产品的特性,并且由请求接收器2220接收该标识和特性。
在过程704中,请求接收器2220确定来自用户的输入是诸如产品的SKU之类的标识,还是表示产品特性的一个或多个关键字。如果输入是SKU,则请求接收器2220将SKU发送到SKU查询模块2222;如果输入是关键字,则请求接收器2220将关键字发送到同义词匹配模块2226。
在过程706中,在从请求接收器2220接收到产品的SKU后,SKU查询模块2222使用SKU查询SKU特征数据库2224以检索出产品的特征,并将检索到的特征发送到特征接收器2240。SKU特征数据库2224包括SKU的条目和对应于每个SKU的特征条目。特征可以是自动生成然后再手动审阅的,或手动标记的,或由商品提供的。在某些实施例中,SKU特征数据库2224是产品数据库的一部分,其中产品数据库包括SKU和对应的特征。如上所述,基于SKU检索产品的特征是简单直接的。
在过程708中,在从请求接收器2220接收到产品的关键字后,同义词匹配模块2226对关键字进行解析,获得产品的对应特征。基于关键字,同义词匹配模块2226获得不同级别的对应特征。具体地,同义词匹配模块2226将关键字与特征列表2228中的特征词进行匹配。特征列表2228包括所有预定义的产品特征,比如,描述性、男性、春季、红色、棉花、瘦、长袖、圆领、商务、防水等。当其中一个关键字与其中一个特征完全匹配时,直接从特征列表2228中检索出该特征。如果每个关键字具有其对应的特征,则同义词匹配模块2226将这些特征检索为结果并将检索到的特征发送到特征接收器2240。如果一个或所有关键字不具有直接对应特征,则同义词匹配模块2226基于同义词词典2230检索特征。在同义词词典2230中,多个词各自链接到多个同义词。当同义词匹配模块2226找到了关键字的匹配词并且匹配词具有作为特征词的同义词时,则将关键字链接到特征词。在某些实施例中,同义词词典2230包括词典中的所有产品特征。因此,可能无需具有特征列表2228,同义词匹配模块2226直接针对同义词词典2230查询关键字。
当同义词匹配模块2226基于关键字不能检索到完全匹配的特征或特征的同义词时,它随后将尝试检索替代匹配特征。换言之,同义词匹配模块2226尝试找到与输入的关键字最相似的特征。
当用户输入多个关键字时,可以基于同义词词典2230获得与某些关键字对应的一些特征,并且可以通过找到替代词来获得与某些关键字对应的一些特征。在基于输入的关键字获得特征之后,同义词匹配模块2226将特征发送到文本生成模块224的特征接收器2240。
当在来自用户的输入是产品的SKU的情况下从SKU查询模块2222接收到特征时,或者当在来自用户的输入是关于产品的一个或多个关键字的情况下从同义词匹配模块2226接收到特征时,特征接收器2240将特征发送到句子搜索模块2244。
在过程710中,响应于接收到产品的特征,句子搜索模块2244从句子特征数据库2242中搜索句子。句子特征数据库2242中的每个句子用一个或多个特征标记。基于每个特征的搜索产生了多个句子,每个句子用对应的特征标记,并且基于多个特征的搜索产生了多组句子。然后,句子搜索模块2244将这些句子发送到句子过滤模块2246。
在过程712中,对于每个搜索到的句子,句子过滤模块2246从句子中提取特征,并确定检索到的特征是否与特征接收器2240接收到的任何特征发生冲突。如果有任何冲突,那么,将该句子从搜索到的句子中删除。在针对每个搜索到的句子检查冲突并删除存在冲突的句子之后,句子过滤模块2246获得经过滤句子。如果每个特征有足够数量的句子,则句子过滤模块2246将经过滤句子发送到句子排序模块2250。如果其中一个特征的经过滤句子的数量小于预定数量(比如,100个句子),则句子过滤模块2246将经过滤句子发送到句子变型模块2248。
在过程714中,响应于接收到与其中一个特征相对应的经过滤句子的数量(该数量小于例如100个句子),句子变型模块2248通过替换一个或多个句子中的词或者改变该一个或多个句子的句法结构来增加句子的数量。具体地,对于每个接收到的经过滤句子,句子变型模块2248首先尝试替换该句子中的词。当词替换不成功时,句子变型模块2248再尝试切换句子的句法结构。在某些实施例中,当词替换成功时,句子变型模块2248将不会尝试切换句子的句法结构;替代地,句子变型模块2248可以针对每个经过滤句子尝试词替换和句法结构切换这两者,从而生成更多的句子。然后,句子变型模块224将数量增加的句子发送到句子排序模块2250。
在过程716中,响应于从句子过滤模块2246或句子变型模块2248接收到句子,句子排序模块2250对接收到的句子进行排序。此排序将特征集作为整体考虑而不是单独地考虑,这就意味着句子携带的输入特征越多,句子在搜索结果中的排序就越高;此排序还将句子的顺序考虑在内---携带第一预期特征的句子的排序比其他句子更高;此外,排序考虑句子的协同作用,并在用户选择其中一个句子时刷新排序结果。然后,句子排序模块2250将经过排序的句子发送到文章呈现模块226的句子接收器2260。
响应于接收到句子,句子接收器2260例如经由用户计算设备250上的GUI将句子呈现给用户。
在过程718中,在用户通过GUI接收到选择后,句子选择模块2262选择句子。在某些实施例中,用户可以从呈现的句子中逐个地或成批地选择多个句子。在某些实施例中,当用户从呈现的句子中选择一个句子时,在过程720中,句子刷新模块2264刷新所呈现的句子。
之后,在过程722中,在选择一定数量的句子之后,文章编辑器2266通过GUI提供供用户修改句子或重新排列句子以形成文章的功能。在形成文章或文章的草稿之后,我的文章2268通过GUI提供供用户保存文章,检索文章或将文章提交到电子商务平台的功能,这样,客户便可以公开访问文章。
图8示意性地示出了根据本公开的某些实施例的工程架构。如图8所示,该架构采用Spring MVC设计。前端网页、后端服务和AI算法是以并行方式单独开发的,后来再集成在后端服务中。
数据库使用MySQL和Jimdb(JD.COM内部缓存技术)。MySQL用于主要事务,而Jimdb是针对频繁的重复查询的集成式缓存存储,用于缓解MySQL的负载。ElasticSearch技术也专门用于搜索汉字。
配置控件由Zookeeper和ccadmin(JD.COM内部缓存技术)技术使能。Zookeeper用作服务切换,而ccadmin用作自定义设置的界面。
图9A至图9D示意性地示出了根据本公开的某些实施例的文章生成应用程序的界面。图9A示出了名称为莎士比亚902的文章生成应用程序的主网页,其中提供了文本框904,使得用户可以输入产品的标识或者表示产品的特性的关键字。如图9A所示,所输入的关键字是“连衣裙”。主页面还提供了“登录”键906。
在输入关键字之后,如图9B所示,通过使用AI的应用程序的操作,基础关键字列出多个句子908。例如,用户可以从网页上显示的句子列表908中选择句子910。如果用户想要查看更多页面,他可以使用“上一页”和“下一页”键912来浏览更多句子;如果他想要查看更多种类的句子,他可以使用“刷新”键914来显示不同的句子。当用户点击“添加至编辑器”键916时,所选句子被转移到“编辑器”918。
在选择一个或多个句子之后,如图9C所示,可以在编辑器918中对句子进行编辑。左侧面板以较小的规模显示图9B的先前选择页面,而图9C的右侧面板展示主要的编辑器部分。然后,用户可以使用编辑器918来修改所选句子并重新排列所选句子的顺序。编辑器918的底部具有“保存文章”键920,用来将修改后的句子保存为文章文件。
用户可以保存文章草稿,检索文章草稿或将文章提交到电子商务平台。如图9D所示,多个文章草稿922可供用户使用,并且用户可以选择它们中的任何一个以将该草稿提交作为文章,可以删除该草稿,或者可以在编辑器918中再次编辑该草稿。
图10示出了根据本公开的某些实施例的工作流程。如图10所示,工作流程包括以下内容的一部分:数据标示或数据标记、句子推荐和文档审阅。全局工作流程展示了应用程序的前端及后端操作,并且可以基于以上描述来理解细节。
总之,本公开的某些实施例提供了一种适用于在电子商务环境下使用的高效文章系统。这种系统可以扩大文章生成的规模,带来出色的文章生成工作质量,同时成本也较低。
仅出于说明和描述的目的呈现了本公开的示例性实施例的前述描述,并且此描述并不旨在是详尽的或将本公开局限于所公开的精确形式。考虑到上述教导,许多修改和变化都是可行的。
选择并描述实施例是为了解释本公开的原理及其实际应用,以使得本领域其他技术人员能够利用本公开和各种实施例以及适合于预期特定用途的各种修改。在不脱离本发明的精神和范围的情况下,替代实施例对于本公开所属领域的技术人员而言将是显而易见的。因此,本公开的范围由所附权利要求限定,而不是由前述描述和其中所述的示例性实施例限定。
参考文献:
1.Trevor Hastie,Robert Tibshirani和Jerome H.Friedman.The elements ofstatistical learning,Springer,2001;
2.Christopher Manning,HinrichSchutze.Foundations of statisticalnatural language processing,The MIT Press,1999;
3.M Melnik,J Alm,Does a seller′s ecommerce reputation matter?Evidencefrom eBay auctions,The journal of industrial economics,2002,vol.50,pp.337-349;
4.P Lee.Behavioral model of online purchasers in e-commerceenvironment,Electronic Commerce Research,2002,vol.2,pp.75-85;
5.Y Zhang,Y Fang,K Wei等人.Repurchase intention in B2C e-commerce-Arelationship quality perspective,Information&Management,2011,vol.48,pp.192-200;
6.J Walker,P Kim,J Jorasch等人.Retail system for selling productsbased on a flexible product description,2012,US Patent No.8799100B2;
7.http://funeng.baidu.com/;
8.Ehud Reiter和Robert Dale.Building Natural Language GenerationSystems.Cambridge University Press,2006;
9.https://docs.spring.io/spring/docs/3.2.x/spring-framework-reference/html/mvc.html;
10.https://github.com/elastic/elasticsearch。
Claims (20)
1.一种用于生成目标产品的文章的方法,所述方法包括:
由计算设备接收来自用户的请求,所述请求包括所述目标产品的关键字和标识中的至少一个;
基于所述请求,确定所述目标产品的至少一个目标特征;
生成与所述目标特征对应的多个候选句子;
基于来自所述用户的指令,从所述候选句子中选择多个目标句子;以及
基于所述目标句子生成所述文章。
2.根据权利要求1所述的方法,其中所述确定所述至少一个目标特征的步骤包括:
确定所述请求包括所述目标产品的关键字还是标识;
当所述请求包括所述目标产品的标识时:从特征数据库中检索所述至少一个目标特征,所述特征数据库包括产品的标识和所述产品的对应特征;以及
当所述请求包括所述目标产品的关键字时:通过将所述目标产品的所述关键字与同义词词典进行比较来确定所述至少一个目标特征,所述同义词词典中的词典词包括特征和所述特征的同义词。
3.根据权利要求2所述的方法,其中所述目标产品的所述标识是所述目标产品的库存单位SKU。
4.根据权利要求2所述的方法,其中将所述关键字与所述同义词词典进行比较的步骤包括:将所述关键字与所述词典词进行匹配,并且当不存在匹配时,计算所述关键字与所述词典词之间的相似度,并将与所述关键字的相似度最高的所述词典词定义为所述目标产品的所述特征。
5.根据权利要求4所述的方法,其中使用机器学习来计算所述关键字与所述词典词之间的所述相似度。
6.根据权利要求1所述的方法,其中生成所述多个候选句子的步骤包括:
选择与所述目标特征对应的所述候选句子;
确定所述候选句子与所述目标特征之间的冲突;
移除具有冲突的所述候选句子,以获得经过滤句子;
提取在每个经过滤句子中反映的特征;并且
基于每个经过滤句子的反映特征与所述产品的所述目标特征之间的适配值,对所述经过滤句子进行排序,
其中所述适配值是基于每个经过滤句子的所述反映特征与所述目标特征之间的相同特征的数量来计算的。
7.根据权利要求6所述的方法,还包括向所述经过滤句子添加新句子,所述新句子通过以下方式生成:用同义词替换所述经过滤句子中的一个经过滤句子中的动词或形容词。
8.根据权利要求6所述的方法,还包括向所述经过滤句子添加新句子,所述新句子通过以下方式生成:
将所述经过滤句子中的一个经过滤句子解析成句法成分;以及
将所述句法成分重新组织成与所述经过滤句子中的所述一个经过滤句子不同的句法结构。
9.根据权利要求6所述的方法,其中选择所述多个目标句子的步骤包括:
基于所述经过滤句子的所述排序,从所述经过滤句子中选择一个目标句子;
从所述经过滤句子中移除所选择的一个目标句子,并对其余经过滤句子进行重新排序;以及
从经过重新排序的其余经过滤句子中选择另一目标句子。
10.根据权利要求1所述的方法,其中基于所述目标句子生成所述文章的步骤包括:提供用于修改所述目标句子和对所述目标句子进行重新排列的界面。
11.一种用于生成目标产品的文章的系统,所述系统包括计算设备,所述计算设备包括处理器和存储计算机可执行代码的存储设备,其中当在所述处理器处执行时,所述计算机可执行代码配置为:
接收来自用户的请求,所述请求包括所述目标产品的关键字和标识中的至少一个;
基于所述请求,确定所述目标产品的至少一个目标特征;
生成与所述目标特征对应的多个候选句子;
基于来自所述用户的指令,从所述候选句子中选择多个目标句子;并且
基于所述目标句子生成所述文章。
12.根据权利要求11所述的系统,其中所述计算机可执行代码配置为通过以下方式确定所述至少一个目标特征:
确定所述请求包括所述目标产品的关键字还是标识;
当所述请求包括所述目标产品的标识时:从特征数据库中检索所述至少一个目标特征,所述特征数据库包括产品的标识和所述产品的对应特征;以及
当所述请求包括所述目标产品的关键字时:通过将所述目标产品的所述关键字与同义词词典进行比较来确定所述至少一个目标特征,所述同义词词典中的词典词包括特征和所述特征的同义词。
13.根据权利要求12所述的系统,其中所述计算机可执行代码被配置为通过以下方式将所述关键字与所述同义词词典进行比较:将所述关键字与所述词典词进行匹配,并且当不存在匹配时,计算所述关键字与所述词典词之间的相似度,并将与所述关键字的相似度最高的所述词典词定义为所述目标产品的所述特征。
14.根据权利要求13所述的系统,其中使用机器学习来计算所述关键字与所述词典词之间的所述相似度。
15.根据权利要求11所述的系统,其中所述计算机可执行代码配置为通过以下方式生成所述多个候选句子:
选择与所述目标特征对应的所述候选句子;
确定所述候选句子与所述目标特征之间的冲突;
移除具有冲突的所述候选句子,从而获得经过滤句子;
确定在每个经过滤句子中反映的特征;并且
基于每个经过滤句子的反映特征与所述产品的目标特征之间的适配值,对所述经过滤句子进行排序,
其中所述适配值是基于每个经过滤句子的所述反映特征与所述目标特征之间的相同特征的数量来计算的。
16.根据权利要求11所述的系统,其中所述计算机可执行代码还配置为通过以下方式中的至少一种向所述经过滤句子添加新句子:
用同义词替换所述经过滤句子中的一个经过滤句子中的动词或形容词;以及
将所述经过滤句子中的一个经过滤句子解析成句法成分,并且将所述句法成分重新组织成与所述经过滤句子中的所述一个经过滤句子不同的句法结构。
17.一种存储计算机可执行代码的非暂时性计算机可读介质,其中当在计算设备的处理器处执行时,所述计算机可执行代码配置为:
接收来自用户的请求,所述请求包括所述目标产品的关键字和标识中的至少一个;
基于所述请求,确定所述目标产品的至少一个目标特征;
生成与所述目标特征对应的多个候选句子;
基于来自所述用户的指令,从所述候选句子中选择多个目标句子;并且
基于所述目标句子生成所述文章。
18.根据权利要求17所述的非暂时性计算机可读介质,其中所述计算机可执行代码配置为:
当所述请求包括所述目标产品的标识时:从特征数据库中检索所述至少一个目标特征,所述特征数据库包括产品的标识和所述产品的对应特征;以及
当所述请求包括所述目标产品的关键字时:通过将所述目标产品的所述关键字与同义词词典进行比较来确定所述至少一个目标特征,所述同义词词典中的词典词包括特征和所述特征的同义词。
19.根据权利要求17所述的非暂时性计算机可读介质,其中所述计算机可执行代码配置为通过以下方式生成所述多个候选句子:
选择与所述目标特征对应的所述候选句子;
确定所述候选句子与所述目标特征之间的冲突;
移除具有冲突的所述候选句子,从而获得经过滤句子;
确定在每个经过滤句子中反映的特征;并且
基于每个经过滤句子的反映特征与所述产品的目标特征之间的适配值,对所述经过滤句子进行排序,
其中所述适配值是基于每个经过滤句子的所述反映特征与所述目标特征之间的相同特征的数量来计算的。
20.根据权利要求19所述的非暂时性计算机可读介质,其中所述计算机可执行代码还配置为通过以下方式中的至少一种向所述经过滤句子添加新句子:
用同义词替换所述经过滤句子中的一个经过滤句子中的动词或形容词;以及
将所述经过滤句子中的一个经过滤句子解析成句法成分,并且将所述句法成分重新组织成与所述经过滤句子中的所述一个经过滤句子不同的句法结构。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/114,592 | 2018-08-28 | ||
US16/114,592 US10810260B2 (en) | 2018-08-28 | 2018-08-28 | System and method for automatically generating articles of a product |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110909536A true CN110909536A (zh) | 2020-03-24 |
Family
ID=69641222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910799302.2A Pending CN110909536A (zh) | 2018-08-28 | 2019-08-27 | 用于自动生成产品的文章的系统和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10810260B2 (zh) |
CN (1) | CN110909536A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113822347A (zh) * | 2020-09-11 | 2021-12-21 | 北京沃东天骏信息技术有限公司 | 用于自动生成知识驱动的内容规划的系统和方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11030408B1 (en) | 2018-02-19 | 2021-06-08 | Narrative Science Inc. | Applied artificial intelligence technology for conversational inferencing using named entity reduction |
US11042713B1 (en) | 2018-06-28 | 2021-06-22 | Narrative Scienc Inc. | Applied artificial intelligence technology for using natural language processing to train a natural language generation system |
US10810260B2 (en) * | 2018-08-28 | 2020-10-20 | Beijing Jingdong Shangke Information Technology Co., Ltd. | System and method for automatically generating articles of a product |
US11341330B1 (en) | 2019-01-28 | 2022-05-24 | Narrative Science Inc. | Applied artificial intelligence technology for adaptive natural language understanding with term discovery |
JP7363107B2 (ja) * | 2019-06-04 | 2023-10-18 | コニカミノルタ株式会社 | 発想支援装置、発想支援システム及びプログラム |
CN112800720A (zh) * | 2021-01-19 | 2021-05-14 | 深圳市墨工智云科技有限公司 | 一种支持多参数产品自动生成sku型号和选型的系统 |
US11922129B2 (en) * | 2021-06-22 | 2024-03-05 | International Business Machines Corporation | Causal knowledge identification and extraction |
CN113505202A (zh) * | 2021-07-30 | 2021-10-15 | 中关村科学城城市大脑股份有限公司 | 一种基于情感分析的数据增强方法和系统 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5873765A (en) * | 1997-01-07 | 1999-02-23 | Mattel, Inc. | Toy having data downloading station |
US8799100B2 (en) | 1997-07-08 | 2014-08-05 | Groupon, Inc. | Retail system for selling products based on a flexible product description |
JP3921523B2 (ja) * | 2001-12-27 | 2007-05-30 | 独立行政法人情報通信研究機構 | テキスト生成方法及びテキスト生成装置 |
US20070255589A1 (en) * | 2006-04-27 | 2007-11-01 | Klinger Advanced Aesthetics, Inc. | Systems and methods using a dynamic database to provide aesthetic improvement procedures |
US8244594B2 (en) * | 2009-08-26 | 2012-08-14 | Consumeron, Llc | Method for remote acquisition and delivery of goods |
US8359285B1 (en) * | 2009-09-18 | 2013-01-22 | Amazon Technologies, Inc. | Generating item recommendations |
US8671098B2 (en) * | 2011-09-14 | 2014-03-11 | Microsoft Corporation | Automatic generation of digital composite product reviews |
US20160314507A1 (en) * | 2015-04-22 | 2016-10-27 | Product Peel, Inc. | Apparatus, system, and method for ranking and delivery of personalized product reviews |
US9928300B2 (en) * | 2015-07-16 | 2018-03-27 | NewsRx, LLC | Artificial intelligence article analysis interface |
CN109076098B (zh) * | 2016-04-15 | 2021-12-14 | 电子湾有限公司 | 跨不同站点采用数据的方法、系统及介质 |
US11055557B2 (en) * | 2018-04-05 | 2021-07-06 | Walmart Apollo, Llc | Automated extraction of product attributes from images |
US10810260B2 (en) * | 2018-08-28 | 2020-10-20 | Beijing Jingdong Shangke Information Technology Co., Ltd. | System and method for automatically generating articles of a product |
-
2018
- 2018-08-28 US US16/114,592 patent/US10810260B2/en active Active
-
2019
- 2019-08-27 CN CN201910799302.2A patent/CN110909536A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113822347A (zh) * | 2020-09-11 | 2021-12-21 | 北京沃东天骏信息技术有限公司 | 用于自动生成知识驱动的内容规划的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US20200074013A1 (en) | 2020-03-05 |
US10810260B2 (en) | 2020-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110909536A (zh) | 用于自动生成产品的文章的系统和方法 | |
US8589429B1 (en) | System and method for providing query recommendations based on search activity of a user base | |
TWI557664B (zh) | Product information publishing method and device | |
US9767144B2 (en) | Search system with query refinement | |
US10235604B2 (en) | Automatic wearable item classification systems and methods based upon normalized depictions | |
US10664888B2 (en) | Method and system for attribute extraction from product titles using sequence labeling algorithms | |
US10678769B2 (en) | Artificial intelligence system and method for auto-naming customer tree nodes in a data structure | |
EP1806694A1 (en) | Method, system and computer program product for identifying primary product objects | |
CN109002432B (zh) | 同义词的挖掘方法及装置、计算机可读介质、电子设备 | |
CN112989208B (zh) | 一种信息推荐方法、装置、电子设备及存储介质 | |
US11682060B2 (en) | Methods and apparatuses for providing search results using embedding-based retrieval | |
Kulkarni et al. | Big data analytics | |
US11488223B1 (en) | Modification of user interface based on dynamically-ranked product attributes | |
Zoghbi et al. | Fashion meets computer vision and nlp at e-commerce search | |
Beheshti-Kashi et al. | Trendfashion-a framework for the identification of fashion trends | |
CN113744019A (zh) | 一种商品推荐方法、装置、设备及存储介质 | |
Cherednichenko et al. | Item Matching Model in E-Commerce: How Users Benefit | |
CN115730158A (zh) | 一种搜索结果展示方法、装置、计算机设备及存储介质 | |
WO2022111192A1 (en) | System and method for scalable tag learning in e-commerce via lifelong learning | |
Sawant et al. | Product discovery from E-commerce listings via deep text parsing | |
JP7316477B1 (ja) | 処理実行システム、処理実行方法、及びプログラム | |
Hussain et al. | Literature Review on Feature Identification in Sentiment Analysis | |
Dirie | Extracting diverse attribute-value information from product catalog text via transfer learning | |
WO2023247730A1 (en) | System and method of optimizing digital catalogs for online marketplaces | |
JP2023148441A (ja) | ランキング決定システム、ランキング決定方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |