博文

简单对比spacy中的pkuseg模型和pkuseg自有模型的中文分词效果

在spacy中,默认的中文分词模型是pkuseg,在安装了spacy后,就可以通过 : python -m spacy download zh_core_web_sm 来安装模型,虽然spacy提供了sm、md、lg和trf四种类型的模型,但是对于分词来说,它们的效果都是一致的,F-score均为92.94(3.8.0版本)。因为平时使用spacy较多,一直以为spacy使用的分词模型是pkuseg自己的模型,后来才发现并不是想象中的这样,那么仅仅对于分词任务来说,是spacy的模型更好,还是pkuseg的模型更好呢,这里我简单做一下对比记录。 对比方式很简单,所以并没有多严谨,仅供大家参考,就是使用两个模型分别对同一段文本分词,最后查看各自的分词效果。 首先我准备了一段近期的新闻文本,来源为 https://cn.chinadaily.com.cn/a/202603/22/WS69bfc215a310942cc49a4569.html ,节选内容如下: 近日,有媒体报道称,一款名为“ALPS阿尔卑斯”的饮用天然矿泉水,其实际水源地却是国内江西萍乡、吉林辽源等地。 电商平台显示,该款矿泉水500ml、330ml两个规格外包装一致,瓶身正面印有雪山图案,“ALPS”右上角处有“R”标注,“阿尔卑斯”字样旁却未有商标标注。据商品详情页面介绍,上述几款产品产地为“中国”,水源地包括吉林长白山、江西武功山等附近。 中新网 注意到,在社交平台,不少消费者吐槽该款矿泉水“挂羊头卖狗肉”。 中新网 查询中国商标网发现,该款矿泉水真实注册商标为“ALPS”,由阿尔卑斯饮品有限公司的一家关联公司——阿尔卑斯品牌运营管理有限公司持有。 值得一提的是,该公司共有115项商标相关信息。其中,国际分类32类(包括啤酒、矿泉水和汽水等)中的“阿尔卑斯”中文商标目前状态为“撤销/无效宣告申请审查中”。商标详情信息显示,该商标于2013年发布初审公告,之后经历商标异议,2025年,该商标使用许可备案收到不予核准通知。 不过,中新网 致电阿尔卑斯饮品有限公司询问时,该公司接电行政人员表示,该公司确为“阿尔卑斯”“ALPS”的商标持有者。对于水源地等相关情况,对方称:“稍后会有市场部门相关人员回电。”截至发稿,中新网 未接到相关电话。 阿尔卑斯官网称,“阿尔卑斯”中文商标持有人为阿尔卑斯饮品有限公司,...

在不依赖Node.js的情况下使用tailwindcss进行开发

图片
众所周知,在当下的现代前端开发中,Node.js基本上已经成为了不可或缺的工具,无论是使用React还是Vue,或者使用其他的框架进行开发,都要依赖Node.js开发环境,但是对于没有用到Node.js的老项目,或者不想使用现代前端框架的项目,仍然i需要使用普通Javascript进行开发。幸运的是,一些好用的框架除了提供依赖Node.js的版本外,也提供了不依赖Node.js的独立版本。在这篇文章中,我们主要来看一下如何在不依赖Node.js的情况下使用tailwindcss这个著名的css框架进行前端开发。 注意,在写下本篇文章的时候,我使用的是tailwindcss V4.2版本,对于之前的V3版本,使用方式可能略有不同,这里只针对V4.2版本。 Tailwindcss这个名字相信大家已经毫不陌生了,许多前端框架内置推荐的css框架就是它,同时也是大模型最钟爱的前端框架之一,在大模型的加持下,不用半天就可以开发出精美的前端界面。在互联网上并不缺乏对于这个框架的详细介绍,在这里我就不赘述了,让我们直接进入正题。 Tailwindcss提供了两种不依赖Node.js的使用方式,一种是通过CDN链接直接在HTML文件中引入,这种方式用起来最方便,但是文档中写道: Use the Play CDN to try Tailwind right in the browser without any build step. The Play CDN is designed for development purposes only, and is not intended for production. 翻译过来也就是说这种使用方式只适合开发,不适合用于正式的生产环境,一般情况下,可以使用这种方式进行开发,而在生产环境中使用第二种方式部署。 第二种方式是通过安装一个叫做 tailwindcss CLI的程序来使用,方法也比较简单,下面我们主要介绍一下这种使用方式。 注意:在Node.js环境下也可以通过npm安装来使用这种方式,直接 npm install tailwindcss @tailwindcss/cli即可,这里就不多说啦。 首先我们要在tailwindcss的官方仓库下载我们需要的版本: https://github.com/tailwindlabs...

记录一下PMP从备考到通过的一段经历

