基于知识图谱的鱼类病害防治知识管理系统的设计与实现论文

收藏关注不迷路


一、摘 要

摘 要:
该系统使用语义web技术构建了一个鱼类病害本体库,并将其与已有的鱼类病害数据库进行整合。通过分析和抽取这些数据资源,系统能够将不同源头的信息进行自动化融合和处理。同时,系统还提供了智能问答、信息检索、知识推理等功能,以帮助用户更好地利用鱼类病害预防和治疗相关知识。因此,该系统具备了高效、准确、智能化的特点,可以为鱼类养殖业提供重要的技术支持。
知识图谱技术涉及自然语言处理、图数据库、机器学习等各领域知识,适用于金融反欺诈、信息检索等多种场景。需要合理安排各领域知识,通过具体场景的应用实例进行教学。通过具体的应用场景带入,讲述基本的数据处理技巧、知识图谱的构建更新技巧、知识图谱的存储方式以及知识图谱的基础应用方法。通过具体案例引入知识图谱的概念, 针对该案例讲述每一步骤的处理方式,从而达到农民能够生动形象的了解知识图谱的概念和应用技巧。
针对数据处理部分,通过具体场景的数据集分析该数据集所存在的问题,可能存在的问题包括但不限于关键值为空、重复数据和特征数据选取。针对每一个问题,给出相关解决方案,也可以安排农民自主讨论问题解决方案。利用处理后的数据,构建知识图谱并将该图谱进行存储,可通过图数据库如 Neo4j 构建和存储数据,

【关键词】 知识图谱 Neo4j 鱼类病害防治

Knowledge management system for fish disease control based on knowledge map

Major name

[Abstract]
The system uses semantic web technology to construct a fish disease ontology database and integrates it with the existing fish disease database. By analyzing and extracting these data resources, the system can automatically integrate and process the information from different sources. At the same time, the system also provides intelligent question and answer, information retrieval, knowledge reasoning and other functions to help users better use the knowledge related to fish disease prevention and treatment. Therefore, the system has the characteristics of high efficiency, accuracy and intelligence, which can provide important technical support for fish culture industry.
Knowledge graph technology involves natural language processing, graph database, machine learning and other fields of knowledge, and is suitable for financial anti-fraud, information retrieval and other scenarios. It is necessary to arrange knowledge in various fields reasonably and teach through application examples in specific scenarios. This paper introduces basic data processing skills, construction and update skills of knowledge graph, storage mode of knowledge graph and basic application methods of knowledge graph through specific application scenarios. The concept of knowledge map is introduced through a specific case, and the processing methods of each step are described according to the case, so that farmers can vividly understand the concept and application skills of knowledge map.
For the part of data processing, problems existing in the data set are analyzed through the data set of specific scenarios. Possible problems include but are not limited to null key values, duplicate data and feature data selection. For each problem, the relevant solution is given, and farmers can also be arranged to discuss the solution of the problem. Using the processed data, the knowledge map is constructed and stored. Data can be constructed and stored through the graph database such as Neo4j…
[Key words] Neo4j ;Fundamentals of Information Security Mathematics;Knowledge Graph;

二、目 录

目 录
1 引言 1
1.1 研究背景及意义 1
1.2 国内外研究现状 1
2 项目概述 3
2.1 项目背景 3
2.2 项目可行性分析 3
2.3 相关技术、工具简介 4
2.3.1 SpringBoot框架技术 4
2.3.2 Bootstrap框架技术 4
2.3.3 Python开发工具 4
2.3.4 Mysql5.7数据库 4
2.3.5 Neo4j-community-3.4.0图数据库 4
3 知识图谱介绍 5
3.1 知识图谱定义 5
3.2 知识图谱架构 5
3.3 业务流程需求分析 6
3.3.1 系统登录需求分析 6
3.2.2 图谱流程需求分析 7
3.3 需求分析 7
3.3.1 基于知识图谱的实体构建 8
3.3.2 系统管理需求分析 9
3.3.3 图谱管理需求分析 10
3.3.4 知识图谱管理需求分析 10
3.3.4 知识图谱检索需求分析 11
3.3.4 知识图谱展示记录查询需求分析 11
3.4 性能需求分析 11
3.5 运行环境需求分析 12
3.5.1 硬件需求 12
3.5.2 软件需求 12
4 项目概要设计 12
4.1 总体结构设计 12
4.2 系统功能模块划分 13
4.2.1 系统登录结构 13
4.2.2 知识图谱管理结构 13
4.2.3 知识图谱图谱绘制结构 13
4.2.4 知识图谱展示结构 14
4.2.5 系统管理结构 14
4.3 数据库设计 14
4.3.1 概念结构设计 14
4.3.2 逻辑结构设计 15
5 项目详细设计 17
5.1 数据库物理结构设计 17
5.2 登录模块的实现 18
5.3 知识图谱管理的实现 18
5.4 知识图谱图谱预测的实现 18
6 项目测试简述 20
6.1 功能测试 20
6.1.1 登录功能测试 20
6.1.2 知识图谱信息管理功能测试 21
6.1.3 图谱管理功能测试 22
6.1.4 知识图谱展示功能测试 23
6.2 性能测试 24
7 项目运行演示 26
7.1 系统登录运行演示 26
7.2 知识图谱管理运行演示 26
7.3 图谱功能运行演示 27
7.4 知识图谱功能运行演示 27
7.4 图谱绘制记录查询功能运行演示 28
8 总结 29
[参考文献] 30
附 录 31
致 谢 32

