Bootstrap

django基于人脸识别的职业推荐系统-计算机毕业设计源码

摘  要

近年来个性化推荐系统逐渐成为众多研究者们的研究焦点,给人们的生活和工作带来了很多便捷。但是随着网络求职招聘的信息量呈爆炸式增长,简单的职位搜索可能难以满足求职者的需求。尽管职位推荐技术越来越得到广泛的应用及普及,但是很多招聘网站并没有针对求职者的历史行为进行分析与发掘。

本文对基于求职者行为分析的职位推荐系统的构建进行了深入的研究,针对基于传统的职位搜索与浏览的推荐现状在实际实施过程中面临的问题,提出了对求职者的 Web行为日志分析的方法,运用基于内容的过滤、基于人口统计过滤与协同过滤推荐技术,设计与实现了一种基于行为分析的个性化职位推荐系统。

本系统采用的数据库是Mysql,使用django技术开发。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。

关键词:基于人脸识别的职业推荐系统,django,Mysql

SSM Recruitment Website System

ABSTRACT

In recent years, personalized recommendation systems have gradually become the research focus of many researchers, bringing a lot of convenience to people's lives and work. However, with the explosive growth of online job recruitment information, simple job searches may not be able to meet the needs of job seekers. Despite the increasingly widespread application and popularization of job recommendation technology, many recruitment websites have not analyzed and explored the historical behavior of job seekers.

This article conducts in-depth research on the construction of a job recommendation system based on job seeker behavior analysis. In response to the problems faced by traditional job search and browsing based recommendations in the actual implementation process, a method for analyzing job seekers' web behavior logs is proposed, using content-based filtering, demographic filtering, and collaborative filtering recommendation technologies, Designed and implemented a personalized job recommendation system based on behavior analysis.

The database used in this system is MySQL, developed using django technology. During the design process, the system code was fully ensured to have good readability, practicality, scalability, universality, ease of maintenance, ease of operation, and concise pages.

Keywords: facial recognition based occupational recommendation system, django, MySQL

目录

django基于人脸识别的职业推荐系统

摘  要

ABSTRACT

1章 绪论

1.1背景及意义

1.2 职业推荐的研究现状

1.3  论文组成结构

第2章 相关技术

2.1 B/S体系工作原理

2.2 Django框架介绍

2.3 MySQL数据库

第3章 系统分析

3.1 需求分析

3.2 系统可行性分析

3.2.1技术可行性:技术背景

3.2.2经济可行性

3.2.3操作可行性:

3.3 项目设计目标与原则

3.4系统流程分析

3.4.1操作流程

3.4.2添加信息流程

3.4.3删除信息流程

4章 系统设计

4.1 系统体系结构

4.2开发流程设计

4.3 数据库设计原则

4.4 数据表

第5章 系统详细设计

5.1管理员功能模块

5.2普通用户功能模块

6章  系统测试

6.1系统测试的目的

6.2系统测试方法

6.3功能测试

结  论

致  谢

参考文献

1章 绪论

1.1背景及意义

随着社会经济的快速发展和职业结构的不断变化,人们对于职业选择的重要性日益增加。传统的职业推荐方法往往基于问卷调查或简单的匹配算法,无法充分考虑个体的特点和需求。而人脸识别技术的突破与普及为解决这一问题提供了新的思路。通过分析人脸图像中的面部特征,结合职业数据和就业市场需求,可以实现更精准、个性化的职业推荐。

1.2 职业推荐的研究现状

近几年,随着求职招聘网站的不断革新,求职者对招聘网站的个性化服务需求不断提升,促使个性化的职位推荐的研究正在如火如荼的开展。

