智慧图书馆中的智能问答应用研究

2024-07-15 00:00:00吴承颖
科技资讯 2024年9期

摘要:传统图书馆的咨询服务中,图书馆员及读者都浪费大量的时间和精力在沟通问答上,业务量大及问题重复等原因使得这种服务模式无法为读者提供有效的问答服务,为此需要有一种智能问答服务来减轻图书馆员的工作负担。图书馆中应用智能问答能够解决海量信息与用户特定需求之间的矛盾,在快速获取目标内容、节省时间的同时满足用户对高质量信息的需要。

关键词:智慧图书馆智能问答知识库阅读体验

中图分类号:G250.7

ResearchontheApplicationofIntelligentQuestionsandAnswersinSmartLibraries

WUChengying

(SanmingLibrary,Sanming,FujianProvince,353000China)

Abstract:Inthetraditionalconsultingservicesoflibraries,bothlibrariansandreaderswastealotoftimeandenergyoncommunicatingquestionsandanswers,andthisservicemodelcannotprovideeffectivequestionandanswerservicesforreadersduetothelargevolumeofbusinessandrepetitivequestions,soanintelligentquestionandanswerserviceisneededtoreducetheworkloadoflibrarians.Theapplicationofintelligentquestionsandanswersinlibrariescansolvethecontradictionbetweenmassiveinformationandspecificuserneeds,whichmeetstheneedsofusersforhigh-qualityinformationwhilequicklyobtainingtargetcontentandsavingtime.

KeyWords:Smartlibrary;Intelligentquestionsandanswers;Knowledgebase;Readingexperience

随着人工智能、聊天生成式预训练模型(ChatGenerativePre-trainedTransformer,ChatGPT)等技术的发展,图书馆服务的智慧化是其发展的必然结果。学校与公共图书馆要实现智能化发展首先需要改变传统的人工服务台咨询模式,从人工问答转变到智能问答甚至是个性化咨询。智能问答模拟一个能够与读者进行对话的人机交互界面,有针对性地回答读者提出的问题,在了解用户咨询内容的前提下满足读者随时随地的咨询需求,能够有效提升读者满意度。要在智慧图书馆中应用智能问答,需要从不同的数据源构建知识库[1],并构建一个面向知识库的智能问答。

1知识库构建

作为图书馆问答服务的基础,读者咨询的对象主要是纸质图书、文献及索引等图书馆馆藏,而且很多咨询的问题都符合固定的模式,如某某书的存放位置等。图书馆累积了大量诸如此类规律性、高重复性并且有价值的咨询记录,这些咨询记录的来源不仅仅限于现场咨询记录,也包括图书馆网页的在线留言、电话访问、邮件咨询、微信公众号等[2],可以将这些不同来源的咨询记录集中存储,并经过一定的加工处理后重组成知识单元,以此构建一个核心问题库。

在分析智能问答领域的知识库后,本文汇总上述咨询来源的数据并分析常见及重复率较高的读者咨询问题,将所有的问题库划分成不同类别,问题库的设置是为了适应多种数据源的语料,对于每个咨询的问题及答案都支持多种提问方式。另外,问题库中语料还具备不同的优先级,如果读者咨询的问题是高频常见问题则将其放入标准化问答列表[3];如果问题虽然已经在标准列表中,但是读者的提问方式不符合任何语料来源导致系统无法识别,则将这种提问方式增加到提问模式中;如果问题不在问答列表中而且提问方式也不常见,则由图书馆工作人员进行补充回答;通过上述方式即可利用知识库实现智能问答。

领域知识库的质量对智慧图书馆的智能问答效果影响很大,由于不同知识领域有其专门的专有名词、表达方式,因此构建一个高质量的领域知识库不仅仅是基于常见问题解答(Frequently-AskedQuestions,FAQ)进行简单的数据整合。整个构建过程包括获取大量咨询问答记录、数据预处理、识别并聚合关键词、分词标注并构建领域字典等[4]。

2面向知识库的智能问答

智慧图书馆智能问答系统的作用是在读者输入查询词句后,可以利用后台的人工智能算法自动为读者返回比较精确的咨询结果。读者的输入可能是口语化的,而且读者咨询的目标信息可能保存在结构化或非结构化数据中,这样一来智能问答的“智能”水平就取决于问答模型。

智能问答环节涉及知识库、读者输入的问题、问题处理、答案抽取及输出等部分,其核心是知识推理,也就是将问题和答案进行正确的匹配。问答模型主要包括用户输入模块、问题处理模块、答案抽取模块以及输出模块[5]。其中用户输入模块用于用户输入提问信息;问题处理模块的作用是对用户提问信息进行自然语言处理,并进行问题分类;答案抽取模块主要作用是从领域知识库中抽取对应答案。面向知识库的智能问答模型如图1所示。

输入问题经过预处理后需要整合成规范格式的训练数据,也就是问题训练库。用户输入的问题语料一般具有不确定性,对其进行自然语言处理时需要先进行分词,并借助自然语言规则完成词性标记和识别。分词后需要对单词进行嵌入处理,在经过单词向量化后方便程序理解其意思。问题处理的过程就是对用户语料进行自然语言处理的过程,智能问答基于自然语言处理技术,将由单词、短语甚至句子组成的特定问题计算机化,使程序深入理解用户意图,进而以接近于人的语言习惯回答用户问题。问题处理的主要步骤包括如下。