三、正文

1.1 研究背景

1 引言

1.1 研究背景及意义

研究背景
随着社会经济的发展和人民生活水平的不断提高,人们对食品质量的关注度也越来越高。而鱼类作为一种重要的蛋白质来源,其品质和安全性也备受关注。然而,鱼类养殖过程中往往会遇到各种病害问题,这不仅会造成经济损失,还会影响养殖业的可持续发展。
目前,诊断和防治鱼类病害主要依靠兽医专家的经验和常识,这存在以下缺点:

  • 兽医专家数量有限,不能满足大规模养殖的需求;
  • 专家经验难以复制和传承,养殖场普通员工对病害诊断和防治方案了解不够充分;
  • 针对某种病害的治疗方案和疫苗信息分散,难以维护和更新。
    因此,开发一种基于知识图谱的鱼类病害防治知识管理系统,将兽医专家的经验和知识系统化、集成化、共享化,对于提高鱼类病害防治水平、促进养殖业可持续发展具有重要意义。
    意义
    知识整合与共享
    采用知识图谱技术可以将多源异构数据进行融合,建立起一张完整的知识图谱。该图谱不仅包括病原体信息、病症表现、检查手段等基本信息,还包括病例分析、防治方案、药物使用等实践经验。这些知识可以通过易于理解的方式呈现给普通员工参考,减轻了兽医专家的负担,也方便了病害防治工作的开展。
    知识更新与迭代
    鱼类病害的种类和防治方法是在不断变化的,因此保持知识的更新和迭代十分重要。基于知识图谱技术,可以快速地将新的病例和防治方案加入到图谱中,并通过算法优化推荐结果。这使得系统能够时刻保持最新的知识和技术,为实现高效防治提供了有力支撑。
    实时监测与预警
    通过对病害数据进行分析,可以发现病害爆发的趋势和规律,并及时采取措施。基于知识图谱的鱼类病害防治知识管理系统能够实时监测养殖场的状况,如监测池塘水质、饲料质量等,从而帮助养殖员及时发现问题并处理。同时,系统还具有智能预警功能,可以在病害爆发前给出预警,减少经济损失和可能出现的食品安全问题。

1.2 国内外研究现状

本项目所对应领域的国外/国内研究现状[2]。
近年来,随着知识图谱技术的快速发展,基于知识图谱的鱼类病害防治知识管理系统也逐渐成为了研究热点。下面将从国内外两个方面介绍相关研究现状。
(1)国内研究现状
国内学者对基于知识图谱的鱼类病害防治知识管理系统的研究主要集中在以下三个方面:
知识图谱构建
知识图谱是该领域研究的核心内容。目前,国内学者主要采用本体论(ontology)方法进行知识表示和建模,利用owl、rdf等语言描述鱼类病害相关实体,如病原体、病症表现、预防措施等,并将这些实体与相应属性和关系相链接,构建出完整的知识图谱。
知识挖掘和推荐
国内研究者提出了一系列基于知识图谱的病害诊断和防治方法。如,利用本体论方法建立病害诊断模型,通过规则推理、相似度匹配等手段实现病害快速诊断;又如,通过对知识图谱进行聚类分析和关联挖掘,推荐出最佳的防治方案,从而提升防治效果。
系统实现与应用
国内学者基于上述研究成果,开发了多个鱼类病害防治知识管理系统。这些系统主要包括前端ui设计和后台算法优化两部分。其中,前端ui设计通常采用web界面,用户可以通过该界面浏览和查询知识图谱中的相关信息;后台算法优化则主要包括病害诊断算法、防治方案推荐算法等,使得系统能够对养殖过程中遇到的各种病害进行准确、快速的诊断和防治。
(2)国外研究现状
    目前,国外对基于知识图谱的鱼类病害防治知识管理系统的研究相对较少,但也有一些重要研究成果:
