印染需求智能分析系统的设计与实现
2019-07-01唐文辉刘国华王国栋
唐文辉 刘国华 王国栋
摘 要:随着“工业4.0”概念的提出和实施以及C2M互联网商业模式的兴起,传统纺织行业正面临着向智能化、服务化转型的难题。本文将传统纺织印染行业与网络信息技术相结合,以报价服务为切入点,应用深度学习以及有限状态自动机理论,基于微服务架构,设计了一套印染需求智能分析系统。为纺织企业的印染报价服务提供了一套高效、智能的解决方案。
关键词: 工业4.0;C2M模式;结构化数据提取;深度学习;有限状态自动机
文章编号: 2095-2163(2019)03-0103-04 中图分类号: TP311.5 文献标志码: A
0 引 言
随着“工业4.0”概念的提出与实施,全球制造业开始了新一轮的改革。在这样的时代背景下,越来越多的企业陆续采用C2M(Customer-to-Manufactory)商业模式。印染行业作为中国传统制造业,已然进入了新的发展阶段,其面临的困扰正日益突显,诸如企业运营成本的不断提高,以及客户的个性化、小批量、多品种的新需求,企业的生存壮大也不可避免地会受到冲击与挑战。当前,互联网技术、智能技术的进步,为企业的转型升级带来了有利契机。
客户需求的结构化、规范化,是印染企业营销过程中实现快速准确报价的前提。传统的报价形式普遍存在处理效率低下、信息数据不规范、询价过程记录缺失等问题。所以,提升和保证报价功能的效率及规范性已然成为印染行业在结构转型中亟需解决的重要问题。由此,本文设计开发了印染需求智能分析系统。本系统将深度学习、文本预处理以及有限状态自动机理论等计算机理论和技术与业务实践相结合,并基于微服务架构,为用户搭建了需求分析服务平台,实现了对用户需求的快速精确获取。
1 相关技术
1.1 Seq2Seq
Seq2Seq的研发主要是为了解决传统RNN结构的输入和输出必须要等长,无法实现翻译功能及聊天机器人等服务。Seq2Seq 是一个Encoder-Decoder结构的网络,其输入和输出都是序列,Encoder 中将一个可变长度的信号序列变为固定长度的向量表达,Decoder 将这个固定长度的向量变成可变长度的目标的信号序列。
Seq2Seq模型的基本思想是通过使用一个循环神经网络读取输入句子,将整个句子的信息压缩到一个固定维度的编码中;再使用另一个循环神经网络读取这个编码,将其解压为目标语言的一个句子。
1.2 有限状态自动机
有限状态自动机是为研究有限内存的计算过程和某些语言类而抽象出的一种计算模型。模型中拥有有限数量的状态,每个状态可以迁移到零个或多个状态,输入字串决定执行哪个状态的迁移。用形式化的语言表示,有限状态自动机可以被表示为一个5-元组(Q,Σ,δ,q0,F),设计构成为:状态的有限集合Q、输入符号的有限集合Σ、转移函数δ:Q×Σ→P(Q)、初始状态q0,q0∈Q、接受状态的集合F,F Q。
1.3 微服务架构
微服务架构是一种架构概念,其主要作用是将功能分解到离散的各个服务当中,从而降低系统的耦合性,并提供更加灵活的服务支持。究其本质而言,就是用一些功能比较明确、业务比较精炼的服务,去解决更大、更实际的问题。
2 系统设计
根据对印染行业用户报价的需求分析,将印染需求智能分析系统分为三大模块,研究得到的功能模块设计如图1所示。在此,关于各模块主要功能可分述如下。
(1)资讯浏览模块。该模块分为最新动态和文章浏览,用户可以在最新动态子模块下浏览企业动态、新推出的产品、咨询企业文化等,在文章浏览子模块中,通过技术、咨询、发展等标签将印染领域相关文章做出分类,以随机推荐的形式展示给用户进行阅读。
(2)用户模块。该模块主要管理用户的基本操作,包括用户登录注册、修改个人信息及密码等,同时对用户进行身份权限管理,对不同身份权限的用户开放不同的功能模块。
(3)报价模块。通过新技术与传统报价流程相结合,为用户创建智能化的报价体验。可细分为如下4个功能:通过深度学习Seq2Seq模型训练的智能机器人客服为用户提供24 h印染领域问答服务;基于WebSocket搭建的人工客服交流平台,用户可以与人工客服在此平台实时交流,进行产品答疑、需求描述、订单确认等操作;基于有限状态自动机的报价需求提取服务,配合文本预处理等技术,为用户提供了智能、高效的自动化需求提取流程;最后将提取出的用户结构化需求列表以及客服报价结果整理成表单,以可视化形式反馈给用户。
3 数据库设计
本系统采用MongoDB数据库。MongoDB是一个基于分布式文件存储的开源数据库系统,在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB旨在为Web应用提供可扩展的高性能数据存储解决方案。关于重要数据表功能,研究中可做概述如下。
(1) 用户信息表。主要用来记录用户个人信息,包括用户名、密码、手机号、电子邮箱等信息,其中用户名为主键。
(2) 最新动态表。主要用来保存企业相关的最新动态,涉及企业新闻、最新产品、企业文化等内容。包括动态的标题、内容、附图URI路径、发布时间等字段。
(3) 文章信息表。主要用来保存印染行业的一些相关文章,供用户浏览。包括文章的标题、内容、发布时间、作者以及文章标签类型等字段。
(4) 报价信息表。主要用来记录每个用户的历史报价信息及報价结果。包括用户编号、报价产品的型号、外观及内在质量要求、执行标准、包装要求等产品需求信息、报价结果、处理客服编号等字段。
4 系统架构与功能实现
4.1 系统架构
系统基于微服务架构,通过前后端分离模式进行开发。与传统的MVC开发模式不同,前后端分离模式大大降低了前端和后端的耦合性,把后端根据业务划分成若干个服务组件,前、后端之间通过API网络通信进行数据交互,提升了系统的可维护性、开发效率、以及综合性能等。
4.2 智能机器人客服
系统报价模块中,智能机器人客服为用户提供24 h印染领域专业问答服务。主要以2种方式配合实现,对此可得阐释解析如下。
(1)通过深度学习Seq2Seq模型训练的基于生成的聊天机器人。首先进行数据预处理,目前网络上流行的中文问答语料库在质量上参差不齐,且对话也存在噪音等,需要引入文本预处理,去除一些聊天噪音以及无意义对话等,对处理后的问答数据进行中文分词,并以统一的格式整理成所需的语料库。使用Keras初始化Seq2Seq模型并設定模型参数。再将预期准备的语料库送入模型中进行训练。最终实验结果由语料库质量以及训练时间而定。通过该聊天机器人可以实现基础对话的问答交流。
(2)鉴于训练后的机器人并不能保证回答内容的专业性,因而需要预先设定印染专业领域问答库,根据阈值匹配问句,继而反馈对应的答句。研究中,需整理出印染专业领域问答,将问句和答句一一对应保存起来,当智能客服获取用户输入时,就会将用户输入与预设的问句进行相似度匹配,当相似度到达所设的阈值时,即向用户反馈问答库中与该问句对应的答句。从而实现印染领域的专业问答。
4.3 人工客服交流平台
系统除了配备智能机器人客服进行专业问答之外,也为用户提供了人工客服交流平台。该平台基于WebSocket进行通信。WebSocket是一种在单个TCP连接上进行全双工通信的协议,可使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
本系统通过服务器同时与用户端和客服端进行WebSocket通信,当用户请求人工客服服务时,会通过调度算法为该用户实时分配当前最空闲的客服,并在服务器中保存该用户和客服的连接,由服务器来处理用户和客服的交流。
4.4 报价需求提取流程
本文通过有限状态自动机作为报价需求提取流程的理论基础,通过模拟真实报价需求提取流程,定义出对应的有限状态自动机,该自动机及其形式化定义如图2、图3所示。
在本方法中,用户的合理需求是一个正则语言,需要解决的理论问题为:用户的输入串是否属于这个正则语言。该自动机一开始运行即进入初始状态,等待用户输入串,每次读入输入串就会根据状态转移函数得出下一个状态,直到进入接受状态,则代表准确的结构化需求数据采集完毕,退出采集流程。
4.5 系统实现
印染需求智能分析系统通过前后端分离模式进行开发。其中,前端由React Native来操控视图展示,由Mobx来管理前端状态;后端基础模块通过基于Node.js的Express框架进行开发并封装成接口供前端调用;深度学习部分通过Keras进行聊天机器人模型的训练。前端视图捕获到用户的输入后会进行对应的逻辑处理,如果需要与后端发生交互,则通过Ajax调用Express以及Keras封装好的Restful API进行数据交互,获取到后端返回的数据后,再通过可视化的形式展示给用户。
5 结束语
在新的时代背景下,随着数据量的不断扩大以及移动化联网技术不断走向成熟,新的电子互联网商业模式必将兴起,作为中国的传统制造业,纺织行业也必须随之进行技术改造来推动自身向高端化、智能化、绿色化、服务化的转型。本文通过需求分析、系统设计、数据库设计以及对有限状态自动机理论的研究等,将技术与理论相融合,实现了印染需求智能分析系统。通过本系统,用户可以简洁方便地满足产品报价需求,同时还可以浏览印染行业资讯文章;有了智能机器人客服以及自动化采集报价需求流程,可以大大提升人工客服的工作效率,为用户高效准确地做出报价;用户的历史报价信息也可以被规范统一地加以整理,便于后续查询或分析。为印染行业报价服务提供了一套智能、高效的解决方案。
参考文献
[1]SIPSER M. Introduction to the theory of computation[M]. 3rd ed. USA:Cengage Learning,2012.
[2]FAMILIAR B. Microservice architecture[M]//Microservices, IoT, and Azure. Berkeley, CA:Apress,2015:21-31 .
[3]SRIRAM A, JUN H, SATHEESH S, et al. Cold fusion:Training Seq2Seq models together with language models[J].arXiv preprint arXiv:1708.06426,2017.
[4]LIU Tianyu, WANG Kexiang, SHA Lei, et al. table-to-text generation by structure-aware Seq2seq learning[J]. arXiv preprint arXiv:1711.09724,2017.
[5]DENG Li, YU Dong. Deep learning: Methods and applications[J]. Hanover, MA, USA:Now Publishers Inc., 2014.
[6]张曙. 工业4.0和智能制造[J]. 机械设计与制造工程, 2014,43(8):1-5.
[7]GERS F A, SCHMIDHUBER J, CUMMINS F. Learning to forget: Continual prediction with LSTM[J]. Neural Computation,2000,12(10):2451-2471.
[8]GRISHMAN R. Information extraction[M]//MITKOV R. The Oxford Handbook of Computational Linguistics . New York: Oxford University Press,2003:545-559.
[9]李向阳, 苗壮. 自由文本信息抽取技术[J]. 情报科学, 2004, 22(7):815-821.
[10]HOLTGRAVES T, HAN Tailin. A procedure for studying online conversational processing using a chat bot[J]. Behavior Research Methods, 2007, 39(1):156-163.
[11]BRAND D, ZAFIROPULO P. On communicating finite-state machines[J]. Journal of the ACM, 1983, 30(2):323-342.
[12]刘晓慧, 郑广泽. C2M模式下服装智能个性化定制的优势及发展[J]. 服装学报, 2016, 1(5):477-481.
[13]李晗. 面向个性化定制的智慧服装生态系统若干问题研究[D]. 北京: 北京交通大学,2017.
[14]贾艳玲, 郭伟, 李瑞华. 纺织企业实施大规模定制生产模式的研究[J]. 纺织科学研究, 2005(4):36-40.
[15]曾婷婷, 李辉. 面向电子商务的产品报价系统研究与设计[J]. 微计算机信息, 2008, 24(30):137-138, 136.
[16]徐广林, 林贡钦. 工业4.0背景下传统制造业转型升级的新思维研究[J]. 上海经济研究, 2015(10):107-113.