(1)分词。分词是将用户输入的问题按照一定规则进行拆分,拆分后的每一部分都可以单独处理。由于人的自然语言存在一词多义、一义多词以及派生词等现象,因此需要借助分词这一手段进行合理划分才可以为后续索引建立良好的基础。(2)标注词性。分词完毕的每一部分都需要指定词性,以便区分名词、动词、形容词以及副词等;词性标注有助于理解同一词汇在上下文的不同意思。(3)停用词删除。一句话中可能会有一些常见的无意义的词,比如语气助词、连接词等,这些词汇没有实际意义,对于理解用户的实际语义并无帮助,需要将这些词汇删除。(4)问题分类。根据用户问题的特征可以将其分配到一组预定义的类别,这种以问题为中心的信息检索方式将问题的焦点放到其搜索属性或实体上。

问题处理完毕后就进入答案抽取环节,也就是将提取出的信息检索结果呈现为答案。问题答案并不是简单的内容匹配,而是根据问题类型以及问题的语义信息从相关知识库中检索得到的,在用户问题和知识库中的预定义之间进行推断,缩小答案范围后得到相似答案集合。对所有答案进行排序后将最佳答案反馈给用户。

3智能问答系统的实现

智能问答系统的功能是帮助图书馆工作人员回答读者的问题,而问答库的建立需要先对所有问题进行预处理,主要的处理步骤是去噪、分词、停用词过滤以及关键词提取。接下来主要介绍智能问答系统的预处理模块、关键词扩展模块、答案抽取模块等模块的实现。

3.1预处理

预处理的主要流程包括:文本去噪—语句分词(自定义词典)—停用词过滤(停用词表)—关键词提取。

用户提出的问题中可能会包含一些无意义或非文本信息,这些噪声信息对于智能问答没有作用甚至会有副作用,因此问题处理的第一步就是去除问题中的噪声信息。本文采用Python语言自带的re正则匹配模块提取问题字符串中需要的内容。汉语的词汇之间并不像英文那样有空格作为分隔符,这就需要在对汉字序列组成的问题处理前将其分成一个个的词汇,这一操作就是分词。目前成熟的分词算法主要是基于字符串匹配的分词方法、基于理解的分词方法以及基于统计的分词方法。本文在对不同分词工具进行比较分析后选择使用jieba分词工具,此工具能够较好地满足智能问答系统的需求。分词过后的停用词过滤方面,本文参考了自然语言处理中使用广泛的“百度停用词表”以及“哈工大停用词表”,并在此基础上根据智能问答系统以及图书馆领域的实际需要添加和删除了部分词汇,并在停用词过滤后使用朴素贝叶斯算法进行拼写检查。

本文采用TF-IDF算法提取用户问题中的关键词。TF(TermFrequency)即为某词汇在用户问题中出现的频率,称为词频;IDF(InverseDocumentFrequency)表示某词汇在问答库中出现的频率,称为逆文档频率。用户问题中所有词汇的TF-IDF值计算完毕后对其进行排序,值最大的被认为是用户问题的关键词。

3.2 关键词扩展

问答库中的问题预处理完毕后,由于用户问题中的关键词不一定与问题库中问题的关键词完全一致,因此在使用这些预处理数据前还需要进行关键词的扩展。例如,用户提出的问题“有没有适合小孩看的图书?”,在这个问题中“小孩”和词汇“儿童”“幼儿”有近似含义,如果不进行关键词的扩展则问题库中的问题及答案就不能很好地匹配到用户问题。常见的关键词扩展方法有基于同义词词典的扩展方法以及基于词向量的扩展方法,由于基于同义词词典的关键词扩展方法需要预先创建同义词词典,而几乎难以覆盖所有的同义词,因此本文使用word2vec工具进行关键词扩展。

3.3答案抽取

问答库中问答对的内容及个数不是一成不变的,因此在保存问答对时并不是存储为文本文件的形式,而是将数据按照一定格式存放在数据库中,这样就可以方便地对问答对数据进行增、删、改、查操作。在读者提出咨询问题后,将用户问题和数据库中的问答对进行相似度计算,并进行最终的答案抽取。

计算相似度时需要先对用户问题进行向量化表示,然后对用户问题进行关键词扩展,找到问题关键词的同义词,然后选择余弦相似度来计算用户问题和问答库中问题句子间的相似度;相似度计算完毕后将满足阈值的问题及其答案返回给用户即可。

4结语

本文对智慧图书馆中的智能问答应用进行研究。首先,分析了智慧图书馆中应用智能问答的基础——领域知识库的构建,并阐述了面向知识库构建智能问答模型,最后说明了智能问答系统实现过程中的一些细节,包括问题预处理、关键词扩展以及答案抽取等。智能图书馆中的智能问答应用能够自动回答读者的咨询问题,减轻图书馆工作人员的负担,提高读者的阅读体验。

参考文献

[1]钱彦,梅影.从理念到实践:生成式人工智能在智慧图书馆中的应用探索[J].图书馆研究与工作,2023(12):27-34.

[2]尧迟月.人工智能时代图书馆智慧阅读推广服务实践分析和启示[J].图书馆研究,2023(11):11-18.

[3] 楼纪洋.“第二个结合”视域下的中华优秀传统文化“两创”路径研究[D].长春:吉林大学,2023.

[4]林丽.公共服务属性与供给机制选择[D].长春:吉林大学,2023.

[5]王翼虎,白海燕,孟旭阳.大语言模型在图书馆参考咨询服务中的智能化实践探索[J].情报理论与实践,2023(6):96-103.