数据收集和整合
  国外学者主要通过数据挖掘和机器学习等手段,从多个数据源中获取有关鱼类病害的相关信息,并将这些信息整合到知识图谱中。同时,国外研究者还开发了一些工具和软件,如myfishcheck、aquavetplan等,帮助养殖场解决鱼类病害防治问题。
知识表示和推荐
  国外学者主要采用本体论方法对鱼类病害相关知识进行表示,利用sparql等语言查询和推理知识图谱中的信息,并提供相应的防治建议。例如,在myfishcheck系统中,用户可以输入具体的病症表现,系统将自动推荐相应的防治措施。
系统评估与改进
  国外研究者还对现有系统进行评估和改进。例如,部分研究者使用用户调查和反馈等方式,了解系统存在的问题以及用户需求,从而优化系统设计和功能。另外,也有一些研究关注知识图谱的质量和准确性,通过数据清洗、领域专家审核、自动推理等手段提高知识图谱的可信度和精度。
总体比较
  国内外研究者在基于知识图谱的鱼类病害防治知识管理系统方面的研究存在一定差异。国内学者主要注重知识图谱的构建和算法优化,致力于提高病害诊断和防治效率;而国外学者则更加注重数据整合、用户需求、知识表示和准确性等方面,致力于提供更好的用户体验和知识服务。
此外,两者的研究思路存在共通之处,都采用了本体论方法和语义技术,将多源异构数据进行整合和利用,以满足养殖业对高效、安全、智能化防治的迫切需求。这表明知识图谱技术在鱼类病害领域的应用前景广阔,相信在未来的研究中,两者将继续取长补短,不断完善和优化知识管理系统。
针对数据处理部分,通过具体场景的数据集分析该数据集所存在的问题,可能存在的问题包括但不限于关键值为空、重复数据和特征数据选取。针对每一个问题,给出相关解决方案,也可以安排农民自主讨论问题解决方案。利用处理后的数据,构建知识图谱并将该图谱进行存储,可通过图数据库如 Neo4j 构建和存储数据, 通过实例数据将数据导入 Neo4j 中, 使农民通过具体案例掌握图数据库和关系型数据库之间的区别,同时该部分内容可以引导农民了解图数据库冷启动和热加载两种情况下的导入数据方法,讲解每种方法适用的场景。构建完成的知识图谱需要应用解决具体的场景问题,例如挖掘网络借贷欺诈申请的问题,讲述利用知识图谱结合机器学习领域的无监督聚类方法发现网络借贷场景中欺诈申请的审批。

2 项目概述

2.1 项目背景

  信息化发达的社会,知识图谱的发行量与日俱增。传统的知识图谱馆需要制作有署名与对应编号的书卡,由用户按分类查找再交由知识图谱管理员来处理图谱工作,知识图谱也要人工翻阅大量的记录,这样使得工作量大并及其繁琐,效率变得低下。因此需要对书籍资源、用户资源、图谱信息、知识图谱信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。
在维基百科的官方词条中:知识图谱是Google用于增强其搜索引擎功能的知识库本质上,知识图谱是一种揭示实体之间关系的语义网络,可以对现实世界的事物及其相互关系进行形式化地描述。现在的知识图谱已被用来泛指各种大规模的知
识库。
  本文依托于知识图谱的流行背景下,开发出一款针对《信安数据基础》课程体系的知识图谱的系统,通过分析《信安数据基础》课程体系的实体属性关系,只做相关的知识体系。

2.2 项目可行性分析

  项目可行性分析主要包含经济可行性、技术可行性等。
经济可行性方面:系统的主要成本是人工成本以及服务器成本,开发工具以及开发框架均采用开源平台,开发成本低廉。儿童服装销售系统主要用于线下运营,不会花费太多的销售成本。综上所述,旅游景点系统在经济上考虑是可行的且成本可控。
  技术可行性方面:系统的技术架构主要包含前端架构、后台架构。系统使用Java语言进行开发。系统前端框架采用Bootstrap响应式布局和Jquery的开源前端框架。系统后端使用SpringBoot、MyBatis以及Spring。底层数据库选择MySQL。这些技术都已经比较熟悉,已经掌握其基本开发过程和方法,所以技术上是可行的。

2.3 相关技术、工具简介

2.3.1 SpringBoot框架技术

SpringBoot是spring家族中的一个全新框架,用来简化Spring程序的创建和开发过程。在以往我们通过SpringMVC+Spring+Mybatis框架进行开发的时候,我们需要配置web.xml,spring配置,mybatis配置,然后整合在一起,而springboot抛弃了繁琐的xml配置过程,采用大量默认的配置来简化我们的spring开发过程。

2.3.2 Bootstrap框架技术

Bootstrap 是快速开发 Web 应用程序的前端工具包。它是一个 CSS,HTML 和 JS 的集合,它使用了最新的浏览器技术,给你的 Web 开发提供了时尚的版式,表单,buttons,表格,网格系统等等。

