基于 Python 的电信领域电信领域设计与实现-毕业设计程序

一、课题内容及研究意义

随着互联网的发展,上网人数越来越多,电信业务也随之增加。,然而就出现客服难以应付如此庞大的业务咨询量,电信领域自动问答软件就很好的解决了这个问题。在这样一个大数据时代,人们对于信息获取量和需求也不断增加。而现在的网络技术已经非常成熟了很多年,而且由于其方便性等特点受到许多用户尤其是年轻人青睐基于此背景下研究如何使更具有个性化、高效性以及针对型这三大特征来吸引他们主动参与到电信领域中去就更加有意义。随着AI的发展,各大企业采用智能问答机器人取代了人工客服

而基于AI人工智能魔塔模型的自动问答则是对在线人工问答的重要补充,不仅可以降低问答数据的冗余性,而且还可以提高搜索结果的准确性,更加高效的满足学生问答需求。智能问答在电信领域的应用——程序设计类电信领域,无疑是一项在电信领域的业务咨询的重要应用创新。

本课题要求在现有Python 语言电信领域自动问答平台的基础上,基于电信领域设计并实现一个自动问答软件,该系统用于为Python 语言电信领域自动问答平台为客户提供自动问答服务提高工作效率,可以大大减轻人工客服在答疑环节中付出的重复劳动。其中,该系统包括通过从网络中收集程序设计类问答文本并通过魔塔模型(ModelScope),ModelScope语义匹配-预训练语言模型文本检索模块进行AI智能问答的模块。本课题需要实现的功能需求包括:

1. 魔塔模型模块

本课题的魔塔模型由文本检索和文本相似度两部分组成。文本相似度可以采用pipeline()方法是ModelScope框架上最基础的用户方法之一,可对多领域的多种模型进行快速推理。通过pipeline()方法,用户可以只需要一行代码即可完成对特定任务的模型推理。进行自动答疑。程序设计类文本检索则需要自己建立,方法是从数据库中进行文本检索程序设计类问答文本,从中检索文本进行比对,建立程序设计类算法模型。

2. Chat 聊天模块

使用Chat 聊天模块通过文本检索和进行相似度匹配,相似度最高的答案作为最终答案。

、国内外相关研究情况

1. 自然语言处理