在2000年,爱尔兰都柏林贝尔菲尔德大学的Rachael Rafter等人提出发CASPER系统,通过运用案例检索和协同过滤技术解决JobFinder(www.jobfinder.ie)里的检索匹配问题。在2007年,意大利的 Pasquale De Meo等人提出了一种基于XML的多智能体招聘系统,该系统包括两部分:用户智能体,主要负责管理求职者的档案信息和求职者之间的交互;招聘智能体,主要负责处理职位的发布和推荐等活动。在2009年,Sven Laumer等人2提出了一种支持IT人员招聘的系统,通过建立职位模型和技术要求,对求职者简历与职位的语义进行匹配,但是该系统仅停留在架构设计上,并没有实验验证。在2010年,Singh等人在提出从求职者网上的简历中提取求职者的求职属性信息,与招聘单位的职位要求信息进行匹配,智能地识别出求职者适合的职位,并向求职者提供推荐。在2011年,Paparrizos等人提出将职位推荐系统问题看作是有监督的机器学习问题,并利用大量求职者的历史行为数据进行训练模型。在2006年,何峰等人提出采用向量空间模型,利用文本分类器构建了一个基于文本分类的人才推荐系统,该推荐系统将智能分类求职文本信息,并与招聘单位发布的职位智能匹配,进而实现个性化智能推荐功能。黄海江等人提出的职位推荐系统虽然在功能上实现了职位信息和求职者信息的匹配,但是并没有考虑到求职者的求职意向和招聘单位的招聘意向,因此并不能算是实现个性化职位推荐。

目前招聘网站上大多的职位推荐都是根据求职者的求职意向或者热门职位作为理荐依据,这样可能会导致推荐的职位单一性和不完善性,推荐服务水平较低等。久而久之,求职者可能对求职网站的推荐职位产生不信任,甚至会影响企业求职网站的信誉度。因此本课题将充分利用求职者的行为日志,包括注册行为日志、职位浏览日志和历史申请日志,对求职者的行为日志进行深入分析和发掘,构建用户-职位模型并训练学习求职者行为,努力争取实现真正意义上的个性化职业推荐系统。

1.3  论文组成结构

论文整体分为六个章节模块:引言部分介绍研究背景以及意义,第二章主要是介绍采用的相关技术还有使用的开发方法,第三章描述的是前期调查分析,第四章的系统的功能等设计,第五章主要是整个系统的实现过程及关键代码,最后一章是系统测试方法以及测试结果的记录与描述。

第2章 相关技术

2.1 B/S体系工作原理 

B/S架构采取浏览器请求,服务器响应的工作模式。

用户可以通过浏览器去访问Internet上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;

而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;

Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。

在 B/S 模式中,用户是通过浏览器针对许多分布于网络上的服务器进行请求访问的,浏览器的请求通过服务器进行处理,并将处理结果以及相应的信息返回给浏览器,其他的数据加工、请求全部都是由Web Server完成的。通过该框架结构以及植入于操作系统内部的浏览器,该结构已经成为了当今软件应用的主流结构模式。

2.2 Django框架介绍

Django是高水准的Python编程语言驱动的一个开源模型.视图,控制器风格的Web应用程序框架,它起源于开源社区。使用这种架构,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。这也正是OpenStack的Horizon组件采用这种架构进行设计的主要原因。另外,在Django框架中,还包含许多功能强大的第三方插件,使得Django具有较强的可扩展性。Django 项目源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。Django 框架的核心组件有:

2.3.1 用于创建模型的对象关系映射

2.3.2 为最终用户设计较好的管理界面;

2.3.3 URL 设计;

2.3.4 设计者友好的模板语言;

2.3.5 缓存系统。