2.3.3 Python开发工具

PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。

2.3.4 Mysql5.7数据库

Mysql5.7版本在和社区版5.6版本的相比下综合性能进行了大幅提升,并且新增了众多新特性,具体包括:支持JSON存储格式、调用GIS地理空间数据库,简单的SSL安全访问配置,InnoDB 的多项功能增强等多项新特性,大大简化了数据库开发流程。

2.3.5 Neo4j-community-3.4.0图数据库

Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。程序员工作在一个面向对象的、灵活的网络结构下而不是严格、静态的表中——但是他们可以享受到具备完全的事务特性、企业级的数据库的所有好处。

3 知识图谱介绍

3.1 知识图谱定义

  三元组是知识图谱的一种通用表示方式,即G ERS  (,) ,其中 1 2 |E| E  {, , , } ee e  是知识库中的实体集合,共包含| | E 种不同实体; 1 2 |E| R rr r  {, , , } 是知识库中的关系集合,共包含| | R 种不同关系;S ERE代表知识库中的三元组集合。三元组的基本形式主要包括实体1、关系、实体2和概念、属性、属性值等,实体是知识图谱中的最基本元素,不同的实体间存在不同的关系。概念主要指集合、类别、对象类型、事物的种类,例如人物、地理等;属性主要指对象可能具有的属性、特征、特性、特点以及参数,例如国籍、生日等;属性值主要指对象指定属性的值,例如中国、1988-09-08等。每个实体(概念的外延)可用一个全局唯一确定的ID来标识,每个属性-属性值对(attribute-value pair,AVP)可用来刻画实体的内在特性,而关系可用来连接两个实体,刻画它们之间的关联。就覆盖范围而言,知识图谱也可分为通用知识图谱和行业知识图谱。通用知识图谱注重广度,强调融合更多的实体,较行业知识图谱而言,其准确度不够高,并且受概念范围的影响,很难借助本体库对公理、规则以及约束条件的支持能力规范其实体、属性、实体间的关系等。通用知识图谱主要应用于智能搜索等领域。行业知识图谱通常需要依靠特定行业的数据来构建,具有特定的行业意义。行业知识图谱中,实体的属性与数据模式往往比较丰富,需要考虑到不同的业务场景与使用人员。

3.2 知识图谱架构

  知识图谱的架构主要包括自身的逻辑结构以及体系架构,分别说明如下。

  1. 知识图谱的逻辑结构
    知识图谱在逻辑上可分为模式层与数据层两个层次,数据层主要是由一系列的事实组成,而知识将以事实为单位进行存储。如果用(实体1,关系,实体2)、(实体、属性,属性值)这样的三元组来表达事实,可选择图数据库作为存储介质,例如开源的Neo4j[9]、Twitter的FlockDB[10]、sones的GraphDB[11]等。模式层构建在数据层之上,主要是通过本体库来规范数据层的一系列事实表达。本体是结构化知识库的概念模板,通过本体库而形成的知识库不仅层次结构较强,并且冗余程度较小。
  2. 知识图谱的体系架构
    知识图谱的体系架构是其指构建模式结构,如图1所示。其中虚线框内的部分为知识图谱的构建过程,该过程需要随人的认知能力不断更新迭代。知识图谱主要有自顶向下(top-down)与自底向上(bottom-up)两种构建方式。自顶向下指的是先为
    知识图谱定义好本体与数据模式,再将实体加入到知识库。该构建方式需要利用一些现有的结构化知识库作为其基础知识库,例如Freebase项目就是采用这种方式,它的绝大部分数据是从维基百科中得到的。自底向上指的是从一些开放链接数据中提取出实体,选择其中置信度较高的加入到知识库,再构建顶层的本体模式[12]。目前,大多数知识图谱都采用自底向上的方式进行构建,其中最典型就是Google的Knowledge Vault[13]。在这里插入图片描述

3.3 业务流程需求分析

3.3.1 系统登录需求分析

有必要的话,给出业务流程1的简要文字描述及业务流程图。
系统登录:输入用户名和密码,密码通过MD5加密之后,与系统数据库里面的密码密文进行匹配,匹配成功,就进入系统,匹配失败则给与提示,如图所示为系统登录的流程图。
在这里插入图片描述

图3-1

3.2.2 图谱流程需求分析

首先,通过爬虫获取结构化的数据,对于办结构化的数据进行实体抽取和关系抽取、属性抽取,通过第三方数据库完成数据整合,实体对齐,知识推理,本体构建,质量评估,知识更新,形成知识图谱,从而进行知识检索,如图所示。
在这里插入图片描述

图3-2

3.3 需求分析

