基于改进TF-IDF 算法的毕业生就业推荐算法研究*

2023-12-09 08:50
计算机与数字工程 2023年9期
关键词:文档个人信息聚类

李 龙 金 铄 黄 霞

(东北石油大学计算机与信息技术学院 大庆 163318)

1 引言

当下毕业生的就业存在难度大以及对工作不满意的问题。毕业生就业难主要是因为越来越多的毕业生总数使得应届生之间的就业压力逐年增大,以及公司企业对毕业生的要求越来越高,使得就业的门槛逐年增高。由于毕业生人数众多,高校无法精准地做到对个人进行岗位推荐[1]。为了解决毕业生就业推荐的精准度的问题,设计搭建该就业推荐系统,一方面根据往届毕业生个人信息及就业意向,进行K-Means++聚类[2],同时对正在求职的毕业生进行用户画像,另一方面对招聘信息使用TF-IDF 算法[3~4],对文本进行向量化处理,并计算权重,从而提取出文本关键词。选择适合度TOP-N 的职业推荐,精确化的推荐可在很大程度上解决就业信息的极度冗余带来的繁杂,并对用户的个人信息及需求进行针对性分析,能够提升推荐的准确性[5]。具体推荐流程如图1、图2所示。

2 用于就业推荐的K-Means++算法和TF-IDF推荐算法研究

2.1 基于TF-IDF算法的就业信息处理

TF-IDF(Term Frequency/Inverse)算法是一种在信息检索和数据挖掘领域中进行检索词重要性度量的常用统计方法[6]。TF-IDF 算法可用来衡量词语对于一个语料库中的一个文本的重要度。TF-IDF 值由TF(Term Frequency,词频)和IDF(Inverse Document Frequency,逆文档频率)相乘得出,其公式如下:

上述公式中,count(ω)是关键词的出现次数,|Di|是文档中词的总数,TF代表关键词在文档中的出现频率,TF越高,则反映出这个词出现得越频繁。IDF则反映了一个词在文档中的普通程度,当有大量文档包含一个词语的时候,IDF越低,代表这个词越普通[7]。

一个词的TF-IDF 值等于这个词的TF与IDF的乘积,一个词的TF-IDF越大,则代表这个词在这个文章越重要,就越能够代表这个文章,对于一个中文文本,首先进行分词,然后进行去停用词,去掉无意义的助词,然后对每一个词计算出其TF-IDF值,选择排在Top-N 的词,就可得出该文章的关键词[8]。

使用TF-IDF 算法,对从互联网上获得的招聘信息文本进行分析,从而得到每条招聘信息的关键词,将关键词在不同行业,不同企业间的权重加以比较,并将每条招聘信息的不同关键词进行分类。为了提高就业推荐的精准度,对于毕业生的信息,本文推荐系统使用TF-IDF算法提取招聘网站职位基本信息。根据TF-IDF 算法的定义,对于招聘信息文档,先切分出关键词,将是否包含该关键词作为新特征,然后对新特征和目标变量做假设实验。该实验的结果展示了某一些关键词对于一个文档的重要程度。

2.2 基于K-means++算法的学生信息分类方法

采用聚类算法,对学生特征之间的距离进行计算,对于往届学生的个人信息,分成几个学生集,对于目标学生,进行用户画像建模,然后进行相似度计算,从而找到与其最相似的学生集,并根据该学生集的就业情况对其进行就业推荐[9]。此算法先从客观上寻找个人就业特征相似的邻集,再从主观上在特征相似邻集中寻找就业观、就业兴趣相似的往届生,结合主客观两个方面判断学生相似性,提高寻找最相似学生的精确度,进而也避免了兴趣评分数据的缺乏对就业推荐质量带来的影响[10]。K-means++公式如下所示:

对样本集D={x1,x2,…,xm},K-Means++算法需要根据聚类划分C={C1,C2,…,Ck},将平方误差最小化。式中ui是簇Ci的均值向量。

本文选择使用K-means++算法,本算法是对K-Means算法的改进,使得初始聚类中心的距离尽量远[11~12]。 对往届毕业生个人信息进行K-means++聚类,其流程如下所示:

3 基于TF-IDF 算法改进的就业数据具体实验步骤及结果

根据K-Means++算法和TF-IDF 算法,建立就业推荐系统。主要分为就业信息抓取、用户数据采集、就业信息推荐三大模块[13]。

3.1 就业信息抓取模块