自然语言处理(Natural Language Processing,即NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究的是实现人与计算机之间用自然语言进行有效通信的各种理论和方法,探讨如何处理及运用自然语言,特别是如何编程计算机以成功处理大量的自然语言数据[1]。

自然语言处理的目标是计算机能学习、理解并能够生成人的语言,实现智能处理的效果。伴随着移动互联网技术、机器学习和深度学习技术的发展,以及数据资源的积累和并行计算能力的提升,自然语言处理的研究方法也发生了巨大的变化,已经在语音和图像的识别领域取得了显著的成果。早期自然语言处理的研究方向是基于语言规则的, 主要受短语生成语法的影响,通过对语言结构进行分析,以达到用语法规则约束语言计算的目的,其方法的本质是模式匹配。这种方法在机器翻译、语音识别和语音合成等应用领域都有所尝试,在自然语言处理早期研究中发挥了较为显著的作用。随着机器学习方法突飞猛进的发展,特别是深度学习技术的蓬勃发展和广泛应用,研究者根据现实世界中巨大的应用需求,借助并充分运用了先进的机器学习方法,在机器翻译、话语对话系统、社会媒体挖掘、情感分析等任务中取得了突破性进展。自然语言处理的进展为人类理解语言生成机制和受其启发而开发出更多的社会应用提供了广阔途径,具有重要意义。

随着自然语言处理技术的发展,一批自然语言处理的工具包随之产生,例如:Stanford CoreNLP、HanLP等。Stanford CoreNLP是斯坦福大学的自然语言处理工具包,目前已经支持多种语言的处理。Stanford CoreNLP主要功能包括分词、词性标注、命名实体识别、句法结构分析和依存分析等等。HanLP是一系列模型与算法组成的NLP工具包,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点[2]。

2. 自动问答技术

自动问答是自然语言处理领域的一个重要方向,旨在让用户直接用自然语言提问并获得答案。从用户的角度看,自动问答是一种简单且简洁的信息获取方法。用户直接用自然语言与问答系统交互,而无需考虑使用什么样的关键词组合表示自己的意图,所以简单;问答系统直接返回问题的答案,用户无需从冗长的相关文档中自己寻找答案内容,所以简洁[3]-[6]。

自动问答系统正逐渐成为一种人与机器进行自然交互的新趋势,能够更准确地理解以自然语言描述的用户问题,并依据用户的真实意图返回给用户更精准的答案,它将成为下一代搜索引擎的新形态。问答系统的传统数据答案来源包括网页文档、搜索引擎、百科描述、问答社区等非结构化文本数据[7]-[12]。

3. 知识图谱技术

随着大数据和知识工程的发展,通过信息抽取、知识加工等技术将非结构化数据构建为知识图谱,使得海量数据能够更好地以结构化、关联化的接近人类认知的消息形式被组织、管理和理解。因此,知识图谱(Knowledge Graph)概念的提出,致使近年来学术界和工业界将自动问答系统的研究热点转移到基于知识图谱的自动问答系统的研究和应用方向上[13]-[15]。基于知识图谱的自动问答系统就是以知识图谱作为答案来源的问答系统,知识图谱能够在精准化问答服务中起到关键作用,使得数据更好地以接近人类认知的形式被组织和理解,能够在精准化问答服务中起到关键作用。在越来越多的行业领域中,知识图谱已经作为一种基础数据服务被广泛地应用,为上层智能应用提供基础设施支撑[16]-[19]。

SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。

Django,Django是一个开源的Python Web应用框架,采用了 MVT的框架模式,即模型M,视图V和模版T ,最早于2005年发布。Django被认为是"大而全"的重量级Web框架,其自带大量的常用工具和组件(比如数据库ORM组件、用户认证、权限管理、分页、缓存), 甚至还自带了管理后台Admin,适合快速开发功能完善的企业级网站。 Django自带免费的数据SQLite,同时支持MySQL与PostgreSQL等多种数据库。 Flask和Django均是当今最流行的Python Web框架。

魔塔模型(ModelScope),ModelScope语义匹配-预训练语言模型文本检索,ModelScope 是开源的模型即服务共享平台,为泛 AI 开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!在这里你可以免费体验训练模型,同时一行命令实现模型预测,快速验证模型效果,同时也可以定制自己的个性化的模型。

4. Python语言

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。Python在人工智能大范畴领域内的机器学习、神经网络、深度学习等方面都是主流的编程语言,得到广泛的支持和应用。比如:基于Python的Web开发框架不要太多,比如耳熟能详的Django,还有Tornado,Flask。其中的Python+Django架构,应用范围非常广,开发速度非常快,学习门槛也很低,能够帮助你快速的搭建起可用的WEB服务。由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。众多开源的科学计算软件包都提供了Python的调用接口,例如著名的计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库ITK。而Python专用的科学计算扩展库就更多了,例如如下3个十分经典的科学计算扩展库:NumPy、SciPy和matplotlib,它们分别为Python提供了快速数组处理、数值运算以及绘图功能。因此Python语言及其众多的扩展库所构成的开发环境十分适合工程技术、科研人员处理实验数据、制作图表,甚至开发科学计算应用程序。

、研究方案、研究方法或措施

本系统前端部分采用HTML、CSS编写静态页面,Bootstrap、jQuery实现页面交互与动画,后端部分在Ubuntu14.4下采用Django3.2框架部署。该部分用于获取前端问题,并传递给后端。

本问答系统将采用多个知识库回答问题,包括通用知识库和专用知识库。通用知识库可以采用CN-DBPedia(中文通用百科知识图谱)的三元组进行自动答疑。程序设计类专用知识库则需要自己建立,方法是从网络中(如知乎平台)收集程序设计类问答文本,从中抽取三元组,建立程序设计类知识库。

后端将对获取所得问题进行处理,分析问句的类型,例如:Dual Encoder文本表示模型、模型的推理Pipeline等。不同类型的问句将采用采用算法模型利用知识图谱进行自动答疑,采用问句相似度匹配的方法进行自动问答。

该系统自动问答过程的流程图如下图所示:

、进度计划

第一阶段:阅读文献,学习和使用自然语言处理技术,自动问答技术方法,知识图谱,Python、Django、Sqlite、魔塔模型(ModelScope)语言等相关技术;(2周)

第二阶段:软件总体设计(1周)

第三阶段:软件详细设计与实现(4周)

第四阶段:软件测试(2周)

第五阶段:书写软件说明书,并完成毕业论文的初稿;(4周)

第六阶段:完成毕业论文及答辩PPT,准备答辩。(2周)

、参考文献

[1] Bast, H., & Haussmann, E. (2015, October). More accurate question answering on freebase. In Proceedings of the 24th ACM International on Conference on Information and Knowledge Management (pp. 1431-1440). ACM..

[2] Manning C D, Surdeanu M, Bauer J, et al. The Stanford CoreNLP natural language processing toolkit. ACL2014: 55-60.

[3]Véronique Moriceau. Generating intelligent numerical answers in a question-answering system[J].  2006.

[4]Najmi E, Hashmi K, Khazalah F, et al. Intelligent semantic question answering system[C]// IEEE International Conference on Cybernetics. IEEE, 2013.

[5]Yunjuan L, Lijun Z, Lijuan M, et al. Research and application of information retrieval techniques in Intelligent Question Answering System[C]// International Conference on Computer Research & Development. IEEE, 2011.

[6]Hai-Yanschool K, Beijing M, University T, et al. Study on Intelligent Question-answering System of Restricted Field[J]. Journal of Xihua University(Natural Science Edition), 2008, 27:37-41.

[7] 史忠植. 人工智能[M]. 北京: 机械工业出版社, 2001。

[8] 王肖磊. 自动问答系统的研究与应用[D].北京邮电大学,2015

[9] 郭天翼, 彭敏, 伊穆兰, 毛文月,胡星灿,魏格格.自然语言处理领域中的自动问答研究进展[J].武汉大学学报(理学版), 2019,05,417-426,10.14188/j.1671-8836.2019.05

[10] 王正华,韩永国.自动问答系统设计与实现[J].软件导刊,2014,13(09):111-113.

[11] 徐成章. 基于Word2vec的中文Web智能问答系统的研究与设计[D].电子科技大学,2018.

[12] 郑实福, 刘挺, 秦兵, 等. 自动问答综述[J]. 中文信息学报, 2002, 16(6): 47-53.

[13] Xu, B., Xu, Y., Liang, J., Xie, C., Liang, B., Cui, W., & Xiao, Y. (2017, June). Cn-dbpedia: A never-ending chinese knowledge extraction system. In International Conference on Industrial, Engineering and Other Applications of Applied Intelligent Systems (pp. 428-438). Springer, Cham..

[14] Huang, X., Zhang, J., Li, D., & Li, P. (2019, January). Knowledge graph embedding based question answering. In Proceedings of the Twelfth ACM International Conference on Web Search and Data Mining (pp. 105-113). ACM.

[15] Qian, Y., Santus, E., Jin, Z., Guo, J., & Barzilay, R. (2018). GraphIE: A graph-based framework for information extraction. arXiv preprint arXiv:1810.13083.

[16] 饶竹一, 张云翔. 基于知识图谱的智能客服系统研究[J]. 电力信息余通信技术, 2017,07,41-45,10.16543/j.2095-641x.electric.power.ict.2017

[17] 张崇宇. 基于知识图谱的自动问答系统的应用研究与实现[D].北京邮电大学,2019

[18] 杜永萍, 黄萱菁, 吴立德. 模式学习在QA系统中的有效实现[J]. 计算机研究与发展, 2015, 43(3): 449-455.

[19] Russell, S.J., Norvig, P. 人工智能, 一种现代的方法[M]. 第3版. 北京: 清华大学出版社, 2013.

关键代码

#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
import os
import sys


def main():
    """Run administrative tasks."""
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'xy_dianxin.settings')
    try:
        from django.core.management import execute_from_command_line
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    execute_from_command_line(sys.argv)


if __name__ == '__main__':
    main()

# 环境安装
- python=3.7+
- Django = 3.2.7

# 安装方法
- pip install -r requests.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
- pip install "modelscope[nlp]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html -i https://mirrors.aliyun.com/pypi/simple
- python manage.py runserver 
- 浏览器打开 http://127.0.0.1:8000/
- 管理员浏览器打开 http://127.0.0.1:8000/admin
- 管理员账号密码: manage createsuperuser

基于 Python 的电信领域电信领域设计与实现

如有需要请看主页

JAVA 毕设帮助,指导,源码分享,调试部署
如有需要请私信联系哦
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值