主要内容:这是一个完成用户日常图谱绘制知识图谱以及管理员管理知识图谱信息的系统,具有较高的实用性与操作性。
首先确定系统有两个角色:管理员以及用户。
主要的功能模块有:
登陆功能:首先选择身份,管理员或用户身份,点击登陆,验证成功后跳转至下一个的页面,若密码错误或是用户名错误则跳转失败,弹出报错提示。
管理员功能:
a)知识图谱管理:可查看知识图谱的详情,编辑知识图谱的内容,删除和添加知识图谱,设置知识图谱库存。
b)角色管理:增加删除用户,分配用户权限,查看用户的基本信息,并进行知识图谱的维护。
c)
用户的功能:
a)知识图谱信息查询及查看:有三种查询方式,节点名称、创建者、出版社选择其一均可进行模糊查询。
b)添加图谱绘制知识图谱:选择好自己想要的知识图谱后,点击加入图谱绘制,可查看图谱绘制栏里的知识图谱,可以删除多余知识图谱,确定图谱绘制后点击提交,完成本次图谱绘制。
c)图谱绘制信息:可在此查看本人的图谱绘制信息(包括图谱ID、知识图谱号、用户卡号、neo4j展示关系、展示关系),如果还未展示知识图谱则不显示展示关系。

3.3.1 基于知识图谱的实体构建

首先确定系统有两个角色:管理员以及用户。
算法设计实验往往要求农民利用具体计算机语言实现算法核心思想, 通过不同的测试用例来验证算法实现是否正确。但是这类实验效果较差,农民仅实现算法, 但是对算法的应用场景和优化流程并未熟悉。为了进一步提高农民的动手能力,以及具体应用场景的分析能力,通过设置详细的实验内容包括但不限于完成数据处理、系统搭建等流程,锻炼农民的动手实践能力,使得农民能够理解算法的设计思路和工作流程。拓展算法实验的内容,体现出实验的灵活性、个性化和综合性。

为此将基于知识图谱的可视化实验分成三种模块,分别为数据处理模块、知识图谱构建模块、聚类算法模块。整个实验系统的模块结构如图 3 所示。提供给农民的实验数据集可以为公开数据集或者经过加密脱敏处理后的真实应用场景的数据,不建议提供仿真数据。数据集应具有空值缺失、数据重复、噪声数据干扰等特征, 从而锻炼农民面对真实场景数据集的应对能力。农民根据提供的数据集,构建数据处理模块,通过利用数据分析处理工具,对空值进行填充或删除,删除重复数据以及剔除噪声数据。并将采取的方案梳理成文档,用于后续成绩判定。
选取 Neo4j 作为知识图谱构建模块的底层存储数据库,一方面可以扩展农民对不同类型数据库功能的认识,使得农民了解到图数据库和关系数据库之间的差异性,另一方面 Neo4j 提供丰富的文档资源, 可以锻炼农民实际实验过程中对文档阅读能力。农民将处理完成后的数据,通过自主编写脚本代码的方式,将数据导入到 Neo4j 图数据库中。
聚类算法设计模块,要求农民选择课程讲授的一种或多种聚类算法,实现对所提供数据集的聚类操作,农民需要通过调参等方式进一步提高算法的准确性。算法模型训练完成后,根据测试集数据来验证模型性能,并根据测试数据集所得到的模型性能决定农民的实验成绩。
主要的登录功能:首先选择身份,管理员或用户身份,点击登陆,验证成功后跳转至下一个的页面,若密码错误或是用户名错误则跳转失败,弹出报错提示。

3.3.2 系统管理需求分析

系统管理包含:用户管理和角色管理,对用户的角色分配。如图所示为用例图。
在这里插入图片描述

3.3.3 图谱管理需求分析

图谱绘制知识图谱:选择好自己想要的知识图谱后,点击加入图谱绘制,可查看图谱绘制栏里的知识图谱,可以删除多余知识图谱,确定图谱绘制,完成本次图谱绘制。具体需求是首先,输入创建者编号,根据编号检索创建者信息,然后输入知识图谱编号,检索知识图谱,然后选择图谱绘制节点关系,neo4j展示。
在这里插入图片描述

3.3.4 知识图谱管理需求分析

知识图谱展示:输入知识图谱编号,检索知识图谱,显示neo4j图谱图,然后知识图谱。

3.4 性能需求分析