一、前言        相信很多人都和我一样,自从毕业以后就很少再考试了,这次考PMP的原因也是因为在工作中发现了系统性管理的重要性,只凭自己摸索的那套管理的野路子并不足以应付项目中的所有情况,这种感觉就像是你打游戏练了一个绝活,但是再怎么厉害,也无法战胜职业战队的那种感觉,何况我还是个野路子,只是在平时的工作中积累了一些管理经验,事实也证明确实PMP的一些系统性思路比自己总结的那套更灵活,而且更有用。        写这篇文章的目的比较简单,记录一下从备考到取证的过程,毕竟这也算是毕业以后的一件大事了。顺便如果有想了解PMP考试的人,也可以作为一些参考。 二、备考        众所周知,PMP这个考试比较特殊,不能个人报考,它需要经过PMI认证的培训机构出具的有效培训证明,来证明你确实接受了系统的项目管理培训,这样才可以报考。因为在PMI的认知体系中,一个人只有接受过系统性培训,才可以成为专家。虽然这样的出发点是好的,但是实际的培训都是应试教育,也不能说不好,毕竟我们的目的是通过考试,而且也确实可以从应试的过程中学习到系统的管理知识。所以大家如果想参加PMP考试的话,第一步就是找一个PMI认证的培训机构,具体哪家好这点不好评判,网上比较有名的几家应该都差不多,大家可以根据课程价格自由挑选。        在培训机构报名后,就要根据机构老师的安排进行学习了,一般来说周期大概是三个月左右,因为每年在中国大陆的PMP考试有四次,间隔正好是三个月。听说国外的PMP是随去随考的,这一点没有去确认过,不过我们本身就是要在大陆考,所以遵循大陆的考试时间即可,报名的节点要选择准确,报名早了还好说,报名晚了容易导致学习时间压缩,导致学习时间紧张。一般来说报名后,培训机构就会出具培训证明,并安排中英文报考,由于报考环节比较复杂,既要在PMI报名,也要在国内的基金会报名,所以一般的机构都会安排专门的人员来帮助报名,或者直接代理报名,我们只需要注册好账号,并等待报名成功后缴费就可以了,虽然麻烦,但是总体不是很难。        我当时考试的时候《PM BOK》还是第7版,考试的内容也分为过程...

基于虹软人脸识别在微信小程序中实现人脸登录

图片
 一、项目概述 应“广大”粉丝的强烈要求,今天我们使用虹软人脸识别(Linux Pro版)来实现微信小程序(以下简称小程序)中的人脸登录功能。 虹软(ArcSoft)是计算机视觉行业领先的算法服务提供商及解决方案供应商。公司业务遍布全球,在杭州、上海、南京、深圳、台北、硅谷、东京、都柏林等地设有商业与研发基地。其最新发布的Linux Pro引擎除支持人脸检测、人脸跟踪、人脸对比、人脸质量检测等基础功能外,还支持高并发百万人脸库的高效识别,并提供了两个全新的高精度模型,最重要的是支持离线私有化部署~ 前排提示,阅读本篇文章需要有一点点的小程序开发知识或前端开发知识。 在之前的文章中,我们实现了一个在Spring Boot中集成虹软人脸识别的项目,在本篇文章中,我们将继续使用这个项目作为后端服务(前后端分离的好处就是一个后端可以适配多个前端)。当然,为了适配微信小程序,这里也对代码进行了少许修改和BUG修复,在下文中我会一一指出改动之处,如果你已经看过我的上一篇文章,那么阅读本篇文章将会非常轻松,如果你还没有阅读过,可以先粗略阅读一下来了解后端的整体思路,上一篇文章地址如下: 在Spring Boot项目中集成虹软Linux Pro SDK实现人脸1:N对比服务(极简版,快速上手) 下面开始本篇文章的正式内容。 在当下,人脸登录已经是一个普通到不能再普通的功能,在一些安全校验严格的情况下,必须要保证是本人在登录,要实现这一点,一般会在密码或验证码登录后再进行一次人脸识别来确保。在我们日常使用微信小程序的过程中,也会经常遇到即使输入了正确的账号密码,也要进行人脸识别的情况,这并非是多此一举,而是为我们的数据安全提供了更强的保护。 人脸登录的高层级思路并不复杂,在使用人脸登录前,我们首先要使用其他方式进行人脸注册,比如用户注册时采集人脸,或者后台批量录入人脸等,并根据注册照提取人脸特征,之后将人脸特征和其他信息进行持久化保存(比如存入数据库);当用户进行登录时,我们再获取到采集照,同样进行人脸检测和特征提取,最后将采集照的特征数据和注册照的特征数据进行对比搜索,来判断正在登录的人是否是之前已经录入过信息的人。 这里借用上一篇文章的流程图: 以上流程中的人脸检测和人脸特征提取部分均在服务端完成,本文中的小程序仅实现了流程中获取采集照的部分,而注册的部分依然复用上一篇文...