测试圈相亲平台开发流程(21):匹配算法(下)

简介: 测试圈相亲平台开发流程(21):匹配算法(下)

上节课我们已经搞定了几乎所有架构上的事。只差俩个分值计算函数了。


   但是经过我们仔细一想,赫然发现,俩个函数的算法应该是一模一样的。唯一的区别就是,进来的个人信息和择偶标准 是女方,还是男方而已,也就是对调一下而已。


所以我们这里简化为一个函数,但是传参颠倒的格式:

image.png

image.png


然后我们来实现这个函数,仍然以鸣人举例。


   这里我们拿到的是鸣人的个人/择偶信息,还有异性的个人/择偶信息。


   因为个人信息目前字段是高于择偶信息的。所以我们要以择偶信息来作为依据。

   而多出来的个人信息字段,则作为额外加分项(以后实现,需要开发统一标准打分功能)。

   函数如下:

image.png

分别要用五个want字段来计算分数。

然后把这五个字段分数 分别* 系数 加到一起。目前我并没有更改系数,这个系数要实际的效果来不断调整才行,所以我都默认0.2


研究具体分数计算之前,我们为了确保最后总分在100为满的基础上。所以必须严格控制所有分数的分段结果和精度。(只是大概结果在100以下,特别优秀的肯定是超过100分)


然后就是 要一个一个来研究吧:

第一个分数,身高height:


假如want = 170cm, info=175cm ,那么肯定加分的。如果info=168cm,那就要扣分的。


所以暂时写成:当然后续我会逐步优化算法。

image.png

   

然后是收入,同样的,我们按照年收入/元 来计算。每超出10000算10分

image.png


然后是age年龄,超出一岁扣20分,小一岁加20分。

image.png

   

然后是学历,这个差一级差50分吧。

但是难点在于,先要从信息中精确定位出来真实的。毕竟人输入的各有千秋,比如本科,本,大本 这些都是本科。

image.png

如上图,我先设置了学历递增列表,然后算出want和info的学历下标,再用下标差来计算最终得分。比如研究生下标是5,本科下标是4,那么得分就是

(5-4)*50 = 50分。如果完全没获取到,就算-100分


然后我们继续算地址匹配度。

这个我们可以直接使用第三方的字符串相似度库

image.png


image.png

这个库的得分都是0.几,最大是1 所以结果✖️100


好了。现在我们再次测试鸣人的匹配结果:

image.png


概率上来讲,纲手>雏田>小樱。


如果看己方角度得分,那么鸣人最心仪的是雏田,最不想匹配的是纲手奶奶。

如果从对方角度得分看,纲手是最心仪鸣人哦~ ,而小樱则是嫌弃到负数。


本系列开发过程暂时结束,后续就是优化了哈~  


声明:文中的动漫角色均非实际角色,数据是随机填的,所以结果并不符合真实剧情,不惜勿喷哦~  等作者之后给按照真实属性填入后就会看到...



然后顺便看看其他角色的匹配结果:

image.png

果然鸣雏还是概率最高哦~


image.png

小樱和鸣人概率也很高


image.png

纲手奶奶和谁概率都高,没办法,毕竟火影。


image.png

佐助的话,果然逃不掉和纲手奶奶...


相关文章
|
4天前
|
机器学习/深度学习 前端开发 算法
婚恋交友系统平台 相亲交友平台系统 婚恋交友系统APP 婚恋系统源码 婚恋交友平台开发流程 婚恋交友系统架构设计 婚恋交友系统前端/后端开发 婚恋交友系统匹配推荐算法优化
婚恋交友系统平台通过线上互动帮助单身男女找到合适伴侣,提供用户注册、个人资料填写、匹配推荐、实时聊天、社区互动等功能。开发流程包括需求分析、技术选型、系统架构设计、功能实现、测试优化和上线运维。匹配推荐算法优化是核心,通过用户行为数据分析和机器学习提高匹配准确性。
23 3
|
22天前
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
51 1
|
1月前
|
人工智能 供应链 安全
AI辅助安全测试案例某电商-供应链平台平台安全漏洞
【11月更文挑战第13天】该案例介绍了一家电商供应链平台如何利用AI技术进行全面的安全测试,包括网络、应用和数据安全层面,发现了多个潜在漏洞,并采取了有效的修复措施,提升了平台的整体安全性。
|
1月前
|
监控 安全 测试技术
构建高效的精准测试平台:设计与实现指南
在软件开发过程中,精准测试是确保产品质量和性能的关键环节。一个精准的测试平台能够自动化测试流程,提高测试效率,缩短测试周期,并提供准确的测试结果。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
133 1
|
2月前
|
人工智能 监控 测试技术
云应用开发平台测试
云应用开发平台测试
77 2
|
1月前
|
监控 安全 测试技术
构建高效精准测试平台:设计与实现全攻略
在软件开发过程中,精准测试是确保产品质量的关键环节。一个高效、精准的测试平台能够自动化测试流程,提高测试覆盖率,缩短测试周期。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
64 0
|
3月前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
112 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
2月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
77 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
2月前
|
算法 Java 测试技术
数据结构 —— Java自定义代码实现顺序表,包含测试用例以及ArrayList的使用以及相关算法题
文章详细介绍了如何用Java自定义实现一个顺序表类,包括插入、删除、获取数据元素、求数据个数等功能,并对顺序表进行了测试,最后还提及了Java中自带的顺序表实现类ArrayList。
32 0
|
4天前
|
监控 JavaScript 测试技术
postman接口测试工具详解
Postman是一个功能强大且易于使用的API测试工具。通过详细的介绍和实际示例,本文展示了Postman在API测试中的各种应用。无论是简单的请求发送,还是复杂的自动化测试和持续集成,Postman都提供了丰富的功能来满足用户的需求。希望本文能帮助您更好地理解和使用Postman,提高API测试的效率和质量。
30 11
下一篇
DataWorks