分析系统的可靠性、并发性、易用性、维护性等方面的需求。性能性需求,指的是信息系统中保证性能、系统可靠性、可扩展性要求等方面相应的需求要素。
一般不会在用户的业务需求中进行明确的提出,需要分析人员根据实际业务需要进行调研归纳。根据本系统特点可以从以下几个方面进行分析。
(1)性能方面:
响应时间:分日常交互类、日常查询类、批量交易分别考虑。
日常交易指传统的大厅交互业务,如纳税申报、发票销售等,以及一次完成多笔业务处理的交易,如批量扣款等,日常交互类业务具有较高的响应要求。
查询类业务如登记资料查询、申报数据查询等。
查询业务由于受到查询的复杂程度、查询的数据量大小等因素的影响,需要根据具体情况而定,给出一个参考范围。
批处理业务如会计核算等业务处理,该类业务处理复杂、操作数据量大、处理时间长。
响应时间指标包括:平均响应时间参考值(秒)、峰值响应时间参考值(秒)。
(2)用户数:用户数要考虑用户数的增长情况,有以下指标:总用户数、峰值在线用户数、峰值并发用户数、平均在线用户数、平均并发用户数。
(3)吞吐量:系统交易量的估算。
(4)数据存储量:每年的数据存储容量(G)及未来几年该数量的预期(增长)值。指标包括累计存储容量(G)、年增长(G)。

3.5 运行环境需求分析

3.5.1 硬件需求

将来运行本系统所需的硬件需求。
硬件类别 型号规格 容量 备注
处理器/CPU x86 架构 Intel/AMD 至少500 MHz 推荐频率 1G Hz 以上
内存/Memory SD/DDR/DDR2/DDR3 至少 512 MB 推荐 2 GB, 最大支持32GB

3.5.2 软件需求

将来运行本系统所需的软件需求。
操作系统:Windows11
Java虚拟机:JDK1.8
Python:python3.8
服务器:Tomcat8
数据库:Mysql5.7

4 项目概要设计

4.1 总体结构设计

介绍系统的总体架构,并配总体结构图。后端技术采用SringBoot,SpringBoot是spring家族中的一个全新框架,用来简化Spring程序的创建和开发过程。在以往我们通过SpringMVC+Spring+Mybatis框架进行开发的时候,我们需要配置web.xml,spring配置,mybatis配置,然后整合在一起,而springboot抛弃了繁琐的xml配置过程,采用大量默认的配置来简化我们的spring开发过程。本系统采用了Mysql数据库,故系统的整体技术架构如下图所示。
系统总体架构设计:
在这里插入图片描述

图4-1
根据本文系统的特点,管理员主要有登录系统、知识图谱管理、用户管理、角色管理、图谱绘制记录管理、知识图谱图谱绘制和展示查询。用户具有知识图谱查询、知识图谱neo4j展示、知识图谱展示功能,图谱绘制和展示记录的查询等功能,其功能结构图如图4-2所示。
在这里插入图片描述

图4-2

4.2 系统功能模块划分

4.2.1 系统登录结构

管理员或用户身份,点击登陆,验证成功后跳转至下一个的页面,若密码错误或是用户名错误则跳转失败,弹出报错提示

4.2.2 知识图谱管理结构

管理neo4j知识图谱的信息(包括图谱ID、知识图谱号、用户卡号、neo4j展示关系、展示关系)。

4.2.3 知识图谱图谱绘制结构

查看neo4j展示的知识图谱的信息(包括图谱ID、知识图谱号、用户卡号、neo4j展示关系、展示关系)。

4.2.4 知识图谱展示结构

查看neo4j展示的知识图谱的信息(包括图谱ID、知识图谱号、用户卡号、neo4j展示关系、展示关系)。可以进行检索,然后进行展示。参与者是用户。

4.2.5 系统管理结构

管理员可以对用户进行管理,对角色进行增加,修改删除。对用户进行角色分配。

4.3 数据库设计

4.3.1 概念结构设计

阐述数据库概念结构的设计,并配E-R图。
基于SpringBoot的neo4j知识图谱图谱绘制管理系统包含知识图谱信息管理表、知识图谱信息表、知识图谱关系表、图谱分类表、用户表等。
如图所示为E-R图:
在这里插入图片描述

图4-3

4.3.2 逻辑结构设计