通过Web爬虫的方式,从互联网上如智联招聘等招聘信息网站上爬取就业信息,并进行数据预处理,进行数据的清洗、去重。采取TF-IDF算法对就业信息进行处理,进行文本向量化并计算权重,从而获取到关键词,形成能够结构化存储的数据,按照信息时间的先后顺序进行存储,主要解析的内容如下:公司种类、岗位的名称、各个岗位职责、各岗位能力要求、学历要求、工作地点、薪资待遇水平等等。爬虫数据使用TF-IDF算法计算之后进行降维的可视化。本实验爬取4300 多条数据,把文本向量化,使用TF-IDF算法计算权重,并从语料库中提取权重最大的为关键词。爬取的部分数据展示,计算权重并展示Top-8的词频如图3~5所示。

图3 部分爬取数据展示

图4 词频矩阵展示

图5 关键词权重展示

TF-IDF 算法计算权重,后进行聚类、数据降维(TSNE算法)可视化,如图6所示。

图6 降维、聚类后职位信息数据可视化

针对每条语料,用TF-IDF算法计算权重后,得出了不同关键词可作为它们的主题,并建立词云图,其中部分词云图如图7所示。

图7 部分词云图展示

图8 某高校毕业生数据经K-means++算法聚类后效果展示

图9 实验方法及流程

3.2 用户数据采集模块

用户数据包括两方面的信息,一方面为用户的初始注册信息,如学历、学校、专业、特长、就业意向等,另一方面为高校毕业生近年就业信息数据,通过分析往年学生就业数据,使用K-Means++算法聚类,可以根据注册用户的个人信息,将与其情况相类似的毕业生的就业情况进行推荐[14]。当注册用户在推荐系统中产生行为时,如点击浏览某个就业信息、收藏某个就业信息、申请某个岗位等,都需要进行接口调用,与后端服务器产生通信,用户数据采集模块通过用户日志,对接口的调用情况进行统计,从而收集用户的历史求职行为信息,并存入用户信息数据库中,用于用户画像建模,为推荐算法的运行提供数据支撑。对往届学生的个人信息进行聚类,并根据个人信息与行为数据建立毕业生用户画像,根据需求高效的进行推荐,是对大数据更新层次的一种利用[15]。

本文中从河南某高校近三年的毕业生就业信息中心中获取3000 余条数据,为避免不同数据类型和不同的单位对于距离产生的影响,首先需要把所有数据的值全部转换到数值区间[0,1]中,本文中选取的学生特征为编号、性别、专业、民族、政治面貌、获奖情况、学生干部、外语成绩、在校成绩。标准化处理之后的数据部分如表1所示。

3.3 就业信息推荐模块

本模块中在就业信息的个性化推荐时使用的是基于用户画像的TF-IDF算法。对于未注册的游客,则推荐系统中热门就业信息;对于新注册的用户,根据其初始注册时填写的个人信息及就业意向,通过K-means++聚类算法,寻找与其初始信息相似的用户,为了预测新用户的就业信息评分并生成初始推荐列表,需要用户对就业信息进行评价;对于注册一段时间的用户,还需根据其历史行为信息,寻找与其行为类似的用户,向其推荐与他类似的用户所喜好的就业信息。先分别利用传统的TF-IDF 算法将招聘信息文档中的关键词转换为词频向量矩阵,然后利用K-means++算法对毕业生基本信息中的词频向量进行聚类[16],从毕业生的所属的学科分类出发,对招聘信息文档中的关键词矩阵进行交叉分析,从互联网上如智联招聘等招聘信息网站上爬取就业信息,并进行数据预处理,进行数据清洗与去重。采取合适的文本匹配方式对就业信息进行抽取,从而形成能够结构化存储的数据,按照信息时间的先后顺序进行存储。

4 结语

本文提出的基于K-means++算法和TF-IDF 算法的混合双向就业推荐方法能更有效地解决就业精准推荐的问题,通过用户的个人信息和行为数据进行用户画像,利用K-means++算法,对往届毕业生数据进行聚类,并进行相似度计算,找到最相似的学生就业信息集合,根据他们的就业情况进行参考,系统通过TF-IDF 算法,对就业信息进行处理,得出每个就业信息的关键词,然后寻找与用户画像最匹配的就业信息并向其推荐。通过根据历年毕业生就业信息和招聘信息进行双向就业推荐,从而帮助高校毕业生减少就业盲目性,提高提高用户满意度。

猜你喜欢
文档个人信息聚类
如何保护劳动者的个人信息?
个人信息保护进入“法时代”
浅谈Matlab与Word文档的应用接口
有人一声不吭向你扔了个文档
警惕个人信息泄露
基于DBSACN聚类算法的XML文档聚类
基于高斯混合聚类的阵列干涉SAR三维成像
基于RI码计算的Word复制文档鉴别
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
一种层次初始的聚类个数自适应的聚类方法研究