CN116795475A - 页码预测方法、页码显示方法、服务器以及客户端 - Google Patents
页码预测方法、页码显示方法、服务器以及客户端 Download PDFInfo
- Publication number
- CN116795475A CN116795475A CN202311060680.1A CN202311060680A CN116795475A CN 116795475 A CN116795475 A CN 116795475A CN 202311060680 A CN202311060680 A CN 202311060680A CN 116795475 A CN116795475 A CN 116795475A
- Authority
- CN
- China
- Prior art keywords
- chapter
- page
- page number
- server
- information
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 122
- 239000013598 vector Substances 0.000 claims abstract description 165
- 230000004044 response Effects 0.000 claims abstract description 74
- 238000003860 storage Methods 0.000 claims description 52
- 238000012545 processing Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 18
- 230000004927 fusion Effects 0.000 claims description 14
- 210000002569 neuron Anatomy 0.000 claims description 8
- 238000010606 normalization Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 239000010410 layer Substances 0.000 description 42
- 230000006870 function Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 17
- 238000013473 artificial intelligence Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 14
- 238000010801 machine learning Methods 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000007373 indentation Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 238000010422 painting Methods 0.000 description 2
- 238000007637 random forest analysis Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000011241 protective layer Substances 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/02—Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
- G06F15/025—Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators adapted to a specific application
- G06F15/0291—Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators adapted to a specific application for reading, e.g. e-books
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0483—Interaction with page-structured environments, e.g. book metaphor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例提供了一种页码预测方法、页码显示方法、服务器以及客户端。该页码预测方法属于计算机技术领域中的页码显示技术领域,该方法包括:接收页码请求;响应于该页码请求,确定服务器的缓冲存储器中存储的信息是否包括该各个章节的起始页面的页码,在该服务器的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,获取电子书籍中各个章节的特征向量;基于该各个章节的特征向量,利用页码预测模型预测该各个章节的起始页面的页码;向该客户端发送该页码请求的响应消息。该页码预测方法能够在保证电子书籍的安全性以及降低客户端的性能开销的基础上,提升了页码预测的及时性、准确性以及实用性。
Description
技术领域
本申请实施例涉及计算机技术领域,并且更具体地,涉及一种页码预测方法、页码显示方法、服务器以及客户端。
背景技术
电子书籍的页码计算是阅读器的必备功能,受到软件环境或硬件环境的限制,同样的电子书籍在不同系统平台、软件配置和屏幕分辨率的情况下,最终展示的页码有可能是不相同的。通常情况下,客户端(例如阅读器)可以采用离线逐章排版方案或者基于总字数预测的方案计算电子书籍中各个章节的页码页数。
对于离线逐章排版方案,客户端先下载所有电子书籍内容,然后通过离线进行逐章排版,获取各个章节的页码页数。但是,离线逐章排版方案通常存在以下缺陷:
1、客户端为了加快首屏加载时间,会采用分章下载的方法,这就导致客户端无法使用离线逐章排版方案来计算整本电子书籍中各个章节的页码页数。
2、某一些电子书籍文件较大、网络传输缓慢等情况,会严重影响页码计算的时间,影响用户体验。
3、调整排版格式后需要全部重新计算,性能开销大。
对于基于总字数预测的方案,服务器需要提前计算字数总字数,然后将字数总数返回给客户端;客户端收到服务器发送的字数总数后,通过简单的规则预估各个章节的页码页数。但是,基于总字数预测的方案通常存在以下缺陷:
1、由于基于字数预估页码的方案的计算规则过于简单,且许多电子书籍文件具有超文本标记语言(Hypertext Markup Language,html)代码以及图片等,导致页码页数估算不准确。
2、客户端无法进行页码调整,方案难以扩展且实用性较差。
发明内容
本申请实施例提供了一种页码预测方法、页码显示方法、服务器以及客户端。在首次预览电子书籍的场景下,该页码预测方法不仅能够实现对电子书籍的大小的估算,让读者拥有与纸质书类似的页码体验,还能够在保证电子书籍的安全性以及降低客户端的性能开销的基础上,提升了页码预测的及时性、准确性以及实用性。
第一方面,本申请实施例提供了一种页码预测方法,包括:
接收客户端发送的页码请求;该页码请求用于请求电子书籍中各个章节的起始页面的页码;
响应于该页码请求,确定服务器的缓冲存储器中存储的信息是否包括该各个章节的起始页面的页码;
在该服务器的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,获取该各个章节的特征向量;
其中,该各个章节的特征向量包括服务器对该各个章节的内容特征信息和该各个章节的阅读特征信息进行向量化处理得到的向量;该各个章节的内容特征信息包括该服务器对该各个章节的内容进行特征提取得到的特征信息,该各个章节的阅读特征信息包括用于展示该电子书籍的阅读应用程序的阅读配置信息和用于表征该阅读应用程序的运行环境的信息;
基于该各个章节的特征向量,利用页码预测模型预测该各个章节的起始页面的页码;
向该客户端发送该页码请求的响应消息,该页码请求的响应消息包括该各个章节的起始页面的页码。
第二方面,本申请实施例提供了一种页码显示方法,包括:
响应于目标对象针对电子书籍执行的阅读操作,确定客户端的缓冲存储器中存储的信息是否包括该电子书籍中各个章节的起始页面的页码;
在该客户端的缓冲存储器中存储的信息包括该各个章节的起始页面的页码的情况下,从该客户端的缓冲存储器获取该各个章节的起始页面的页码;
在该客户端的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,向服务器发送页码请求并接收该服务器发送的该页码请求的响应消息;该页码请求用于请求该各个章节的起始页面的页码,该页码请求的响应消息包括该各个章节的起始页面的页码;
在该客户端的显示屏上,显示该各个章节的起始页面的页码。
第三方面,本申请实施例提供了一种服务器,包括:
接收单元,用于接收客户端发送的页码请求;该页码请求用于请求电子书籍中各个章节的起始页面的页码;
确定单元,用于响应于该页码请求,确定服务器的缓冲存储器中存储的信息是否包括该各个章节的起始页面的页码;
获取单元,用于在该服务器的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,获取该各个章节的特征向量;
其中,该各个章节的特征向量包括服务器对该各个章节的内容特征信息和该各个章节的阅读特征信息进行向量化处理得到的向量;该各个章节的内容特征信息包括该服务器对该各个章节的内容进行特征提取得到的特征信息,该各个章节的阅读特征信息包括用于展示该电子书籍的阅读应用程序的阅读配置信息和用于表征该阅读应用程序的运行环境的信息;
预测单元,用于基于该各个章节的特征向量,利用页码预测模型预测该各个章节的起始页面的页码;
发送单元,用于向该客户端发送该页码请求的响应消息,该页码请求的响应消息包括该各个章节的起始页面的页码。
第四方面,本申请实施例提供了一种客户端,包括:
确定单元,用于响应于目标对象针对电子书籍执行的阅读操作,确定客户端的缓冲存储器中存储的信息是否包括该电子书籍中各个章节的起始页面的页码;
第一获取单元,用于在该客户端的缓冲存储器中存储的信息包括该各个章节的起始页面的页码的情况下,从该客户端的缓冲存储器获取该各个章节的起始页面的页码;
第二获取单元,用于在该客户端的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,向服务器发送页码请求并接收该服务器发送的该页码请求的响应消息;该页码请求用于请求该各个章节的起始页面的页码,该页码请求的响应消息包括该各个章节的起始页面的页码;
显示单元,用于在该客户端的显示屏上,显示该各个章节的起始页面的页码。
第五方面,本申请实施例提供了一种电子设备,包括:
处理器,适于实现计算机指令;以及,
计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令适于由处理器加载并执行上文涉及的第一方面提供的页面预测方法或第二方面提供的页面显示方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令,该计算机指令被计算机设备的处理器读取并执行时,使得计算机设备执行上文涉及的第一方面提供的页面预测方法或第二方面提供的页面显示方法。
第七方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上文涉及的第一方面提供的页面预测方法或第二方面提供的页面显示方法。
本实施例中,该页码预测方法包括:接收客户端发送的页码请求;该页码请求用于请求电子书籍中各个章节的起始页面的页码;响应于该页码请求,确定服务器的缓冲存储器中存储的信息是否包括该各个章节的起始页面的页码;在该服务器的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,获取该各个章节的特征向量;该各个章节的特征向量包括服务器对各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理得到的向量;基于该各个章节的特征向量,利用页码预测模型预测该各个章节的起始页面的页码;向该客户端发送该页码请求的响应消息,该页码请求的响应消息包括该各个章节的起始页面的页码。
一方面,与离线逐章排版方案相比,该页码预测方法不需要客户端基于下载的整个电子书籍进行逐章排版,而是通过发送页码请求以及接收该页码请求的响应消息,获取该各个章节的起始页面的页码,因此,该页码预测方法不仅保障能够电子书籍的安全性,还能够避免由于电子书籍下载失败导致页面计算失败的问题、由于电子书籍的下载时间过长导致页面计算时间过长、以及由于调整排版格式后需要重新计算页码导致性能开销过大的问题,进而能够降低客户端的性能开销以及页码预测的及时性。
另一方面,与基于总字数预测的方案相比,由于该页码预测方法是基于该各个章节的特征向量利用页码预测模型预测该各个章节的起始页面的页码的,且该各个章节的特征向量包括对各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理得到的向量,说明利用该页面预测模型预测得到的该电子书籍中各个章节的起始页面的页码也是适应各个章节的阅读特征信息和该各个章节的内容特征信息的页码,即该页码预测方法能够解决无法进行页码调整以及方案难以扩展等问题,进而提升了页码预测方法的预测性能和实用性。
此外,服务器在该服务器的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,才获取该各个章节的特征向量,然后基于该各个章节的特征向量利用页码预测模型预测该各个章节的起始页面的页码;相当于,服务器从该服务器的缓冲存储器获取不到该各个章节的起始页面的页码时,才获取该各个章节的特征向量,然后基于该各个特征的特征向量利用该页面预测模型预测该各个章节的起始页面的页码,由此,不管与离线逐章排版方案相比,还是与基于总字数预测的方案相比,都能够降低获取该各个章节的特征向量的耗时,进而提升了页码预测的及时性。
综上可知,在首次预览电子书籍的场景下,该页码预测方法不仅能够实现对电子书籍的大小的估算,让读者拥有与纸质书类似的页码体验,还能够在保证电子书籍的安全性以及降低客户端的性能开销的基础上,提升了页码预测的及时性、准确性以及实用性。
附图说明
图1是本申请实施例提供的页码预测系统的示意性框图。
图2是本申请实施例提供的页码预测方法的示意性流程图。
图3是本申请实施例提供的由书籍简介页面切换到书籍详情展示页面的示意图。
图4是本申请实施例提供的书籍章节展示页面的示意图。
图5是本申请实施例提供的由配置信息设置页面切换到书籍章节展示页面的示意图。
图6是本申请实施例提供的由配置信息设置页面切换到书籍章节展示页面的另一示意图。
图7是本申请实施例提供的页码预测方法的另一示意性流程图。
图8是本申请实施例提供的页码预测模型的结构的示例。
图9是本申请实施例提供的页码展示方法的示意性流程图。
图10是本申请实施例提供的双缓存架构的示例。
图11是本申请实施例提供的信息交互流程的示例。
图12是本申请实施例提供的服务器的示意性框图。
图13是本申请实施例提供的客户端的示意性框图。
图14是本申请实施例提供的电子设备的示意性框图。
具体实施方式
下面将结合具体实施例对本申请提供的技术方案进行清楚完整地描述。
本申请提供的方案涉及人工智能(Artificial Intelligence,AI)技术领域。例如,涉及基于人工智能的页码预测技术领域。
其中,AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
应理解,人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例也可以涉及人工智能技术中的机器学习(Machine Learning,ML)。例如,涉及基于机器学习的页码预测模型对电子书籍的各个章节的页码页数进行预测。
ML是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。
为便于理解本申请提供的技术方案,下面对相关术语进行说明。
电子书籍:是指将文字、图片、声音、影像等内容以数字化形式呈现的数字化资源,可以利用存储介质来存储书籍内容,是一种新型的书籍记载形式。电子书籍可以在有线或无线网络中进行传播,通过电子设备显示给读者进行阅读。
从格式上来说,电子书籍可以通过文档(Document,DOC)格式、文本文档(txt)格式、便携式文档格式 (Portable Document Format,PDF)、可执行程序(executableprogram,EXE)或者其他形式进行展示。从书籍内容上来说,电子书籍可以为供学习使用的学习课本、供扩展阅读内容的课外书籍或供绘画教学使用的绘画书籍等。从来源上来说,电子书籍可以为由纸质书籍转换得到的电子书籍,则该电子书籍具有对应的原始书籍,原始书籍的书籍内容与电子书籍的书籍内容相同。或者电子书籍也可以为根据数字化形式的内容直接生成的电子书籍,如根据用户输入的文本内容生成的文本文档,或者根据用户上传的信息生成的词条等。
电子书籍除内部的书籍内容之外,还具有描述信息,该描述信息用于对电子书籍进行描述,可以包括电子书籍的名称、简介、作者、出版日期等的多项信息。
封面:纸质书籍的封面是指书籍的最外面一层,可以作为保护层对书籍进行保护。则对于电子书籍来说,电子书籍的封面是指电子书籍的首页,通常只有一页。电子书籍的封面中包括书籍的名称、简介、作者、出版者、出版日期等信息,该信息可以为文字信息,也可以为图像信息。
扉页(title page):是电子书籍翻开后的第一页(即整本电子书籍的第二页),其是包括书名、出版者名、作者名的单张页。
目录:是指书籍正文前所记载的各个章节的标题按照一定的次序编排而成的内容,可以表示各个章节在书籍中所处的位置,为读者阅读书籍提供指导。
章节:是指书籍中以章为单位的正文内容。
页码:是指每个页面上用于表示页面顺序的号码、数字或其他类型的标记,可以位于页面的正上方、右下角等位置,用户在阅读任一页面时可以看到页码,了解页面在书籍中的位置。
阅读应用程序:是指用于管理电子书籍的应用,具备查询电子书籍、展示电子书籍的书籍内容以及基于书籍内容进行学习等功能。阅读应用程序可以为电子设备上独立运行的应用程序,如操作系统中运行的系统应用程序、浏览器中运行的插件应用程序或者电子设备上安装的第三方应用程序等,或者,也可以为在互联网应用程序中运行的子应用程序。
其中,该互联网应用程序可以为电子支付应用程序、网络购物应用程序或者即时通信应用程序等。当阅读应用程序在互联网应用程序中运行时,开发者可以在互联网应用程序中为阅读应用程序注册公共标识,以公共标识来识别该阅读应用程序。根据开发者的不同,公共标识可以称为公众号、服务号或者企业号等。在互联网应用程序中运行阅读应用程序后,互联网应用程序中的普通用户便可关注该阅读应用程序的公共标识,或者与该公共标识建立好友关系。之后,互联网应用程序可以将互联网应用程序中运行的阅读应用程序作为媒介,为普通用户实现书籍阅读的功能。
内存:其主要分为随机存储器(RAM),只读存储器(ROM)以及缓冲存储器(Cache)。
RAM:是与CPU直接交换数据的内部存储器,也叫主存(内存)。可以随时读写,而且速度很快,但是断电时RAM不能保留数据。我们平时所说的内存条就是用作电脑的内存,内存条(SIMM)就是将RAM集成块集中在一起的一小块电路板,它插在计算机中的内存插槽上,以减少RAM集成块占用的空间。
ROM:在制造的时候,数据就被存入并永久保存。这些信息只能读出,一般不能写入,即使断电,这些数据也不会丢失。ROM一般用于存放计算机的基本程序和数据,如BIOSROM。ROM所存数据,一般是装入整机前事先写好的,整机工作过程中只能读出,而不像随机存储器那样能快速地、方便地加以改写。ROM所存数据稳定,断电后所存数据也不会改变,其物理外形一般是双列直插式(DIP)的集成块。
缓冲存储器:也可以称为高速缓冲存储器,也是我们经常遇到的概念,它位于CPU与内存之间,是一个读写速度比内存更快的存储器。当CPU向内存中写入或读出数据时,这个数据也被存储进缓冲存储器中。当CPU再次需要这些数据时,CPU就可以从缓冲存储器读取数据,而不是访问较慢的内存,当然,如果需要的数据在缓冲存储器中没有,CPU会再去读取内存中的数据。
全连接层(fully connected layers,FC):在整个卷积神经网络中起到“分类器”的作用。全连接层起到将学到的“分布式特征表示”映射到样本标记空间的作用。对n-1层和n层而言,n-1层的任意一个节点,都和第n层中所有节点有连接。
欧式距离:欧式距离也称欧几里得距离,用于衡量的是多维空间中两个点之间的绝对距离。
批次(Batch):训练或使用模型的时候每个批次喂入数据量的大小。
客户端(Client):指与服务器相对应,为客户提供本地服务的程序。一般安装在普通的用户机上,需要与服务端互相配合运行。互联网发展以后,较常用的客户端包括了如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及实时通信的客户端软件等。
需要说明的是,本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
例如,本文中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。术语“至少一项”,仅仅是一种描述列举对象的组合关系,表示可以存在一项或多项,例如,以下中的至少一项:A、B、C,可以表示以下几种组合情况:单独存在A,单独存在B,单独存在C,同时存在A和B,同时存在A和C,同时存在B和C,同时存在A、B以及C。术语“多个”是指两个或两个以上。字符“/”,一般表示前后关联对象是一种“或”的关系。
再如,术语“对应”可表示两者之间具有直接对应或间接对应的关系,也可以表示两者之间具有关联关系,也可以是指示与被指示、配置与被配置等关系。术语“指示”可以是直接指示,也可以是间接指示,还可以是表示具有关联关系。举例说明,A指示B,可以表示A直接指示B,例如B可以通过A获取;也可以表示A间接指示B,例如A指示C,B可以通过C获取;还可以表示A和B之间具有关联关系。术语“预定义”或“预配置”可以在设备中预先保存相应的代码、表格或其他可用于指示的相关信息,也可以是指由协议约定。“协议”可以指本领域的标准协议。术语“在……时”可以被解释成为“如果”或“若”或“当……时”或“响应于”等类似描述。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”等类似描述。术语“第一”、“第二”、“第三”、“第四”、“第A”、“第B”等是用于区别不同对象,而不是用于描述特定顺序。术语“包括”和“具有”以及它们任何变形,意图在于覆盖不(或非)排他的包含。其中,数字视频压缩技术主要是将庞大的数字影像视频数据进行压缩,以便于传输以及存储等。
图1是本申请实施例提供的页码预测系统100的示意性框图。
如图1所示,该页码预测系统100包括终端110和服务器120。
其中,终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以是手机、平板电脑、笔记本电脑、车载终端等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
其中,终端110上运行阅读应用程序,通过该阅读应用程序与服务器120进行交互,共同实现电子书籍的阅读功能。在第一种场景下,该阅读应用程序为终端110上独立运行的应用程序,此时服务器120可以称为阅读服务器,该阅读应用程序用于提供为与阅读服务器关联的前端服务。在第二种场景下,该阅读应用程序为在互联网应用程序中运行的子应用程序,此时服务器120可以称为阅读服务器,并且,该页码预测系统100除了包括阅读服务器之外还可以包括互联网应用服务器,互联网应用程序用于提供与互联网应用服务器关联的前端服务,该阅读应用程序用于提供为与阅读服务器关联的前端服务。
终端110和互联网应用服务器之间通过网络连接,互联网应用服务器和阅读服务器之间通过网络连接。互联网应用服务器用于向阅读服务器提供接口,阅读服务器接入互联网应用服务器后,阅读应用程序可在互联网应用服务器上注册公共标识,从而基于该公共标识与该互联网应用服务器进行交互,并与该互联网应用服务器共享数据资源。
应当理解,图1仅为本申请的示例,不应理解为对本申请的限制。例如,图1仅示例性地包括一个终端110,但在其他可替代实施例中,该页码预测系统100可以包括多个终端或多个服务器。
值得注意的是,电子书籍的页码计算是终端110的必备功能,受到软件环境或硬件环境的限制,同样的电子书籍在不同系统平台、软件配置和屏幕分辨率的情况下,最终展示的页码有可能是不相同的。通常情况下,终端110可以采用离线逐章排版方案或者基于总字数预测的方案计算电子书中各个章节的页码页数。
对于离线逐章排版方案,终端110先下载电子书籍的完整内容,然后通过离线进行逐章排版,获取各个章节的页码页数。但是,离线逐章排版方案通常存在以下缺陷:
1、终端110为了加快首屏加载时间,会采用分章下载的方法,这就导致终端110无法使用离线逐章排版方案来计算整本电子书籍中各个章节的页码页数。
2、某一些电子书文件较大、网络传输缓慢等情况,会严重影响页码计算的时间,影响用户体验。
3、调整排版格式后需要全部重新计算,性能开销大。
对于基于总字数预测的方案,服务器120需要提前计算字数总字数,然后将字数总数返回给终端110;终端110收到服务器120发送的字数总数后,通过简单的规则预估各个章节的页码页数。但是,基于总字数预测的方案通常存在以下缺陷:
1、由于基于字数预估页码的方案的计算规则过于简单,且许多电子书籍具有超文本标记语言(Hypertext Markup Language,html)代码以及图片等,导致页码页数估算不准确。
2、终端110无法进行页码调整,方案难以扩展且实用性较差。
有鉴于此,本申请提供了一种页码预测方法,该页码预测方法不仅能够实现对电子书籍的大小的估算,让读者拥有与纸质书类似的页码体验,还能够在保证电子书籍的安全性以及降低客户端的性能开销的基础上,提升了页码预测的及时性、准确性以及实用性。具体地,本申请提供了一种基于机器学习的页码预测方法和系统,可以不需要下载整本电子书籍,直接在服务器完成页码计算的功能,使得读者在首次预览电子书的场景下,就能获取电子书籍中各个章节在页数或起始页面的页码,拥有同纸质书籍一样的页码体验。具体地,该页码预测方法包括页码预测算法和页码推理系统。页码预测算法可以采用MLP神经网络(当然,也可以采用其它机器学习算法,如随机森林等),通过将各个章节的阅读特征信息(包括阅读应用程序的阅读配置信息和运行环境)和电子书籍中各个章节的内容特征信息特征嵌入到向量空间得到各个章节的特征向量,进而基于该各个章节的特征向量对各个章节的起始页面的页码进行预测(当然,在其他可替代实施例中,该方法也可以基于该各个章节的特征向量对各个章节的页数进行预测,然后基于各个章节的页数计算得到章节起始页面的页码),并通过计算预测得到的预测结果和真实页码的距离来训练页码预测模型。此外,页码推理系统采用客户端与服务器的双缓存方案对电子书籍中各个章节的起始页面的页码(或各个章节的页数)进行存储,用于减少页码预测模型的推理次数,进而减轻服务器负载。另外,还可以基于电子书籍中各个章节的特征向量的预存储方案,能够实现大规模实时在线推理。
图2示出了根据本申请实施例的页码预测方法200的示意性流程图,该方法200可以由任何具有数据处理能力的电子设备执行。例如,该电子设备可实施为服务器。例如,该服务器可以是图1所示的服务器120或与服务器120连接的服务器。该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供有云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、以及大数据服务的人工智能平台或云服务器,本申请在此不做限制。为便于说明,下面以服务器为执行主体对该方法200进行说明。
如图2所示,该方法200可包括:
S210,服务器接收客户端发送的页码请求;该页码请求用于请求电子书籍中各个章节的起始页面的页码。
示例性地,该页码请求用于请求需要预测的电子书籍中各个章节的起始页面的页码。
示例性地,该页码请求可以包括该电子书籍的标识,该电子书籍的标识包括但不限于以下中的至少一项:该电子书籍的书名、该电子书籍的作者名、该电子书籍的出版社、该电子书籍的封面等能够用于表示该电子书籍的信息或标识。
示例性地,该各个章节可以是该电子书籍的目录中的任意一个标题和该任意一个标题下的正文内容。该正文内容可以是文字、图像、网址等任意类型的内容。
当然,在其他可替代实施例中,该页码请求还可以用于请求除该各个章节的起始页面的页码之外的信息,本申请对此不作具体限定。例如,该页码请求可以用于请求该各个章节的起始页面的页码之外,还可以用于请求扉页、目录的起始页面、版权信息的起始页面、或用于展示电子书籍的相关信息的起始页面的页码等。再如,该页码请求也可以用于请求该各个章节的页数,这种情况下,客户端在指导该各个章节的页数后,可以基于该各个章节的页数确定(例如计算)该各个章节的起始页面的页码。
S220,服务器响应于该页码请求,确定服务器的缓冲存储器中存储的信息是否包括该各个章节的起始页面的页码。
示例性地,该服务器的缓冲存储器的读写速度大于该服务器的内存的读写速度。
S230,在该服务器的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,服务器获取该各个章节的特征向量;其中,该各个章节的特征向量包括服务器对该各个章节的内容特征信息和该各个章节的阅读特征信息进行向量化处理得到的向量;该各个章节的内容特征信息包括该服务器对该各个章节的内容进行特征提取得到的特征信息,该各个章节的阅读特征信息包括用于展示该电子书籍的阅读应用程序的阅读配置信息和用于表征该阅读应用程序的运行环境的信息。
示例性地,该阅读配置信息也可以称为软件配置信息,其包括以下中的至少一项:字体类型、字体大小、行间距、用于指示是否进行首行缩进的标识。
示例性地,该阅读应用程序的运行环境也可以称为该阅读应用程序的硬件运行环境,用于表征该阅读应用程序的运行环境的信息可以包括以下中的至少一项:系统平台(如安卓(Android)系统或IOS操作系统)、屏幕分辨率宽高等。
示例性地,该各个章节的内容特征信息可以是服务器基于该各个章节的内容(例如,该各个章节的子文件包括的内容)提取的特征,该各个章节的内容包括该各个章节的子标题、文字、图像、网址等任意类型的内容。例如,该各个章节的内容特征信息包括以下中的至少一项:文件(例如HXML文件)的数量、字数、段落数、图片的尺寸、图片数量、标题数量等各种影响页码的特征。其中,该各个章节中的图像的尺寸不统一时(例如该各个章节包括多个尺寸的图像时),该各个章节的内容特征信息包括每一个图片尺寸和每一个图片尺寸下的图片数量。以段落数为例,服务器章节1的特征信息可包括章节1中包括的段落数。
S240,服务器基于该各个章节的特征向量,利用页码预测模型预测该各个章节的起始页面的页码。
示例性地,服务器基于该各个章节的特征向量,利用页码预测模型直接预测该各个章节的起始页面的页码。
示例性地,服务器基于该各个章节的特征向量,利用页码预测模型直接预测该各个章节的页数,进而基于该各个章节的页数确定该各个章节的起始页面的页码。
示例性地,由于该各个章节的特征向量包括服务器对各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理得到的向量。因此,服务器基于该各个章节的特征向量,利用页码预测模型预测该各个章节的起始页面的页码;相当于,该页码预测模型预测的输入包括各个章节的阅读特征信息和该各个章节的内容特征信息两部分,即服务器可基于各个章节的阅读特征信息和该各个章节的内容特征信息对该各个章节的起始页面的页码进行预测,说明利用该页面预测模型预测得到的该电子书籍中各个章节的起始页面的页码也是适应各个章节的阅读特征信息和该各个章节的内容特征信息的页码。
需要说明的是,本申请涉及页码预测模型可以是任意一种基于深度学习或机器学习的用于预测的模型,本申请实施例对其具体类型不作限定。
例如,该页码预测模型包括但不限于:传统学习模型、集成学习模型或深度学习模型。可选的,传统学习模型包括但不限于:树模型(回归树)或逻辑回归(logisticregression,LR)模型;集成学习模型包括但不限于:梯度提升算法的改进模型(XGBoost)或随机森林模型;深度学习模型包括但不限于:神经网络、动态贝叶斯网络(DynamicBayesian Network,DBN)和堆栈自编码网络(stacked auto-encoder network,SAE)模型。
当然,在本申请的其他实施例中,也可以使用其他机器学习类的模型。
S250,服务器向该客户端发送该页码请求的响应消息,该页码请求的响应消息包括该各个章节的起始页面的页码。
示例性地,该各个章节的起始页面的页码可以是以该电子书籍的扉页为首页统计的页码,还可以是以该电子书籍的目录的起始页为首页统计的页码,还可以是以该电子书籍的第一章节的起始页面或其他页面为首页统计的页码,本申请对此不作具体限定。这种情况下,如果该各个章节的起始页面的页码不是以扉页为首页统计的页码,该页码请求的响应消息还可以包括用于统计该各个章节的起始页面的页码的首页之前的所有页面的总数,该所有页面的第一个页面为该电子书籍的扉页。
示例性地,该响应消息还可以包括该电子书籍的标识。例如,客户端同时打开多个书籍时,该响应消息包括该电子书籍的标识,可以使得该客户端区分出该页码请求的响应消息中包括的页码是该多个书籍中哪个书籍的页码,进而提升用户体验。该响应消息中包括的标识和该页码请求中包括的标识的类型可以相同。该电子书籍的标识包括但不限于以下中的至少一项:该电子书籍的书名、该电子书籍的作者名、该电子书籍的出版社、该电子书籍的封面等能够用于表示该电子书籍的信息或标识。
本实施例中,该页码预测方法包括:接收客户端发送的页码请求;该页码请求用于请求电子书籍中各个章节的起始页面的页码;响应于该页码请求,获取该各个章节的特征向量;该各个章节的特征向量包括服务器对各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理得到的向量;基于该各个章节的特征向量,利用页码预测模型预测该各个章节的起始页面的页码;向该客户端发送该页码请求的响应消息,该页码请求的响应消息包括该各个章节的起始页面的页码。
一方面,与离线逐章排版方案相比,该页码预测方法不需要客户端基于下载的整个电子书籍进行逐章排版,而是通过发送页码请求以及接收该页码请求的响应消息,获取该各个章节的起始页面的页码,因此,该页码预测方法不仅保障能够电子书籍的安全性,还能够避免由于电子书籍下载失败导致页面计算失败的问题、由于电子书籍的下载时间过长导致页面计算时间过长、以及由于调整排版格式后需要重新计算页码导致性能开销过大的问题,进而能够降低客户端的性能开销以及页码预测的及时性。
另一方面,与基于总字数预测的方案相比,由于该页码预测方法是基于该各个章节的特征向量利用页码预测模型预测该各个章节的起始页面的页码的,且该各个章节的特征向量包括对各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理得到的向量,说明利用该页面预测模型预测得到的该电子书籍中各个章节的起始页面的页码也是适应各个章节的阅读特征信息和该各个章节的内容特征信息的页码,即该页码预测方法能够解决无法进行页码调整以及方案难以扩展等问题,进而提升了页码预测方法的预测性能和实用性。
此外,服务器在该服务器的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,才获取该各个章节的特征向量,然后基于该各个章节的特征向量利用页码预测模型预测该各个章节的起始页面的页码;相当于,服务器从该服务器的缓冲存储器获取不到该各个章节的起始页面的页码时,才获取该各个章节的特征向量,然后基于该各个特征的特征向量利用该页面预测模型预测该各个章节的起始页面的页码,由此,不管与离线逐章排版方案相比,还是与基于总字数预测的方案相比,都能够降低获取该各个章节的特征向量的耗时,进而提升了页码预测的及时性。
综上可知,在首次预览电子书籍的场景下,该页码预测方法不仅能够实现对电子书籍的大小的估算,让读者拥有与纸质书类似的页码体验,还能够在保证电子书籍的安全性以及降低客户端的性能开销的基础上,提升了页码预测的及时性、准确性以及实用性。
需要说明的是,本申请提供的页码预测方法使用的是基于机器学习算法的页码预测模型(例如MLP神经网络模型),但在其他可替代实施例中,服务器也可以使用模拟渲染的方式来确定该各个章节的起始页面的页码,本申请对此不作具体限定。
其中,模拟渲染有两种方式:
方式1:模拟客户端的阅读应用程序的阅读配置信息和该阅读应用程序的运行环境,使用虚拟机模拟渲染电子书籍中的每一个章节,得到整本电子书籍的页码页数。但是这种方案成本较高、无法用于大规模用户在线实时页码估计。
方式2:针对简单特殊的场景(比如:txt、仅包括文字的电子书籍、定制图片和排版等),针对客户端每行能够显示的字数和每页能够展示的行数,来预估一段文本能够显示的页数(只要足够定制,也能显示图片等)。但是这种方案技术成本较高,且改动成本很高,不利于产品迭代。
下面结合图3至图6对该页码预测方法的应用场景进行示例性说明。
图3是本申请实施例提供的由书籍简介页面切换到书籍详情展示页面的示意图。
如图3所示,电子书籍的书籍简介页面可以是图3左侧所示的页面,电子书籍的书籍详情展示页面可以是图3右侧所示的页面。
其中,书籍简介页面可以显示有电子书籍的封面、书名、作者名、内容简介、推荐值(例如如图所示的93.3%)、档次标识(例如如图所示的“神作”)、评价为“推荐”的统计条、评价为“一般”的统计条、评价为“不行”的统计条、精彩点评等信息。
此外,书籍简介页面可以包括一个或多个标签按钮(例如如图所示的显示有“标签1”~“标签4”中任意一个标签的矩形区域)、点评按钮(例如如图所示的显示有“推荐”的矩形区域、显示有“一般”的矩形区域、以及显示有“不行”的矩形区域)、精彩点评按钮(例如所示的显示有“精彩点评”的矩形区域)、已加入书架按钮以及阅读按钮。具体实现中,可以通过点击标签按钮打开显示有标签的页面,可以通过点击点评按钮对电子书籍进行点评。通过点击已加入书架按钮打开展示有已加入书架的电子书籍的页面,通过点击阅读按钮打开电子书籍的书籍详情展示页面,例如,可打开如图右侧所示的页面。
书籍详情展示页面可以显示有书籍的封面、推荐值(例如如图所示的93.3%)、档次标识(例如如图所示的“神作”)、评价为“推荐”的统计条、评价为“一般”的统计条、评价为“不行”的统计条、评价为“推荐”的统计数值,评价为“一般”的统计数值、评价为“不行”的统计数值、以及阅读总人数、是否已购买、总字数等信息。此外,书籍详情展示页面可以显示有一个或多个按钮(例如如图所示的按钮1~按钮4),通过点击该一个或多个按钮中的按钮可以实现以下功能:打开书籍章节展示页面、对阅读应用程序的阅读配置信息进行调整的页面、或阅读应用程序的运行环境进行调整的页面。例如,通过点击按钮1可实现打开书籍章节展示页面。再如,通过点击按钮4可实现对阅读应用程序的字体大小、边距、行距、字体、翻译方式等阅读配置信息进行调整的配置信息设置页面。
图4是本申请实施例提供的书籍章节展示页面的示意图。
如图4所示,该书籍章节展示页面可以包括搜索按钮(例如如图所示的显示有“搜索全书内容”的黑色线条框)以及各个章节的起始页面的页码(例如,第一章节的起始页面的页码为27)。通过点击搜索按钮,可以输入搜索词并显示该搜索词在电子书籍中的位置;通过点击各个章节所在的区域,可打开显示各个章节正文的页面。
图5是本申请实施例提供的由配置信息设置页面切换到书籍章节展示页面的示意图。
如图5所示,电子书籍的配置信息设置页面可以是图5左侧所示的页面,电子书籍的书籍章节展示页面可以是图5右侧所示的页面。
其中,该配置信息设置页面可包括字体大小调整按钮(例如如图所示的“20”所在的矩形区域)、边距按钮(例如如图所示的显示有“边距”的矩形区域)、行距按钮(例如如图所示的显示有“行距”的矩形区域)、字体按钮(例如如图所示的显示有“字体”的区域)、翻页方式按钮(例如如图所示的显示有“翻页方式”的区域)等。在具体实现中,可通过左右滑动字体大小调整按钮调整字体大小,可通过左右滑动边距按钮调整边距大小,可通过左右滑动行距按钮调整行距大小,可通过点击字体按钮选择字体,可通过点击翻页方式按钮选择电子书籍的翻页方式。例如,如图5所示,在如左侧所示的配置信息设置页面中,通过滑动字体大小调整按钮并将字体大小调整为20时,如果再次进入如右侧所示的书籍章节展示页面,该书籍章节展示页面中第一章的起始页码为22。
值得注意的是,通过滑动字体大小调整按钮再次进入书籍章节展示页面时,书籍章节展示页面中显示的各个章节的起始页面的页码为重新计算后的页码。例如,图6是本申请实施例提供的由书籍详情展示页面切换到书籍章节展示页面的另一示意图。如图6所示,在如左侧所示的配置信息设置页面中,通过滑动字体大小调整按钮将字体大小调整为27时,再次进入如右侧所示的书籍章节展示页面后,该书籍章节展示页面中第一章的起始页码更新为34。
简言之,本技术方案的主要应用场景为阅读应用程序针对电子书籍中各个章节的页码预测。具体地,通过点击书籍简介页面(例如图3中左侧所示的页面)中的阅读按钮,进入书籍详情展示页面(例如图3中右侧所示的页面),接着点击该书籍详情展示页面中的按钮(例如按钮1)进入书籍章节展示页面(例如图4所示的页面),该书籍章节展示页面显示有章节目录,章节目录的右侧数字为各个章节的起始页面的页码。结合本申请提供的页码预测方法来说,服务器接收客户端发送的页码请求后,响应该页码请求获取电子书籍中各个章节的特征向量,并基于该各个章节的特征向量,利用页码预测模型预测该各个章节的起始页面的页码;然后向该客户端发送该页码请求的响应消息,该页码请求的响应消息包括该各个章节的起始页面的页码。客户端收到该页码请求的响应消息后显示书籍章节展示页面(例如图4所示的页面)。
图7是本申请实施例提供的页码预测方法的另一示意性流程图。
如图7所示,服务器获取各个章节的阅读特征信息和该各个章节的内容特征信息,然后对其进行特征向量化处理得到各个章节的特征向量,并基于该各个章节的特征向量,利用该页码预测模型预测并输出该各个章节的起始页面的页码。例如,服务器可以利用页码预测模型基于该章节1的特征向量,利用该页码预测模型预测并输出该章节1的起始页面的页码;此外,基于该章节2的特征向量,利用该页码预测模型预测并输出该章节2的起始页面的页码,以此类推,直至服务器基于该章节n的特征向量,利用该页码预测模型预测并输出该章节n的起始页面的页码。
在一些实施例中,该S230可包括:
服务器在该服务器的缓冲存储器存储的信息包括该各个章节的特征向量的情况下,从该服务器的缓冲存储器获取该各个章节的特征向量。
示例性地,该服务器的缓冲存储器的读写速度大于该服务器的内存的读写速度。
本实施例中,服务器在该服务器的缓冲存储器存储的信息包括该各个章节的特征向量的情况下,从该服务器的缓冲存储器获取该各个章节的特征向量,避免了服务器对各个章节的阅读特征信息和该各个章节的内容特征信息进行线上向量化处理,不仅能够降低页码预测模型的推理次数,进而减轻了服务器负载,还能够降低获取该各个章节的特征向量的耗时,进而提升了页码预测的及时性。
在一些实施例中,该S230可包括:
服务器在该服务器的缓冲存储器存储的信息不包括该各个章节的特征向量的情况下,从该客户端获取该各个章节的阅读特征信息,并基于该各个章节的内容提取该各个章节的内容特征信息;然后对该各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理,得到该各个章节的特征向量;其中该方法200还可包括:
服务器将该各个章节的特征向量存储至该服务器的缓冲存储器。
本实施例中,在该服务器的缓冲存储器存储的信息不包括该各个章节的特征向量的情况下,从该客户端获取该各个章节的阅读特征信息,并基于该各个章节的内容提取该各个章节的内容特征信息;对该各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理,得到该各个章节的特征向量;相当于,在该服务器的存储器存储的信息不包括该各个章节的特征向量的情况下,可以在线获取该各个章节的阅读特征信息和该各个章节的内容特征信息,并在线对该各个章节的阅读特征信息和该各个章节的内容特征信息进行特征向量化处理,以得到该各个章节的特征向量。进一步的,将在线获取的该各个章节的特征向量存储至该服务器的缓冲存储器,有利于其他客户端请求该各个章节的起始页面的页码时,避免了服务器对各个章节的阅读特征信息和该各个章节的内容特征信息再次进行线上向量化处理,不仅能够降低页码预测模型的推理次数,进而减轻了服务器负载,还能够降低获取该各个章节的特征向量的耗时,进而提升了页码预测的及时性。
在一些实施例中,服务器基于该各个章节的内容提取该各个章节的内容特征信息时,可以将该电子书籍的文件拆分为该各个章节的子文件;针对与页码相关的至少一个特征,服务器基于该各个章节的子文件统计该至少一个特征中各个特征的数量,得到至少一个数值;将该至少一个数值,确定为该各个章节的内容特征信息中的信息。
示例性地,该至少一个特征包括:例如,该各个章节的内容特征信息包括以下中的至少一项:文件(例如HXML文件)的数量、字数、段落数、图片的尺寸、图片数量、标题数量等各种影响页码的特征。其中,该各个章节中的图像的尺寸不统一时,该至少一个特征包括每一个图片尺寸和每一个图片尺寸下的图片数量。以段落数为例,服务器可将章节1的段落数确定为章节1的特征信息中的一个数值。
本实施例中,服务器基于该各个章节的内容提取该各个章节的内容特征信息时,可以将该电子书籍的文件拆分为该各个章节的子文件,然后基于该各个章节的子文件提取该各个章节的内容特征信息,可以降低提取该各个章节的内容特征信息的复杂度。此外,服务器基于该各个章节的子文件统计该至少一个特征中各个特征的数量,得到至少一个数值;以及将该至少一个数值,确定为该各个章节的内容特征信息中的信息,可以降低对该各个章节的内容特征信息进行向量化的难度,进而能够降低该各个章节的内容特征信息的向量化的耗时以及提升了页码预测的及时性。
在一些实施例中,对该各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理,得到该各个章节的特征向量时,可以将该各个章节的阅读特征信息中信息格式不是数值格式的信息转换为数值,并通过拼接转换得到的数值和该各个章节的阅读特征信息中的数值,得到该阅读特征信息的特征向量;拼接该各个章节的内容特征信息中的数值,得到该内容特征信息的特征向量;对该阅读特征信息的特征向量和该内容特征信息的特征向量进行特征融合,得到该各个章节的融合向量;对该各个章节的融合向量进行归一化处理,得到该各个章节的特征向量。
示例性地,服务器将该各个章节的阅读特征信息中信息格式不是数值格式的信息转换为数值,可以将其转换为二进制、十进制、十六进制或任意格式的数值。
示例性地,该阅读配置信息也可以称为软件配置信息,其包括以下中的至少一项:字体类型、字体大小、行间距、用于指示是否进行首行缩进的标识。该阅读应用程序的运行环境也可以称为硬件运行环境,其包括以下中的至少一项:系统平台(如安卓(Android)系统或IOS操作系统)、屏幕分辨率宽高等。服务器将该各个章节的阅读特征信息中信息格式不是数值格式的信息转换为数值时,可以基于预先定义的映射表将该各个章节的阅读特征信息中信息格式不是数值格式的信息转换为数值。例如,该各个章节的阅读特征信息包括字体时,可以将字体“HelveticaNeue”标记为数字1,将字体“Source Han Serif CN”标记为数字2。再如,该各个章节的阅读特征信息包括用于指示是否进行首行缩进的标识时,可以将用于指示进行首行缩进的标识(例如标识为“是”)转换为1,可以将用于指示不进行首行缩进的标识(例如标识为“否”)转换为0。再如,该各个章节的阅读特征信息包括系统平台时,可以将安卓(Android)系统转换为1,可以将IOS操作系统转换为2。
示例性地,服务器对该阅读特征信息的特征向量和该内容特征信息的特征向量进行特征融合时,本申请对其具体融合方式不作限定。例如,可以对该阅读特征信息的特征向量和该内容特征信息的特征向量进行拼接,也可以对该阅读特征信息的特征向量和该内容特征信息的特征向量进行加权,也可以对该阅读特征信息的特征向量和该内容特征信息的特征向量进行加权点积,或采用其他方式将该阅读特征信息的特征向量和该内容特征信息的特征向量构造成一维向量,进而得到该各个章节的融合向量。
示例性地,服务器对该各个章节的融合向量进行归一化处理时,可以采用任意一种归一化处理方式。例如,服务器可以对该各个章节的融合向量进行标准归一化方法处理,以得到具有标准正态分布的得到该各个章节的特征向量。
在一些实施例中,该页码预测模型包括串联的至少一个第一类连接层和在该至少一个第一类连接层之后串联的至少一个第二类连接层;该至少一个第一类连接层为多个第一类连接层时,该第一类连接层中神经元的数量按照该至少一个第一类连接层的连接顺序递增至预设值;该至少一个第二类连接层为多个第二类连接层时,该第二类连接层中神经元的数量按照该多个第二类连接层的连接顺序由该预设值递减至1;其中,该S240可包括:
利用该至少一个第一类连接层,对该各个章节的特征向量进行特征提取,得到中间向量;利用该至少一个第二类连接层,对该中间向量进行特征提取,得到预测值;将该预测值,确定为该各个章节的起始页面的页码。
示例性地,该第一类连接层和该第二类连接层均为全连接层。
示例性地,该预设值可以是任意大小的数值。例如,该预设值可以是大于该各个章节的特征向量的长度。
示例性地,该多个第一类连接层中的第一个第一类连接层中神经元的数量大于或等于该各个章节的特征向量的长度。
图8是本申请实施例提供的页码预测模型的结构的示例。
如图8所示,页码预测模型可以使用机器学习模型,该机器学习模型可以是多层感知机(MLP)。页码预测模型的输入是需要预测的电子书籍中各个章节的特征向量,该各个章节的特征向量包括对各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理得到的向量;页码预测模型采用了五层的全连接层,各个层中神经元的数量分别为64、128、256、128、64,每层的激活函数使用了LeakyReLU函数或其他类型的激活函数;页码预测模型的输出为预测的各个章节的页数,进而基于各个章节的页数确定该各个章节的起始页面的页码。页码预测模型的损失函数采用了SmoothL1Loss函数或其他类型的损失函数计算预测值和真实值之间的欧式距离。
其中,该页码预测模型的训练过程可以如下所示:
可以将收集的10万行数据集,按照7:1:2的随机划分为训练集、验证集和测试集。训练过程采用了Adam优化器,初始学习率为0.05,一共训练200个时期(epoch)。最后得到的模型在测试集上的平均绝对误差平方绝对误差(Mean absolute Error,MAE)为0.656,章节页数误差如表1所示:
表1 数据统计信息
如表1所示,通过7万行数据集,即可得到误差页数为0的比例为0.627,因此,可以通过增加训练集的数量提升该页码预测模型预测电子书籍中各个章节的页数的准确性。
在一些实施例中,该方法200还可包括:
在该服务器的缓冲存储器中存储的信息包括该各个章节的起始页面的页码的情况下,从该服务器的缓冲存储器获取该各个章节的起始页面的页码,并向该客户端发送该页码请求的响应消息。
示例性地,该服务器的缓冲存储器的读写速度大于该服务器的内存的读写速度。
本实施例中,在该服务器的缓冲存储器中存储的信息包括该各个章节的起始页面的页码的情况下,从该服务器的缓冲存储器获取该各个章节的起始页面的页码,并向该客户端发送该页码请求的响应消息,能够降低获取该各个章节的起始页面的页码的耗时,进而提升了页码获取的及时性。
在一些实施例中,该S240之后,该方法200还可包括:
服务器将该各个章节的起始页面的页码存储到该服务器的缓冲存储器。
本实施例中,服务器将该各个章节的起始页面的页码存储到该服务器的缓冲存储器;相当于,在该服务器的缓冲存储器中存储的信息包括该各个章节的起始页面的页码的情况下,该服务器获取该各个章节的特征向量,并基于该各个特征的特征向量利用该页面预测模型预测得到该各个章节的起始页面的页码后,将该各个章节的起始页面的页码存储到该服务器的缓冲存储器。由此,有利于其他客户端请求该各个章节的起始页面的页码时,可以直接从该服务器的缓冲存储器获取该各个章节的起始页面的页码,能够降低页码预测模型的推理次数,进而减轻了服务器负载,还能够降低获取该各个章节的特征向量的耗时,进而提升了页码预测的及时性。
在一些实施例中,服务器将该各个章节的起始页面的页码存储到该服务器的缓冲存储器时,可以在该电子书籍满足将该各个章节的起始页面的页码存储到该服务器的缓冲存储器的存储条件的情况下,则将该各个章节的起始页面的页码存储到该服务器的缓冲存储器。
示例性地,该存储条件可以是预定义的用于触发服务器存储页面的条件。
例如,该存储条件可以是该电子书籍为预设类型的书籍。即服务器将该各个章节的起始页面的页码存储到该服务器的缓冲存储器时,可以在该电子书籍为预设类型的书籍的情况下,则将该各个章节的起始页面的页码存储到该服务器的缓冲存储器。该预设类型可以是下载量或点击量大于预设数值的书籍,当然,下载量或点击量大于预设数值的书籍也可以称为热点书籍或热门书籍。
再如,该存储条件可以是字数大于预设阈值。即服务器将该各个章节的起始页面的页码存储到该服务器的缓冲存储器时,可以在该电子书籍的字数大于预设阈值的情况下,则将该各个章节的起始页面的页码存储到该服务器的缓冲存储器。需要说明的是,本实施例中,由于该电子书籍的字数大于预设阈值,说明该电子书籍的内容较多,这种情况下,将该各个章节的起始页面的页码存储到该服务器的缓冲存储器,有利于其他客户端请求该各个章节的起始页面的页码时,能够降低页码预测模型的推理次数,进而减轻了服务器负载,还能够降低获取该各个章节的特征向量的耗时,进而提升了页码预测的及时性。
图9是本申请实施例提供的页码展示方法300的示意性流程图。该方法300可以由任何具有数据处理能力的电子设备执行。例如,该电子设备可实施为客户端。例如,该客户端可以是图1所示的客户端110。为便于说明,下面以服务器为执行主体对该方法200进行说明。
如图9所示,该页码展示方法300可包括:
S310,客户端响应于目标对象针对电子书籍执行的阅读操作,确定该客户端的缓冲存储器中存储的信息是否包括该电子书籍中各个章节的起始页面的页码。
S320,在该客户端的缓冲存储器中存储的信息包括该各个章节的起始页面的页码的情况下,该客户端从该客户端的缓冲存储器获取该各个章节的起始页面的页码。
示例性地,该客户端的缓冲存储器中存储的信息包括该各个章节的起始页面的页码可以是通过以下方式实现:该客户端之前打开过该电子书籍且存储了该电子书籍中各个章节的起始页面的页码,或该客户端预先请求的该电子书籍的各个起始页面的页码。
S330,在该客户端的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,该客户端向服务器发送页码请求并接收该服务器发送的该页码请求的响应消息;该页码请求用于请求该各个章节的起始页面的页码,该页码请求的响应消息包括该各个章节的起始页面的页码。
S340,客户端在该客户端的显示屏上,显示该各个章节的起始页面的页码。
本实施例中,在该客户端的缓冲存储器中存储的信息包括该各个章节的起始页面的页码的情况下,该客户端从该客户端的缓冲存储器获取该各个章节的起始页面的页码;在该客户端的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,该客户端向服务器发送页码请求并接收该服务器发送的该页码请求的响应消息;相当于,客户端优先从客户端的缓冲存储器获取该各个章节的起始页面的页面,在从该客户端的缓冲存储器获取不到的情况下,才通过向服务器请求该各个章节的起始页面的页码,由此能够减轻服务器负载,还能够降低获取该各个章节的特征向量的耗时,进而提升了页码预测的及时性。
图10是本申请实施例提供的双缓存架构的示例。
如图10所示,双缓存架构采用了客户端的缓冲服务器存储有页面与服务器的缓冲服务器存储有特征向量和页面的方案。具体地,客户端会将阅读过的电子书籍的页码缓存到客户端中,当其他客户端以相同配置打开该电子书籍时,会直接使用客户端的缓冲存储器中存储的信息,避免请求服务器。服务器的缓冲存储器中存储的信息包括两种类型的信息,第一种类型的信息是:在各个章节的阅读特征信息为常规信息(例如阅读应用程序的配置信息为常规配置信息以及该阅读应用程序的运行环境为常规运行环境)下,对热点书籍进行预测得到的各个章节的起始页面的页码,避免热点书籍对模型推理造成压力;第二种类型的信息是:对所有电子书籍(例如客户端能够从服务器获取到的所有电子书籍)中各个电子书籍中各个章节的特征向量,在模型推理时,服务器可以直接使用书籍的特征向量进行推理,减少对特征向量化处理的耗时,加速实时响应速度。
图11是本申请实施例提供的信息交互流程400的示例。该方法400可以由目标对象、书架、客户端的缓冲存储器、服务器的缓冲存储器1、页码预测模型、服务器的缓冲存储器2交互执行。其中,书架可以是客户端的阅读应用程序中的模块,页码预测模型可以是配置给服务器的预测模块。当然,服务器的缓冲存储器1和缓冲存储器2也可以合并为一个缓冲存储器,本申请对此不作具体限定。
如图11所示,该信息交互流程400可包括:
S410,目标对象在书架上执行阅读操作。例如,目标对象可以通过点击该书架上的某一个电子书籍(为便于描述,下文称为目标电子书籍)完成阅读操作。
S420,书架响应该阅读操作,向客户端的缓冲存储器发送阅读请求。其中,该阅读请求可以用于请求查询目标电子书籍中各个章节的起始页面的页码。
换言之,客户端收到书架发送的阅读请求后,会查询该客户端的缓冲存储器的存储信息是否包括在该各个章节的阅读特征信息(例如包括阅读应用程序的配置信息和运行环境)下该目标电子书籍中各个章节的起始页面的页码。
S430,客户端的缓冲存储器向服务器的缓冲存储器1发送页码请求。其中,该页码请求用于请求该目标电子书籍中各个章节的起始页面的页码。
具体地,客户端收到阅读请求后,如果客户端的缓冲存储器的存储信息不包括该目标电子书籍中各个章节的起始页面的页码,则该客户端向服务器发送页码请求。当然,如果客户端的缓冲存储器的存储信息包括该目标电子书籍中各个章节的起始页面的页码,则客户端可以直接向书架返回各个章节的起始页面的页码,以便书架将页码和章节进行匹配。
S440,服务器的缓冲存储器1向页码预测模型发送页码预测请求。该页码预测请求用于请求该页码预测模型对该目标电子书籍中各个章节的起始页面的页码进行预测。
具体地,服务器收到客户端发送的页码请求后,会查询服务器的缓冲存储器1的存储信息是否包括该目标电子书籍中各个章节的起始页面的页码。如果服务器的缓冲存储器1的存储信息包括该目标电子书籍中各个章节的起始页面的页码,则服务器可以直接将该目标电子书籍中各个章节的起始页面的页码通过该页码请求的响应消息发送给该客户端。若果该服务器的缓冲存储器1不包括该目标电子书籍中各个章节的起始页面的页码,则服务器可以向页码预测模型发送该页码预测请求。
S450,页码预测模型向服务器的缓冲存储器2发送特征向量的查询请求,该查询请求用于请求该目标电子书籍中各个章节的特征向量。具体地,服务器向页码预测模型发送页码预测请求后,会触发该页码预测模型从该缓冲存储器2发送该查询请求。
S460,缓冲存储器2向页码预测模型发送查询请求的响应消息。该查询请求的响应消息包括该目标电子书籍中各个章节的特征向量。
具体地,如果该缓冲存储器2存储的信息包括该目标电子书籍中各个章节的特征向量,则该查询请求的响应消息包括该目标电子书籍中各个章节的特征向量。如果该缓冲存储器2存储的信息不包括该目标电子书籍中各个章节的特征向量,则该查询请求的响应消息可以包括一个指示信息或为空,其用于指示该缓冲存储器2存储的信息不包括该目标电子书籍中各个章节的特征向量;这种情况下,页码预测模型可以从客户端获取各个章节的阅读特征信息并基于该目标电子书籍中各个章节提取该各个章节的内容特征信息,并通过对各个章节的阅读特征信息和该各个章节的内容特征信息进行特征向量化,得到该各个章节的特征向量。当然,如果该页码预测模型是通过特征向量化得到的该各个章节的特征向量,服务器还可以将其发送或存储至该服务器的缓冲存储器2。
S470,页码预测模型向缓冲存储器1发送页码预测请求的响应消息。该页码预测请求的响应消息包括该目标电子书籍中各个章节的起始页面的页码。
S480,缓冲存储器1向客户端的缓冲存储器发送页码请求的响应消息,该页码请求的响应消息包括该目标电子书籍中各个章节的起始页面的页码。
具体地,服务器接收页码预测模型发送的页码预测请求的响应消息后,向客户端发送页码请求的响应消息。当然,服务器接收页码预测模型发送的页码预测请求的响应消息后,除了将该目标电子书籍中各个章节的起始页面的页码转发给客户端之外,也可以将其存储至该缓冲存储器1。例如,如果该目标电子书籍为热点书籍或者是内容较多的书籍,则服务器可以将该目标电子书籍中各个章节的起始页面的页码存储至该缓冲存储器1。
S490,客户端的缓冲存储向书架发送章节匹配结果。
具体地,客户端收到服务器发送的页码请求的响应消息后,可以直接向阅读应用程序(即书架)返回该目标书籍中各个章节的起始页面的页码,以便阅读应用程序将页码和章节进行匹配。此外,客户端也可以将该目标书籍中各个章节的起始页面的页码存储至该客户端的缓冲存储器。例如,如果该目标电子书籍为热点书籍或者是内容较多的书籍,则客户端可以将该目标电子书籍中各个章节的起始页面的页码存储至该客户端的缓冲存储器。
S491,书架向目标对象进行页面展示。
具体地,阅读应用程序将页码和章节进行匹配后,对基于匹配结果生成显示页面,其可以包括该目标电子书籍中各个章节的标题和该目标电子书籍中各个章节的起始页面的页码。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上文涉及的实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上文涉及的具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上文涉及的各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
上文对本申请实施例提供的方法进行了说明,下面对本申请实施例提供的装置进行说明。
图12是本申请实施例提供的服务器500的示意性框图。
如图5所示,该服务器500可包括:
接收单元510,用于接收客户端发送的页码请求;该页码请求用于请求电子书籍中各个章节的起始页面的页码;
确定单元520,用于响应于该页码请求,确定服务器的缓冲存储器中存储的信息是否包括该各个章节的起始页面的页码;
获取单元530,用于在该服务器的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,获取该各个章节的特征向量;
其中,该各个章节的特征向量包括服务器对该各个章节的内容特征信息和该各个章节的阅读特征信息进行向量化处理得到的向量;该各个章节的内容特征信息包括该服务器对该各个章节的内容进行特征提取得到的特征信息,该各个章节的阅读特征信息包括用于展示该电子书籍的阅读应用程序的阅读配置信息和用于表征该阅读应用程序的运行环境的信息;
预测单元540,用于基于该各个章节的特征向量,利用页码预测模型预测该各个章节的起始页面的页码;
发送单元550,用于向该客户端发送该页码请求的响应消息,该页码请求的响应消息包括该各个章节的起始页面的页码。
在一些实施例中,该获取单元530具体用于:
在该服务器的缓冲存储器存储的信息包括该各个章节的特征向量的情况下,从该服务器的缓冲存储器获取该各个章节的特征向量。
在一些实施例中,该获取单元530具体用于:
在该服务器的缓冲存储器存储的信息不包括该各个章节的特征向量的情况下,从该客户端获取该各个章节的阅读特征信息,并基于该各个章节的内容提取该各个章节的内容特征信息;对该各个章节的阅读特征信息和该各个章节的内容特征信息进行向量化处理,得到该各个章节的特征向量;其中该获取单元530还用于:
将该各个章节的特征向量存储至该服务器的缓冲存储器。
在一些实施例中,该获取单元530具体用于:
将该电子书籍的文件拆分为该各个章节的子文件;
针对与页码相关的至少一个特征,基于该各个章节的子文件统计该至少一个特征中各个特征的数量,得到至少一个数值;
将该至少一个数值,确定为该各个章节的内容特征信息中的信息。
在一些实施例中,该获取单元530具体用于:
将该各个章节的阅读特征信息中信息格式不是数值格式的信息转换为数值,并通过拼接转换得到的数值和该各个章节的阅读特征信息中的数值,得到该阅读特征信息的特征向量;
拼接该各个章节的内容特征信息中的数值,得到该内容特征信息的特征向量;
对该阅读特征信息的特征向量和该内容特征信息的特征向量进行特征融合,得到该各个章节的融合向量;
对该各个章节的融合向量进行归一化处理,得到该各个章节的特征向量。
在一些实施例中,该页码预测模型包括串联的至少一个第一类连接层和在该至少一个第一类连接层之后串联的至少一个第二类连接层;该至少一个第一类连接层为多个第一类连接层时,该第一类连接层中神经元的数量按照该至少一个第一类连接层的连接顺序递增至预设值;该至少一个第二类连接层为多个第二类连接层时,该第二类连接层中神经元的数量按照该多个第二类连接层的连接顺序由该预设值递减至1;
其中,该预测单元540具体用于:
利用该至少一个第一类连接层,对该各个章节的特征向量进行特征提取,得到中间向量;
利用该至少一个第二类连接层,对该中间向量进行特征提取,得到预测值;
将该预测值,确定为该各个章节的起始页面的页码。
在一些实施例中,该获取单元530获取该各个章节的特征向量之前,还用于:
确定服务器的缓冲存储器中存储的信息是否包括该各个章节的起始页面的页码;
在该服务器的缓冲存储器中存储的信息包括该各个章节的起始页面的页码的情况下,从该服务器的缓冲存储器获取该各个章节的起始页面的页码,并向该客户端发送该页码请求的响应消息;
其中,该获取单元530还具体用于:
在该服务器的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,获取该各个章节的特征向量。
在一些实施例中,该预测单元540利用页码预测模型预测该各个章节的起始页面的页码之后,还用于:
将该各个章节的起始页面的页码存储到该服务器的缓冲存储器。
在一些实施例中,该预测单元540具体用于:
在该电子书籍满足将该各个章节的起始页面的页码存储到该服务器的缓冲存储器的存储条件的情况下,则将该各个章节的起始页面的页码存储到该服务器的缓冲存储器。
应理解,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,服务器500可以对应于执行本申请实施例的方法200或400中的相应主体,并且服务器500中的各个单元分别为了实现方法200或400中的相应流程,为了简洁,在此不再赘述。
图13是本申请实施例提供的客户端600的示意性框图。
如图13所示,该客户端600可包括:
确定单元610,用于响应于目标对象针对电子书籍执行的阅读操作,确定客户端的缓冲存储器中存储的信息是否包括该电子书籍中各个章节的起始页面的页码;
第一获取单元620,用于在该客户端的缓冲存储器中存储的信息包括该各个章节的起始页面的页码的情况下,从该客户端的缓冲存储器获取该各个章节的起始页面的页码;
第二获取单元630,用于在该客户端的缓冲存储器中存储的信息不包括该各个章节的起始页面的页码的情况下,向服务器发送页码请求并接收该服务器发送的该页码请求的响应消息;该页码请求用于请求该各个章节的起始页面的页码,该页码请求的响应消息包括该各个章节的起始页面的页码;
显示单元640,用于在该客户端的显示屏上,显示该各个章节的起始页面的页码。
应理解,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,客户端600可以对应于执行本申请实施例的方法300或400中的相应主体,并且客户端600中的各个单元分别为了实现方法300或400中的相应流程,为了简洁,在此不再赘述。
还应理解,本申请实施例涉及的服务器500或客户端600中的各个单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现,甚至,这些功能也可以由一个或多个其它单元协助实现。例如,服务器500或客户端600中的部分或全部合并为一个或若干个另外的单元。再如,服务器500或客户端600中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。再如,服务器500或客户端600也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括例如中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的通用计算机的通用计算设备上运行能够执行相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造本申请实施例涉及的服务器500或客户端600,以及来实现本申请实施例的编码方法或解码方法。计算机程序可以记载于例如计算机可读存储介质上,并通过计算机可读存储介质装载于电子设备中,并在其中运行,来实现本申请实施例的相应方法。换言之,上文涉及的单元可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过软硬件结合的形式实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件组合执行完成。可选地,软件可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上文涉及的方法实施例中的步骤。
图14是本申请实施例提供的电子设备700的示意结构图。
如图14所示,该电子设备700至少包括处理器710以及计算机可读存储介质720。其中,处理器710以及计算机可读存储介质720可通过总线或者其它方式连接。计算机可读存储介质720用于存储计算机程序721,计算机程序721包括计算机指令,处理器710用于执行计算机可读存储介质720存储的计算机指令。处理器710是电子设备700的计算核心以及控制核心,其适于实现一条或多条计算机指令,具体适于加载并执行一条或多条计算机指令从而实现相应方法流程或相应功能。
作为示例,处理器710也可称为中央处理器(Central Processing Unit,CPU)。处理器710可以包括但不限于:通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立元件门或者晶体管逻辑器件、分立硬件组件等等。
作为示例,计算机可读存储介质720可以是高速RAM存储器,也可以是非不稳定的存储器(Non-VolatileMemory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器710的计算机可读存储介质。具体而言,计算机可读存储介质720包括但不限于:易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
如图14所示,该电子设备700还可以包括收发器730。
其中,处理器710可以控制该收发器730与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器730可以包括发射机和接收机。收发器730还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备700中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。值得注意的是,该电子设备700可以是任意一种具有数据处理能力的电子设备,例如可以是上文涉及的服务器500或客户端600。例如,该计算机可读存储介质720中存储有第一计算机指令;由处理器710加载并执行计算机可读存储介质720中存放的第一计算机指令,以实现本申请实施例提供的页码预测方法中的相应步骤;具体实现中,计算机可读存储介质720中的第一计算机指令由处理器710加载并执行相应步骤,为避免重复,此处不再赘述。再如,该计算机可读存储介质720中存储有第二计算机指令;由处理器710加载并执行计算机可读存储介质720中存放的第二计算机指令,以实现本申请实施例提供的页码显示方法中的相应步骤;具体实现中,计算机可读存储介质720中的第二计算机指令由处理器710加载并执行相应步骤,为避免重复,此处不再赘述。
根据本申请的另一方面,本申请实施例提供了一种芯片。该芯片可以是一种集成电路芯片,具有信号的处理能力,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。该芯片还可以称为系统级芯片,系统芯片,芯片系统或片上系统芯片等。该芯片可应用到各种能够安装芯片的电子设备中,使得安装有该芯片的设备能够执行本申请实施例中的公开的各方法或逻辑框图中的相应步骤。例如,该芯片可以是适于实现一条或多条计算机指令,具体适于加载并执行一条或多条计算机指令从而实现相应方法流程或相应功能。
根据本申请的另一方面,本申请实施例提供了一种计算机可读存储介质(Memory)。该计算机可读存储介质是计算机的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括计算机中的内置存储介质,当然,也可以包括计算机所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了电子设备的操作系统。该存储空间中存放了适于被处理器加载并执行的计算机指令,该计算机指令被计算机设备的处理器读取并执行时,使得计算机设备执行本申请实施例中的公开的各方法或逻辑框图中的相应步骤。
根据本申请的另一方面,本申请实施例提供了一种计算机程序产品或计算机程序。该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例中的公开的各方法或逻辑框图中的相应步骤。换言之,当使用软件实现本申请提供的方案时,可以全部或部分地以计算机程序产品或计算机程序的形式实现。该计算机程序产品或计算机程序包括一个或多个计算机指令。在计算机上加载和执行这些计算机程序指令时,全部或部分地运行本申请实施例的流程或实现本申请实施例的功能。
值得注意的是,本申请涉及的计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。本申请涉及的计算机指令可以存储在计算机可读存储介质中,或者可以从一个计算机可读存储介质向另一个计算机可读存储介质进行传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元以及流程步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。换言之,专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请所保护的范围。
最后需要说明的是,以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的基本思想,其同样应当视为本申请所公开的内容。
Claims (14)
1.一种页码预测方法,其特征在于,包括:
接收客户端发送的页码请求;所述页码请求用于请求电子书籍中各个章节的起始页面的页码;
响应于所述页码请求,确定服务器的缓冲存储器中存储的信息是否包括所述各个章节的起始页面的页码;
在所述服务器的缓冲存储器中存储的信息不包括所述各个章节的起始页面的页码的情况下,获取所述各个章节的特征向量;
其中,所述各个章节的特征向量包括服务器对所述各个章节的内容特征信息和所述各个章节的阅读特征信息进行向量化处理得到的向量;所述各个章节的内容特征信息包括所述服务器对所述各个章节的内容进行特征提取得到的特征信息,所述各个章节的阅读特征信息包括用于展示所述电子书籍的阅读应用程序的阅读配置信息和用于表征所述阅读应用程序的运行环境的信息;
基于所述各个章节的特征向量,利用页码预测模型预测所述各个章节的起始页面的页码;
向所述客户端发送所述页码请求的响应消息,所述页码请求的响应消息包括所述各个章节的起始页面的页码。
2.根据权利要求1所述的方法,其特征在于,所述获取所述各个章节的特征向量,包括:
在所述服务器的缓冲存储器存储的信息包括所述各个章节的特征向量的情况下,从所述服务器的缓冲存储器获取所述各个章节的特征向量。
3.根据权利要求1所述的方法,其特征在于,所述获取所述各个章节的特征向量,包括:
在所述服务器的缓冲存储器存储的信息不包括所述各个章节的特征向量的情况下,从所述客户端获取所述各个章节的阅读特征信息,并基于所述各个章节的内容提取所述各个章节的内容特征信息;
对所述各个章节的阅读特征信息和所述各个章节的内容特征信息进行向量化处理,得到所述各个章节的特征向量;
所述方法还包括:
将所述各个章节的特征向量存储至所述服务器的缓冲存储器。
4.根据权利要求3所述的方法,其特征在于,所述基于所述各个章节的内容提取所述各个章节的内容特征信息,包括:
将所述电子书籍的文件拆分为所述各个章节的子文件;
针对与页码相关的至少一个特征,基于所述各个章节的子文件统计所述至少一个特征中各个特征的数量,得到至少一个数值;
将所述至少一个数值,确定为所述各个章节的内容特征信息中的信息。
5.根据权利要求3所述的方法,其特征在于,所述对所述各个章节的阅读特征信息和所述各个章节的内容特征信息进行向量化处理,得到所述各个章节的特征向量,包括:
将所述各个章节的阅读特征信息中信息格式不是数值格式的信息转换为数值,并通过拼接转换得到的数值和所述各个章节的阅读特征信息中的数值,得到所述阅读特征信息的特征向量;
拼接所述各个章节的内容特征信息中的数值,得到所述内容特征信息的特征向量;
对所述阅读特征信息的特征向量和所述内容特征信息的特征向量进行特征融合,得到所述各个章节的融合向量;
对所述各个章节的融合向量进行归一化处理,得到所述各个章节的特征向量。
6.根据权利要求1所述的方法,其特征在于,所述页码预测模型包括串联的至少一个第一类连接层和在所述至少一个第一类连接层之后串联的至少一个第二类连接层;所述至少一个第一类连接层为多个第一类连接层时,所述第一类连接层中神经元的数量按照所述至少一个第一类连接层的连接顺序递增至预设值;所述至少一个第二类连接层为多个第二类连接层时,所述第二类连接层中神经元的数量按照所述多个第二类连接层的连接顺序由所述预设值递减至1;
其中,所述基于所述各个章节的特征向量,利用页码预测模型预测所述各个章节的起始页面的页码,包括:
利用所述至少一个第一类连接层,对所述各个章节的特征向量进行特征提取,得到中间向量;
利用所述至少一个第二类连接层,对所述中间向量进行特征提取,得到预测值;
将所述预测值,确定为所述各个章节的起始页面的页码。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述服务器的缓冲存储器中存储的信息包括所述各个章节的起始页面的页码的情况下,从所述服务器的缓冲存储器获取所述各个章节的起始页面的页码,并向所述客户端发送所述页码请求的响应消息。
8.根据权利要求1所述的方法,其特征在于,所述利用页码预测模型预测所述各个章节的起始页面的页码之后,所述方法还包括:
将所述各个章节的起始页面的页码存储到所述服务器的缓冲存储器。
9.根据权利要求8所述的方法,其特征在于,所述将所述各个章节的起始页面的页码存储到所述服务器的缓冲存储器,包括:
在所述电子书籍满足将所述各个章节的起始页面的页码存储到所述服务器的缓冲存储器的存储条件的情况下,则将所述各个章节的起始页面的页码存储到所述服务器的缓冲存储器。
10.一种页码显示方法,其特征在于,包括:
响应于目标对象针对电子书籍执行的阅读操作,确定客户端的缓冲存储器中存储的信息是否包括所述电子书籍中各个章节的起始页面的页码;
在所述客户端的缓冲存储器中存储的信息包括所述各个章节的起始页面的页码的情况下,从所述客户端的缓冲存储器获取所述各个章节的起始页面的页码;
在所述客户端的缓冲存储器中存储的信息不包括所述各个章节的起始页面的页码的情况下,向服务器发送页码请求并接收所述服务器发送的所述页码请求的响应消息;所述页码请求用于请求所述各个章节的起始页面的页码,所述页码请求的响应消息包括所述各个章节的起始页面的页码;
在所述客户端的显示屏上,显示所述各个章节的起始页面的页码。
11.一种服务器,其特征在于,包括:
接收单元,用于接收客户端发送的页码请求;所述页码请求用于请求电子书籍中各个章节的起始页面的页码;
确定单元,用于响应于所述页码请求,确定服务器的缓冲存储器中存储的信息是否包括所述各个章节的起始页面的页码;
获取单元,用于在所述服务器的缓冲存储器中存储的信息不包括所述各个章节的起始页面的页码的情况下,获取所述各个章节的特征向量;
其中,所述各个章节的特征向量包括服务器对所述各个章节的内容特征信息和所述各个章节的阅读特征信息进行向量化处理得到的向量;所述各个章节的内容特征信息包括所述服务器对所述各个章节的内容进行特征提取得到的特征信息,所述各个章节的阅读特征信息包括用于展示所述电子书籍的阅读应用程序的阅读配置信息和用于表征所述阅读应用程序的运行环境的信息;
预测单元,用于基于所述各个章节的特征向量,利用页码预测模型预测所述各个章节的起始页面的页码;
发送单元,用于向所述客户端发送所述页码请求的响应消息,所述页码请求的响应消息包括所述各个章节的起始页面的页码。
12.一种客户端,其特征在于,包括:
确定单元,用于响应于目标对象针对电子书籍执行的阅读操作,确定客户端的缓冲存储器中存储的信息是否包括所述电子书籍中各个章节的起始页面的页码;
第一获取单元,用于在所述客户端的缓冲存储器中存储的信息包括所述各个章节的起始页面的页码的情况下,从所述客户端的缓冲存储器获取所述各个章节的起始页面的页码;
第二获取单元,用于在所述客户端的缓冲存储器中存储的信息不包括所述各个章节的起始页面的页码的情况下,向服务器发送页码请求并接收所述服务器发送的所述页码请求的响应消息;所述页码请求用于请求所述各个章节的起始页面的页码,所述页码请求的响应消息包括所述各个章节的起始页面的页码;
显示单元,用于在所述客户端的显示屏上,显示所述各个章节的起始页面的页码。
13.一种电子设备,其特征在于,包括:
处理器,适于执行计算机程序;
计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被所述处理器执行时,实现权利要求1至9中任一项所述的方法或权利要求10所述的方法。
14.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行权利要求1至9中任一项所述的方法或权利要求10所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311060680.1A CN116795475B (zh) | 2023-08-22 | 2023-08-22 | 页码预测方法、页码显示方法、服务器以及客户端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311060680.1A CN116795475B (zh) | 2023-08-22 | 2023-08-22 | 页码预测方法、页码显示方法、服务器以及客户端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116795475A true CN116795475A (zh) | 2023-09-22 |
CN116795475B CN116795475B (zh) | 2023-11-21 |
Family
ID=88046209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311060680.1A Active CN116795475B (zh) | 2023-08-22 | 2023-08-22 | 页码预测方法、页码显示方法、服务器以及客户端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116795475B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090008747A (ko) * | 2007-07-18 | 2009-01-22 | 에스케이 텔레콤주식회사 | 전자책에서의 텍스트 변경으로 컨텐츠 리포맷팅 및 페이지수의 재산출을 위한 방법, 및 이에 적용되는 장치 |
CN102346730A (zh) * | 2010-07-30 | 2012-02-08 | 汉王科技股份有限公司 | 电子阅读器中显示目录的方法和装置 |
KR20120131911A (ko) * | 2011-05-27 | 2012-12-05 | 주식회사 네오위즈인터넷 | 전자책 사용자 인터페이스를 제공하기 위한 전자책 시스템, 방법 및 기록매체 |
CN102902661A (zh) * | 2012-10-24 | 2013-01-30 | 广东欧珀移动通信有限公司 | 一种实现电子书超链接的方法 |
KR20130131820A (ko) * | 2012-05-24 | 2013-12-04 | 리아컴즈 주식회사 | 전자책에서 책의 내용을 고속 탐색하는 기술 |
JP2014063228A (ja) * | 2012-09-19 | 2014-04-10 | Sharp Corp | 表示装置、およびプログラム |
CN107045549A (zh) * | 2017-04-25 | 2017-08-15 | 网易(杭州)网络有限公司 | 一种电子书页数获取方法和装置 |
CN113741763A (zh) * | 2021-07-22 | 2021-12-03 | 咪咕数字传媒有限公司 | 电子书的显示方法、装置及电子设备 |
-
2023
- 2023-08-22 CN CN202311060680.1A patent/CN116795475B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090008747A (ko) * | 2007-07-18 | 2009-01-22 | 에스케이 텔레콤주식회사 | 전자책에서의 텍스트 변경으로 컨텐츠 리포맷팅 및 페이지수의 재산출을 위한 방법, 및 이에 적용되는 장치 |
CN102346730A (zh) * | 2010-07-30 | 2012-02-08 | 汉王科技股份有限公司 | 电子阅读器中显示目录的方法和装置 |
KR20120131911A (ko) * | 2011-05-27 | 2012-12-05 | 주식회사 네오위즈인터넷 | 전자책 사용자 인터페이스를 제공하기 위한 전자책 시스템, 방법 및 기록매체 |
KR20130131820A (ko) * | 2012-05-24 | 2013-12-04 | 리아컴즈 주식회사 | 전자책에서 책의 내용을 고속 탐색하는 기술 |
JP2014063228A (ja) * | 2012-09-19 | 2014-04-10 | Sharp Corp | 表示装置、およびプログラム |
CN102902661A (zh) * | 2012-10-24 | 2013-01-30 | 广东欧珀移动通信有限公司 | 一种实现电子书超链接的方法 |
CN107045549A (zh) * | 2017-04-25 | 2017-08-15 | 网易(杭州)网络有限公司 | 一种电子书页数获取方法和装置 |
CN113741763A (zh) * | 2021-07-22 | 2021-12-03 | 咪咕数字传媒有限公司 | 电子书的显示方法、装置及电子设备 |
Non-Patent Citations (1)
Title |
---|
高良才 等;: "一种基于聚类技术的图书目录识别方法", 北京大学学报(自然科学版), vol. 46, no. 04, pages 531 - 538 * |
Also Published As
Publication number | Publication date |
---|---|
CN116795475B (zh) | 2023-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10289649B2 (en) | Webpage advertisement interception method, device and browser | |
US8707164B2 (en) | Integrated document viewer | |
CN111666766B (zh) | 数据处理方法、装置和设备 | |
JP2018156473A (ja) | 解析装置、解析方法、およびプログラム | |
KR102335780B1 (ko) | 다수의 플랫폼 서버들을 이용하는 인플루언서를 활용한 온라인 광고 방법 및 온라인 광고 시스템 | |
CN112052364B (zh) | 敏感信息检测方法、装置、设备与计算机可读存储介质 | |
Xu et al. | Dual attention network for product compatibility and function satisfiability analysis | |
CN115544560A (zh) | 一种敏感信息的脱敏方法、装置、计算机设备及存储介质 | |
CN109948085A (zh) | 浏览器内核初始化方法、装置、计算设备和存储介质 | |
KR20180035477A (ko) | 전자문서의 대표 단어 선정 방법, 전자 문서 제공 방법, 및 이를 수행하는 컴퓨팅 시스템 | |
CN114282528A (zh) | 一种关键词提取方法、装置、设备及存储介质 | |
CN116795475B (zh) | 页码预测方法、页码显示方法、服务器以及客户端 | |
CN113010771A (zh) | 搜索引擎中的个性化语义向量模型的训练方法及装置 | |
JP6560843B1 (ja) | 検索システム、検索方法、及びプログラム | |
CN113590813B (zh) | 文本分类方法、推荐方法、装置及电子设备 | |
JP2024507029A (ja) | ウェブページ識別方法、装置、電子機器、媒体およびコンピュータプログラム | |
CN114595309A (zh) | 一种培训装置实现方法及系统 | |
US11620102B1 (en) | Voice navigation for network-connected device browsers | |
CN114328894A (zh) | 文档处理方法、装置、电子设备及介质 | |
CN112287159A (zh) | 检索方法、电子设备及计算机可读介质 | |
CN116541719A (zh) | 一种信息匹配方法、装置、设备及存储介质、程序产品 | |
Jach | Web Scraping Methods Used in Predicting Real Estate Prices | |
US20160026632A1 (en) | Seniority standardization model | |
CN116070043A (zh) | 一种搜索结果展示方法、装置、计算机设备及存储介质 | |
Chen et al. | Expert2Vec: distributed expert representation learning in question answering community |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40091958 Country of ref document: HK |