阐述数据库逻辑结构的设计,并以表格形式提供数据表结构。
1.知识图谱信息表(graph)是用来保存知识图谱基本信息的数据表,是维护管理知识图谱数据的依据,如表4-1知识图谱信息表所示。
graph
表注释: 图谱表
字段 类型 空 默认 注释
graph_key (主键) varchar(36) 否 图主键
graph_name varchar(50) 是 NULL 图谱名称
graph_type varchar(2) 是 NULL 图谱类型 0-私有 1-公有
graph_remark varchar(100) 是 NULL 图谱简介
graph_img_url varchar(200) 是 NULL 图谱封面
graph_views int(11) 是 0 图浏览量
graph_time datetime 是 NULL 创建时间
graph_update_number int(11) 是 1 图维护量
create_by varchar(36) 是 NULL
create_time datetime 是 NULL
update_by varchar(36) 是 NULL
update_time datetime 是 NULL
delete_flag varchar(2) 是 NULL 删除 0-未删 1-已删
graph_apply
表注释: 申请表
字段 类型 空 默认 注释
apply_key varchar(36) 是 NULL 申请主键
apply_user varchar(36) 是 NULL 申请人
graph_key varchar(36) 是 NULL 申请图
apply_time datetime 是 NULL 申请时间
apply_remark varchar(200) 是 NULL 申请备注
apply_sign varchar(2) 是 0 审核状态 0-未审核 1-已审核
apply_flag varchar(2) 是 0 审核结果 0-未通过 1-已通过
examine_time datetime 是 NULL 审核时间
examine_remark varchar(200) 是 NULL 审核意见
create_by varchar(36) 是 NULL
create_time datetime 是 NULL
update_by varchar(36) 是 NULL
update_time datetime 是 NULL
delete_flag varchar(2) 是 NULL
graph_member
表注释: 图谱成员表
字段 类型 空 默认 注释
graph_member_key (主键) varchar(36) 否 主键
user_key varchar(36) 是 NULL 用户主键
graph_key varchar(36) 是 NULL 图主键
contribution_value int(11) 是 0 贡献值
join_time datetime 是 NULL 加入时间
graph_member_type varchar(2) 是 NULL 成员类型 0-创建者 1-成员
create_by varchar(36) 是 NULL
create_time datetime 是 NULL
update_by varchar(36) 是 NULL
update_time datetime 是 NULL
delete_flag varchar(50) 是 NULL
graph_node
表注释: 图节点表
字段 类型 空 默认 注释
graph_node_key (主键) varchar(36) 否 图节点主键
graph_key varchar(36) 是 NULL 图谱主键
graph_node_id int(11) 是 NULL 节点ID
graph_node_name varchar(36) 是 NULL 节点名称
graph_node_myicon varchar(50) 是 NULL 节点图标
graph_node_remark varchar(200) 是 NULL 节点简介
graph_node_update int(11) 是 1 维护数
graph_node_url longtext 是 NULL 节点文档
graph_node_time datetime 是 NULL 创建时间
create_by varchar(36) 是 NULL
create_time datetime 是 NULL
update_by varchar(36) 是 NULL
update_time datetime 是 NULL
delete_flag varchar(2) 是 NULL
graph_relationship
表注释: 图谱关系表
字段 类型 空 默认 注释
graph_relationship_id (主键) int(11) 否 关系ID
graph_key varchar(36) 是 NULL 图主键
graph_relationship_name varchar(50) 是 NULL 关系名称
graph_relationship_from int(11) 是 NULL 关系开始节点
graph_relationship_from_name varchar(50) 是 NULL 始节点名称
graph_relationship_to int(11) 是 NULL 关系
graph_relationship_to_name varchar(50) 是 NULL 终节点名称
sys_user
表注释: 用户信息表
字段 类型 空 默认 注释
user_id (主键) bigint(20) 否 用户ID
dept_id bigint(20) 是 NULL 部门ID
user_name varchar(30) 否 用户账号
nick_name varchar(30) 否 用户昵称
user_type varchar(2) 是 00 用户类型(00系统用户)
email varchar(50) 是 用户邮箱
phonenumber varchar(11) 是 手机号码
sex char(1) 是 0 用户性别(0男 1女 2未知)
avatar varchar(100) 是 头像地址
password varchar(100) 是 密码
status char(1) 是 0 帐号状态(0正常 1停用)
del_flag char(1) 是 0 删除标志(0代表存在 2代表删除)
login_ip varchar(128) 是 最后登录IP
login_date datetime 是 NULL 最后登录时间
create_by varchar(64) 是 创建者
create_time datetime 是 NULL 创建时间
update_by varchar(64) 是 更新者
update_time datetime 是 NULL 更新时间
remark varchar(500) 是 NULL 备注

5 项目详细设计

5.1 数据库物理结构设计

  基于前述的需求分析、概要设计、逻辑设计等步骤的设计结果,基于本项目所采用的DBMS,对数据表之间的参照关系、完整性约束条件、在数据库服务器端的数据处理通过存储过程、自定义函数等实现进行阐述和设计。对辅助开发工具如PD生成的SQL脚本进行检查审核,或直接接入服务器,生成测试用数据库的设计对象,生成测试数据,为编码阶段的开发工作做好后台数据库准备。

5.2 登录模块的实现
详述核心模块登录的实现方法及过程,其核心代码图如图所示。

5.3 知识图谱管理的实现
详述核心模块登录的实现方法及过程,其核心代码图如图所示。

知识图谱管理代码图
5.4 知识图谱图谱预测的实现
详述核心模块图谱预测的实现方法及过程,其核心代码图如图所示。