Django(发音:[`dʒæŋɡəʊ]) 是用python语言写的开源web开发框架(open source web framework),它鼓励快速开发,并遵循MVC设计。Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。

Django 根据比利时的爵士音乐家Django Reinhardt命名,他是一个吉普赛人,主要以演奏吉它为主,还演奏过小提琴等。

由于Django在近年来的迅速发展,应用越来越广泛,被著名IT开发杂志SD Times评选为2013 SD Times 100,位列“API、库和框架”分类第6位,被认为是该领域的佼佼者。

JSP脚本语言

JSP可以放在在html里使用,也可以独自使用,它同时也具备有很多种优点,可以讲,Web脚本技术的先驱是JSP。现代编程语言(像C,python和Perl等)的一些最好的特点都融合在JSP里,Web服务器里的一些配置标准是由JSP、Tomcat和数据库等的组合在一起的。

2.3 MySQL数据库

MySQL经过多次的更新,功能层面已经非常的丰富和完善了,从MySQL4版本到5版本进行了比较大的更新,在商业的实际使用中取得了很好的实际应用效果。最新版本的MySQL支持对信息的压缩,同时还能进行加密能更好的满足对信息安全性的需求。同时经过系统的多次更新,数据库自身的镜像功能也得到了很大的增强,运行的流畅度和易用性方面有了不小的进步,驱动的使用和创建也更加的高效快捷。最大的变动还是进行了空间信息的显示优化,能更加方便的在应用地图上进行坐标的标注和运算。强大的备份功能也保证了用户使用的过程会更加安心,同时支持的Office特性还支持用户的自行安装和使用。在信息的显示形式上也进行了不小的更新,增加了两个非常使用的显示区,一个是信息区,对表格和文字进行了分类处理,界面的显示更加清爽和具体。第二是仪表的信息控件,能在仪表信息区进行信息的显示,同时还能进行多个信息的比对,为用户的实际使用带来了很大的便捷。

针对本文中设计的疫情数据可视化系统在实际的实现过程中,最终选择MySQL数据库的主要原因在于在企业的应用系统应用及开发的过程中会存在大量的数据库比较频繁的操作,而且数据的安全性要求也是非常的高。综合这些因素,最终选择安全性系数比较高的MySQL来对疫情数据可视化系统后台数据进行存储操作[9][10]。

数据库管理系统的总体结构图如下图所示。

图2-1 数据库组成结构

第3章 系统分析

3.1 需求分析

基于人脸识别的职业推荐系统主要是为了实现快捷方便的用户对职位信息查询、职位申请、查看企业信息等需求,和更方便快捷的满足用户,更好存储所有数据信息及快速方便的检索功能,对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。

任何一个项目在开发研究前,都需要对研发系统本身的需求做一个认真的分析,市场的调研是不可忽视的,从实际场景中确定使用用户的功能需求,从而明确目标,对整个系统的开发有一个更加准确的定位。在这个章节,需要对系统的性能分析,业务流程分析,和数据等进行分析,基于人脸识别的职业推荐系统的整体界面简单,功能完善。

需求的可行性是分析和讨论发达的系统能达到什么样的要求。开发的系统或网站是否符合之前的要求。只有在预先评估系统的开发中,才能在系统开发和实施之前完成需求。系统在开发和运用过程中,在技术可行性、操作可行性、经济可行性和法律可行性这几点展开的详细说明,证明了这几点是可行的。

系统所要实现的功能分析,对于现在网络方便的管理,系统要实现用户可以直接在平台上进行查看所有数据信息,根据需求可以进行在线添加,删除或修改基于人脸识别的职业推荐系统信息,这样既能节省时间,不用再像传统的方式耽误时间,真的很难去满足用户的各种需求。所以基于人脸识别的职业推荐系统的开发不仅能满足用户的需求,还能减少原有不必要的工作量,大大提高了管理员的工作效率。

3.2 系统可行性分析

3.2.1技术可行性:技术背景     

本系统在Windows操作系统中进行开发,并且目前PC机的性能已经可以胜任普通网站的web服务器。系统开发所使用的技术也都是自身所具有的,也是当下广泛应用的技术之一。

系统的开发环境和配置都是可以自行安装的,系统使用django开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得网站运行更具有稳定性和安全性,从而完成实现网站的开发。

(1)硬件可行性分析

系统管理及信息分析的设计对于所使用的计算机没有什么硬性的要求,计算机只要可以正常的使用进行代码的编写及页面设计就可行,主要是对于服务器有些要求,对于平台搭建完成要上传的服务器是有一定的要求的,服务器必须选择安全性比较高的,然后就是在打开网站必须顺畅,不能停顿太长时间;性价比高;安全性高。

(2)软件可行性分析

开发整个系统使用的是云计算,流量的可扩展性和基于流量的智能调整云计算的优点就是流量的可扩展性和基于流量的智能调整,保障系统的安全和数据信息的及时备份。

因此,我们从两个方面进行了可行性研究,可以看出系统的开发没有问题。

3.2.2经济可行性

在基于人脸识别的职业推荐系统开发之前所做的市场调研及其他相关的管理系统,都是没有任何费用的,都是通过开发者自己的努力,所有工作都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于基于人脸识别的职业推荐系统的开发在经济上是完全可行的,没有任何费用支出的。

使用比较成熟的技术,系统是基于django的开发,采用Mysql数据库。所以系统在开发人力、财力要求不高,具有经济可行性。

3.2.3操作可行性: 

可操作性主要是对基于人脸识别的职业推荐系统设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于系统管理员、用户两种角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作过程使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。

3.3 项目设计目标与原则

1、关于基于人脸识别的职业推荐系统的基本要求

(1)功能要求:可以管理后台首页、系统用户、个人资料管理、职位分类管理、职位信息管理、申请信息管理、系统管理、招聘公告管理、资源管理、权限管理等功能模块。

(2)性能:在不同操作系统上均能无差错实现在不同类型的用户登入相应界面后能不出差错、方便地进行预期操作。

(3)安全与保密要求:用户都必须通过管理员审核才能进入系统。

(4)环境要求:支持Windows系列、Vista系统等多种操作系统使用。

2、开发目标

基于人脸识别的职业推荐系统的主要开发目标如下:

(1)实现管理系统信息关系的系统化、规范化和自动化;

(2)减少维护人员的工作量以及实现用户对信息的控制和管理;

(3)方便查询信息及管理信息等;

(4)通过网络操作,提高改善处理问题和操作人员工作的效率;

(5)考虑到用户多样性特点,要求界面和操作简便易懂。

3、设计原则

本系统采用django技术,Mysql数据库开发,充分保证了系统稳定性、完整性。

基于人脸识别的职业推荐系统的设计与实现的设计思想如下:

  1. 操作简单方便、系统界面安全良、简单明了的页面布局、方便查询用户对招聘职位查询、申请面试、查看企业信息等相关信息。

2、即时可见:对基于人脸识别的职业推荐系统信息的查询、处理将立马可以查询到,从而实现“即时发布、即时见效”的系统功能。

3、功能的完善性:可以管理系统用户、个人资料管理、职位分类管理、职位信息管理、申请信息管理、系统管理、招聘公告管理、资源管理、权限管理等功能模块的修改维护操作。

3.4系统流程分析

3.4.1操作流程

系统登录流程图,如图所示:

图3-1登录流程图

3.4.2添加信息流程

添加信息流程图,如图所示:

图3-2添加信息流程图

3.4.3删除信息流程

删除信息流程图,如图所示:

图3-3删除信息流程图

4章 系统设计

4.1 系统体系结构

基于人脸识别的职业推荐系统的结构图4-1所示:

图4-1 系统结构

登录系统结构图,如图4-2所示:

图4-2 登录结构图

系统功能结构图,如图4-3所示。

图4-3 系统功能结构图

4.2开发流程设计

系统流程的分析是通过调查系统所涉及问题的识别、可行性、可操作性、系统分析处理能力等具体环节来调节、整理系统的设计方案以确保系统能达到理想的状态。这些操作都要从注册、登录处着眼进行一系列的流程测试保证数据库的完整,从而把控系统所涉及信息管理的安全、保证信息输入、输出正常转换。然后,通过实际操作完成流程图的绘制工作。

基于人脸识别的职业推荐系统的开发对管理模块和系统使用的数据库进行分析,编写代码,系统测试,如图4-4所示。

图4-4开发系统流程图

4.3 数据库设计原则

学习编程,我们都知道数据库设计是基于需要设计的系统功能,我们需要建立一个数据库关系模型,用于存储数据信息,这样当我们在程序中时,就没有必要为程序页面添加数据,从而提高系统的效率。数据库存储了很多信息,可以说是信息管理系统的核心和基础,数据库还为系统提供了添加、删除、修改和检查等操作模块,使系统能够快速找到自己想要的信息,而不是在程序代码中找到。数据库中信息表的每个部分根据一定的关系精确地组合,排列和组合成数据表。

通过基于人脸识别的职业推荐系统的功能进行规划分成几个实体信息,实体信息将通过ER图进行说明,本系统的主要实体图如下:

 用户信息实体属性图,如图4-3所示:

图4-3 用户信息实体属性图

系统的E-R图如下图所示:

图4-4系统E-R图

4.4 数据表

将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。

表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

token_id

int

10

0

N

Y

临时访问牌ID

2

token

varchar

64

0

Y

N

临时访问牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大寿命:默认2小时

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

user_id

int

10

0

N

N

0

用户编号:

表application_information (申请信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

application_information_id

int

10

0

N

Y

申请信息ID

2

company_name

varchar

64

0

Y

N

公司名称

3

recruitment_positions

varchar

64

0

Y

N

招聘职位

4

position_category

varchar

64

0

Y

N

职位类别

5

position_salary

varchar

64

0

Y

N

职位薪资

6

applying_for_users

int

10

0

Y

N

0

申请用户

7

user_name

varchar

64

0

Y

N

用户姓名

8

user_gender

varchar

64

0

Y

N

用户性别

9

user_age

varchar

64

0

Y

N

用户年龄

10

contact_information

varchar

64

0

Y

N

联系方式

11

graduation_date

varchar

64

0

N

N

毕业时间

12

the_highest_educational_level

varchar

64

0

Y

N

最高学历

13

graduation_school

varchar

64

0

Y

N

毕业学校

14

professional_name

varchar

64

0

N

N

专业名称

15

personal_introduction

text

65535

0

Y

N

个人介绍

16

personal_resume

varchar

255

0

Y

N

个人简历

17

reason_for_application

text

65535

0

Y

N

申请原因

18

examine_state

varchar

16

0

N

N

未审核

审核状态

19

examine_reply

varchar

16

0

Y

N

审核回复

20

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

21

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表article (文章:用于内容管理系统的文章)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

article_id

mediumint

8

0

N

Y

文章id:[0,8388607]

2

title

varchar

125

0

N

Y

标题:[0,125]用于文章和html的title标签中

3

type

varchar

64

0

N

N

0

文章分类:[0,1000]用来搜索指定类型的文章

4

hits

int

10

0

N

N

0

点击数:[0,1000000000]访问这篇文章的人次

5

praise_len

int

10

0

N

N

0

点赞数

6

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

8

source

varchar

255

0

Y

N

来源:[0,255]文章的出处

9

url

varchar

255

0

Y

N

来源地址:[0,255]用于跳转到发布该文章的网站

10

tag

varchar

255

0

Y

N

标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开

11

content

longtext

2147483647

0

Y

N

正文:文章的主体内容

12

img

varchar

255

0

Y

N

封面图

13

description

text

65535

0

Y

N

文章描述

表article_type (文章分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

type_id

smallint

5

0

N

Y

分类ID:[0,10000]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]决定分类显示的先后顺序

3

name

varchar

16

0

N

N

分类名称:[2,16]

4

father_id

smallint

5

0

N

N

0

上级分类ID:[0,32767]

5

description

varchar

255

0

Y

N

描述:[0,255]描述该分类的作用

6

icon

text

65535

0

Y

N

分类图标:

7

url

varchar

255

0

Y

N

外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表collect (收藏)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

collect_id

int

10

0

N

Y

收藏ID:

2

user_id

int

10

0

N

N

0

收藏人ID:

3

source_table

varchar

255

0

Y

N

来源表:

4

source_field

varchar

255

0

Y

N

来源字段:

5

source_id

int

10

0

N

N

0

来源ID:

6

title

varchar

255

0

Y

N

标题:

7

img

varchar

255

0

Y

N

封面:

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表comment (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

comment_id

int

10

0

N

Y

评论ID:

2

user_id

int

10

0

N

N

0

评论人ID:

3

reply_to_id

int

10

0

N

N

0

回复评论ID:空为0

4

content

longtext

2147483647

0

Y

N

内容:

5

nickname

varchar

255

0

Y

N

昵称:

6

avatar

varchar

255

0

Y

N

头像地址:[0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

9

source_table

varchar

255

0

Y

N

来源表:

10

source_field

varchar

255

0

Y

N

来源字段:

11

source_id

int

10

0

N

N

0

来源ID:

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表job_classification (职位分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

job_classification_id

int

10

0

N

Y

职位分类ID

2

position_category

varchar

64

0

Y

N

职位类别

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表job_information (职位信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

job_information_id

int

10

0

N

Y

职位信息ID

2

company_name

varchar

64

0

Y

N

公司名称

3

recruitment_positions

varchar

64

0

Y

N

招聘职位

4

position_category

varchar

64

0

Y

N

职位类别

5

number_of_recruiters

varchar

64

0

Y

N

招聘人数

6

company_logo

varchar

255

0

Y

N

公司logo

7

position_salary

varchar

64

0

Y

N

职位薪资

8

work_address

varchar

64

0

Y

N

上班地址

9

working_hours

varchar

64

0

Y

N

上班时间

10

welfare_treatment

text

65535

0

Y

N

福利待遇

11

job_description

text

65535

0

Y

N

职位内容

12

job_requirements

text

65535

0

Y

N

职位要求

13

company_introduction

longtext

2147483647

0

Y

N

公司介绍

14

hits

int

10

0

N

N

0

点击数

15

praise_len

int

10

0

N

N

0

点赞数

16

recommend

int

10

0

N

N

0

智能推荐

17

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

18

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

标题:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表personal_data (个人资料)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

personal_data_id

int

10

0

N

Y

个人资料ID

2

user_account

int

10

0

Y

N

0

用户账户

3

user_name

varchar

64

0

Y

N

用户姓名

4

user_gender

varchar

64

0

Y

N

用户性别

5

user_age

varchar

64

0

Y

N

用户年龄

6

contact_information

varchar

16

0

Y

N

联系方式

7

graduation_date

varchar

64

0

Y

N

毕业时间

8

the_highest_educational_level

varchar

64

0

Y

N

最高学历

9

graduation_school

varchar

64

0

Y

N

毕业学校

10

professional_name

varchar

64

0

Y

N

专业名称

11

work_experience

text

65535

0

Y

N

工作经验

12

personal_skills

text

65535

0

Y

N

个人技能

13

personal_introduction

text

65535

0

Y

N

个人介绍

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表praise (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

praise_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

status

bit

1

0

N

N

1

点赞状态:1为点赞,0已取消

表regular_users (普通用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

regular_users_id

int

10

0

N

Y

普通用户ID

2

user_name

varchar

64

0

Y

N

用户姓名

3

user_gender

varchar

64

0

Y

N

用户性别

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

user_id

int

10

0

N

N

0

用户ID

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表slides (轮播图)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

slides_id

int

10

0

N

Y

轮播图ID:

2

title

varchar

64

0

Y

N

标题:

3

content

varchar

255

0

Y

N

内容:

4

url

varchar

255

0

Y

N

链接:

5

img

varchar

255

0

Y

N

轮播图:

6

hits

int

10

0

N

N

0

点击量:

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

  1. 系统详细设计

5.1管理员功能模块

管理员登录基于人脸识别的职业推荐系统,在登录页面输入用户名、密码或人脸识别进行登录,如图5-1所示。

图5-1管理员登录界面图

      

管理员进入系统后台可以查看后台首页、后台首页、系统用户、个人资料管理、职位分类管理、职位信息管理、申请信息管理、系统管理、招聘公告管理、资源管理、权限管理等功能模块。还可进行相应的操作,如图5-2所示。

图5-2管理员功能界面图

系统用户,在此页面可以查看用户信息,还可在该页面对用户进行重置、添加和删除等操作。如图5-3所示。

图5-3用户管理界面图

系统管理:管理员在这一栏可以编辑标题+图片等详细描述信息进行发布、删除、添加等操作,如图5-4 5-5所示。

图5-4轮播图界面图

图5-5轮播图添加界面图

招聘公告管理:管理员在这一栏可以编辑标题+内容进行发布、查询、重置、删除、添加等操作,如图5-6,5-7所示。

图5-6公告栏管理界面图

图5-7添加公告信息界面图

资源管理:管理员在这一栏可以看到招聘资讯+资讯分类这两个子菜单,管理员可对资讯进行分类、查询、重置、删除、添加等操作,如图5-8,5-9所示。

图5-8资讯列表界面图

图5-9添加资讯分类界面图

职位分类管理:管理员可以对基于人脸识别的职业推荐系统中的职位分类添加职位名称进行分类管理,其管理界面如图5-10所示。

图5-10添加职位分类面图

职位信息管理:管理员在职位信息列表可查看系统中所有的职位信息详情,并可对前台用户的评论信息进行管理,在职位信息添加这一栏编辑公司名称、招聘职位、职位类别、招聘人数、职位薪资、上班地址、上班时间等信息完成职位信息和添加,也可进行重置或删除等操作,其管理界面如图5-11所示。

图5-11添加职业信息界面图

申请信息管理,管理员可在申请信息列表查看前台用户提交的职位申请详情信息,如毕业时间、最高学历、毕业学校、专业名称、个人介绍等信息,可在线下载个人简历、或删除某个申请信息等操作,其管理界面如图5-12所示。

图5-12申请信息管理界面图

5.2普通用户功能模块

普通用户登录基于人脸识别的职业推荐系统,需先注册,注册成功后在登录页面输入用户名、密码或人脸识别进行登录,如图5-13,5-14所示。

图5-12普通注册界面图

图5-13用户登录界面图

      

     进入系统可以查看:首页,招聘公告,招聘资讯,职位信息、个人资料、我的账户、个人中心(个人首页、个人资料、申请信息、收藏)等功能,还可进行相应的操作,如图5-14所示。

图5-14用户首页界面图

职位信息,在该页面可以通过搜索关键字查看系统中所有的职位详细信息,如:公司名称、招聘职位、招聘人数、职位薪资、上班地址等详细信息,可进行职位申请、收藏等操作,如图5-15所示。

图5-15职位详情界面图

职位申请,用户在职位申请页面输入申请用户、用户姓名、用户年龄、联系方式、毕业时间、个人介绍、上传个人简历等信息完成职位申请提交,如图5-16所示。

图5-16职位申请界面图

个人资料,用户在该页面可以通过系统提示输入个人资料信息完成提交,如:用户姓名、用户年龄、联系方式、毕业时间、最高学历、毕业学校等详细信息,如图5-17 所示。

图5-17个人资料界面图

招聘资讯,在该页面可以通过局部搜索、筛选或排序进行查看管理员发布的招聘资讯信息,对自己喜欢的资讯可进行点赞、收藏、评论等操作,如图5-19 5-20所示。

图5-19招聘资讯界面图

图5-20招聘资讯详情界面图

6章  系统测试

6.1系统测试的目的

程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。

软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。

基于人脸识别的职业推荐系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在基于人脸识别的职业推荐系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。

6.2系统测试方法

在对基于人脸识别的职业推荐系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让基于人脸识别的职业推荐系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个基于人脸识别的职业推荐系统开发所牵扯的该问题都必须一一解决,提高基于人脸识别的职业推荐系统平台的安全性、稳定性。

白盒测试与黑盒测试是测试中比较常用的两种方法。

①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。

②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。

6.3功能测试

用户登录测试:

模块名称

测试用例

预期结果

实际结果

是否通过

登录模块

用户名:admin   密码:123  

弹出错误提示,提示密码错误

弹出错误提示,提示密码错误

通过

登录模块

用户名:123   

密码:admin   

弹出错误提示,提示用户名错误

弹出错误提示,提示用户名错误

通过

登录模块

用户名:admin   

密码:admin   

管理员登录成功

管理员登录成功

通过

删除分类测试:

模块名称

测试用例

预期结果

实际结果

是否通过

删除分类模块

分类名:最新通知  

删除成功、页面自动跳转

删除成功、页面自动跳转

通过

修改密码测试:

模块名称

测试用例

预期结果

实际结果

是否通过

修改密码模块

原密码:666

新密码:123

确认密码:123  

弹出错误提示,提示原密码错误

弹出错误提示,提示原密码错误

通过

修改密码模块

原密码:admin   新密码:123

确认密码:333  

弹出错误提示,提示确认密码不一致

弹出错误提示,提示确认密码不一致

通过

修改密码模块

原密码:admin   新密码:123

确认密码:123  

密码修改成功

密码修改成功

通过

通过对功能的测试,基于人脸识别的职业推荐系统的基本功能都是可行的,不管是系统里面的功能,还是界面的设计都是可值得推广宣传的。

结  论

此时项目已经完成,即使实施的时间不是很长,但是这个过程中需要准备很长的一段时间去对系统设计开发所实际到的技术进行学习。在学习的过程中,我逐渐认识得到了我自身存在的一些不足。对于一些控制是必要的应用技能,能够理解,整个过程中仅仅是一个掌握了常用的性能和控制方法,我觉得挺容易的。从该系统中,系统的分析和设计的调查数据,并且已经经历了几个月,并努力几个月,该系统已经完成。很显然,该系统仍有很多不成熟,在系统设计过程中有许多技术缺陷存在。在设计的过程中也涉及到了很多自己无法解决的问题,主要通过找专业的网站和论坛来解决这些问题,对于圆满完成我的毕业设计,他们也贡献了很大一部分力量。系统的开发环境和配置都是可以自行安装的,系统使用django开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得系统运行更具有稳定性和安全性,从而完成实现系统的开发。

在以后的学习及工作中,我将继续努力学习计算机方面的技术,以期在平台开发中可以更好更快的实现需求功能。


致  谢

基于人脸识别的职业推荐系统的完成,如何实现的更好,其中付出的努力是很大的,这段时光将会终身难忘。

首先要感谢我的指导老师,谢谢您在设计和论文中给我的指导。在您的细心指导下我才能快速的掌握系统的相关功能,在您的大力帮助下我才能将课本上的知识与自己的项目结合,真正的做到学以致用。感谢您经常牺牲自己的休息时间,利用其丰富的教学和项目经验对我进行指导。

感谢所有教过我的老师,为我倾注了大量的心血,正是你们的谆谆教诲、严谨教学才使我能顺利的完成学业,再此向你们表示深深的感谢。

感谢我的同学们,对我的大力支持及帮助,正是你们不断的帮助、鼓励,给我带来了极大的动力,最终系统可以顺利的运行。我们在交流、谈论的这段时间,将是我未来的财富,我要深深地感谢你们!

毕业在即,在今后的工作和生活中,我会铭记师长们的教诲、同学们的帮助,继续不懈努力和追求,来报答所有支持和帮助过我的人!。

参考文献

[1]薛亮, 冯尊磊, 凌兴宏, 龚兰兰, 何伟亚. 基于标签聚类和协同过滤算法的就业推荐系统设计[J]. 微型电脑应用, 2024, 40 (01): 1-4.

[2]蒋晓红. 适用于人岗匹配推荐系统的职位简历匹配方法及装置[P]. 上海市: CN111105209B, 2023-07-21.

[3]洪锐锋, 刘力维. 基于职业教育的人才推荐方法、装置和职业教育系统[P]. 北京市: CN116433200A, 2023-07-14.

[4]이중훈, 임지훈, 조성미, 천삼열, 박여진, 민유성, 김미수, 이준원, 강지원. Department Recommendation and Career Recommendation System Using Cognitive Competency Games[P]. KR20230080892, 2023-06-07.

[5]김성규, 박형진. Career Recommendation System through String Similarity and Weight measurement and evaluation methods between Bigdata based Job-competency patterns and User's personal competency pattern[P]. KR20230072725, 2023-05-25.

[6]Research and implementation of a knowledge graph-based job recommendation system[J]. Computer Informatization and Mechanical System, 2023, 6 (1): 20-24.

[7]谢一敏. 基于用户画像和职业标签的职业推荐技术及其系统实现[D]. 杭州电子科技大学, 2022.

[8]赵清. 基于“互联网+”平台的学校就业推荐系统设计[J]. 信息技术, 2021, (10): 117-121+126.

[9]徐孟奇, 熊熙, 李斌勇, 李中志. 基于知识图谱的人岗推荐系统构建[J]. 计算机应用研究, 2022, 39 (01): 194-198.

[10]王碧莹. 基于知识图谱的职位推荐系统的研究与实现[D]. 辽宁大学, 2021.

[11]钟天河. 中职学校基于学生职业兴趣的专业推荐系统研究与实现[D]. 浙江工业大学, 2020.

[12]朱春杉. 基于推荐系统的高职学生职业规划探索[J]. 现代职业教育, 2020, (17): 4-5.

[13]李传龙. 基于知识图谱的个性化职位推荐算法研究[D]. 武汉理工大学, 2020.

[14]汤志鸿. 面向高校大学生的职位推荐系统的功能设计与实现[D]. 南京邮电大学, 2019.

[15]黄宏昆, 汤积华, 童文灿. 基于Mahout的职位推荐系统设计与实现[J]. 龙岩学院学报, 2019, 37 (05): 21-26.

[16]郝凯. 基于简历数据的职位推荐系统的设计与实现[D]. 东南大学, 2018.

[17]常亮, 张伟涛, 古天龙, 孙文平, 宾辰忠. 知识图谱的推荐系统综述[J]. 智能系统学报, 2019, 14 (02): 207-216.

[18]陈升权. 基于安卓的职业院校移动教务系统的设计与实现[D]. 华南理工大学, 2017.

[19]洪文兴, 王宁, 陈毅伟, 周绮凤, 李涛. 大数据时代的人才推荐系统[J]. 大数据, 2017, 3 (02): 115-120.

[20]汪澎洋. 个性化求职信息推荐系统的研究与设计[D]. 北京邮电大学, 2017.

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

;