6 总结

  对项目所开展的工作进行总结,分析项目的优点、缺点,可以提出尚待解决的问题、研究设想、改进建议等。
  鱼类病害防治知识图谱构建已成为知识图谱、网络学习和知识服务等领域的重要研究内容。以鱼类病害防治类课程为研究对象,构建了鱼类病害防治课程本体,设计了基于鱼类病害防治课程本体的鱼类病害防治鱼类病害防治知识图谱构建方法,提出了基于鱼类病害防治鱼类病害防治知识图谱的知识推理方法。鱼类病害防治课程本体的特点是:鱼类病害防治课程本体包括鱼类病害防治课程上层本体、鱼类病害防治课程内容本体以及鱼类病害防治课程习题本体。鱼类病害防治课程上层本体描述不同鱼类病害防治课程共享的概念化知识,鱼类病害防治课程内容本体描述特定课程的知识,鱼类病害防治课程习题本体描述鱼类病害防治课程习题的内涵和性质。鱼类病害防治鱼类病害防治知识图谱的特点是:基本模型和扩展模型的分层融合性,概念的正实例和负实例的引入,以及与鱼类病害防治课程内容本体的有机衔接。基于鱼类病害防治鱼类病害防治知识图谱的知识推理方法的特色是:构建了推理类型分类体系,该分类体系从本体角度给出了推理知识的类型和在鱼类病害防治鱼类病害防治知识图谱中的定位和关联关系。离散鱼类病害防治课程实验,表明了知识图谱构建和推理方法的有效性。鱼类病害防治鱼类病害防治知识图谱及其推理为用户提供了一种形式化的、显式的鱼类病害防治知识表示、知识组织和知识推理模型,从而改善了知识服务效果。
  基于可视化系统的知识图谱教学模式, 利用可视化系统作为引导,向农民展示了知识图谱技术如何应用以及处理的流程,进一步提高农民对算法应用和解决实际问题的能力。通过设置课程实验内容,农民从获取数据集,对数据集进行数据处理, 利用处理完成的数据构建知识图谱,自主选择实现聚类算法,实验内容几乎涉及到计算机专业课程的全部内容,从算法理论到具体实现。进而提高农民对算法课程的兴趣,以及自主学习意识,提高教学质量。

[参考文献]

[1]吕小锋 . 基于 Stata 编程的国际商务数据处理与分析课程教改设计 [J]. 科技创新与生产力 , 2017(8):58-60.
[2]刘洁 . 聚类分析——让我们轻松找到事物之间的联系 [J]. 北京统计 , 2003(9):45-46.
[3]范金. 上证30 指数二届成份股的聚类分析[J]. 数理统计与管理, 1998 (5):15-20.
[4]王亮红 , 宋代清 , 徐娜 . 聚类分析在农民成绩分析中的应用 [J]. 东北电力大学学报 ( 社会科学版 ),2009,29(04):35-38.
[5]朱志彪 , 高山 . 设置综合设计性实验 提高农民综合素质 [J]. 实验室研究与探索 , 2010(07):250-252.
[6]刘训东 , 杨宏伟 , 左剑恶 , 等 . 贯彻教书育人根本 探索实验教学改革 [J]. 实验室研究与探索 , 2014(8):211-214.
[7]汤慧仪《. 战场可视化》课程的知识把握与理解 [J]. 教育现代化 , 2016(15):101-102+104.
[8]周忠 , 周瑞芳 . 可视化方法在常微分方程数值解教学中的应用[J]. 教育现代化 , 2018,5(01):177-179.
[9]刘怿敏 , 谢皇 . 可视化教学技术在临床麻醉学教学中的应用研究 [J]. 教育现代化 , 2019, 6(10):194-196+200.

致 谢

基于知识图谱的鱼类病害防治知识管理系统需要多方面的技术支持和帮助,以下是我们对这些人或组织的致谢:

  1. 感谢所有为本系统提供数据和技术支持的鱼类养殖专家和相关疾病防治工作人员。
  2. 感谢开源社区和相关技术组织,在本系统搭建过程中提供了各种优秀的技术框架、工具和组件。
  3. 感谢曾经为本系统提供意见和建议的专家学者们,你们的宝贵意见和建议对我们的系统设计和功能改进起到了非常重要的作用。
    4.感谢参与该项目的每一位开发人员,你们的辛勤付出和专业技能使得该系统成功地建立和运行。
  4. 感谢国家科技部和其他相关政府部门在资源和资金方面的支持和帮助,为该项目的顺利进行提供了保障。
    最后,我们衷心感谢所有关注和使用该系统的用户,希望我们的系统能够为您提供有价值的信息和帮助。
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_1406299528

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值