自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (1)
  • 收藏
  • 关注

原创 传统推荐模型

传统的推荐模型(一)发展脉络:类似搜索引擎中的倒排索引算法,先进行倒排,再构造共现矩阵从而减少计算量,最后计算相似度(UF,TF)。通过考虑热门物品或者热门用户的影响,设置权重指标,将热门物品和热门用户的影响降到最低(IIF,IUF),从而提高覆盖率,解决长尾问题。通过引入矩阵分解(MF),相当于对用户进行了分类,或者对物品进行了分类,一方面对计算进行了优化,一方面也提高了系统数据泛化的特性。隐语义模型,也是通过矩阵分解,探究隐藏关系,分解的维度可以通过梯度下降法求得。图模型,通过图的天然特性,即节点与节

2021-08-11 19:33:25 388

原创 矩阵分解实现个性化推荐算法实践

利用MF(矩阵分解)将用户和物品编码成8维度的向量,从而可用于后续相似度计算,从而产生推荐结果。step1:数据的预处理(读取rating.dat的数据,划分测试集和训练集,并转换成tensorflow能直接运用的格式)#读取数据data_file = './ratings.dat'lines = open(data_file)#打印前十行for i,line in enumerate(lines): if i>10: break; print(line)

2021-08-11 19:05:39 545

原创 strapi token expired解决方案

失效原因:strapi自动生成的token,默认过期时间为30天,网上查了很多种方式想直接修改token的过期时间,验证之后没有可以用的。解决方案如下:原获取token的方式新获取token的方式从管理后台手动拿,在前端写死前端新增一个获取token的接口(这个token的过期时间可以设置)具体操作如下:调用http://localhost:1337/auth/local的POST方法post-body如下:注:identifier和password需要去管理后台手动

2021-08-11 18:26:54 4153

原创 redis学习笔记

redis学习笔记基本数据类型:string,list,hash,set各种数据类型的经典应用场景:string:首页热点数据(更新较少,访问频繁)list:最新热点列表数据(更新较快,访问频繁,利用队列先入先出的思想,动态更新热点排行类数据)hash:购物车,用户信息(键值对结构,值可直接传json数据)set:用户画像(去重)分布式锁(将多节点的锁放在redis里进行统一管理)注意点加锁 SETNX key valuesetnx 的含义就是 SET if Not Exists,有

2021-07-08 14:40:15 130

原创 java反射机制实践---对象属性预处理

java反射机制实践—对象属性预处理引言 最近碰到了个问题,数据从前端传入之后需要进行校验。于是乎就简单的用get,set方法,但这样就使代码看起来异常臃肿,不美观。未引入反射之前的代码 if(pa.getLitigationAmount().length()>15) { pa.setLitigationAmount(RoundNoOfUtil.RoundNoOf(pa.getLitigationAmount(),2));

2021-01-28 23:56:26 161

原创 easypoi解析excel出现的不明bug,数据精度丢失

easypoi解析excel出现的不明bug,数据精度丢失引言 收到反馈,通过excel导出的数据和导入的数据不一样,精度出现丢失。如下图:导入导出故障排查 从数据录入,数据导出两方面进行排查,发现是录入的时候easy-poi解析出了问题(排查方式也很简单,查看数据库原始数据)解决方案方案一:从easy-poi中间件本身入手,在execl-->Object阶段进行校验方案二:在Object-->Database阶段进行校验,观察错误数据得只需要进行简单的四舍五入

2021-01-27 16:51:52 4439 2

原创 用python实现小说的平均句长,词性占比,关键词,标点符号,词形统计

用python实现小说的平均句长,词性占比,关键词,标点符号,词形统计需求如下代码:词性占比import jiebafrom wordcloud import WordCloudimport refrom PIL import Imageimport matplotlib.pyplot as pltdef read_file_gbk(filename): with open(filename,'r',encoding='GBK') as f: s = f.r

2021-01-23 19:19:09 3373 3

原创 python实现简单的词形统计

用python正则表达式实现简单的词形统计需求如下: 交流了好长时间才知道她要的是词形统计,如AA.AAB,AABB...编码如下import refrom matplotlib import font_managerimport matplotlib.pyplot as pltimport numpy as npdef read_file_gbk(filename): with open(filename,'r',encoding='GBK') as f: s

2021-01-23 14:19:15 472 2

原创 项目神器--mybatis增删改查代码自动生成

文章目录引言优点使用引言写后端增删改查代码已经很熟练了,为了偷懒,于是乎在网上找工具看能否自动生成部分增删改查的代码,终于在万能的github上找到了这个神器,以后就有更多时间来摸鱼了。优点简要介绍一下它的优点:界面简洁明了 ,看起来很舒服;基本不需要配置使用使用方法:方法一: 自助构建git clone https://github.com/zouzg/mybatis-generator-guicd mybatis-generator-guimvn jfx:jarcd

2020-12-06 22:59:32 1318 3

原创 LeetCode刷题笔记——两数之和

题目描述两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]解体思路简单实现:暴力求解,即多次遍历整数数组。for i in nums: for j in nums:

2020-10-19 17:56:38 166

原创 手撸一个简单的日期格式化工具类

用途:日期格式化import java.text.SimpleDateFormat;import java.util.Date;/** * @Author: ck * @Description: * @Date: Create in 10:57 2020/10/17 */public class DateUtils { // case PATTERN__OF_YEAR: // 'y' // case PATTERN_MONTH_OF_YEAR:

2020-10-17 14:41:19 2197 2

原创 达摩院视觉智能平台API初体验---表情识别

引言 闲来无事,翻了翻阿里云平台,还真发现一个挺有意思的东西,达摩院视觉智能开发平台ai接口内测中。本着不嫖白不嫖的心态,决定试试就试试。项目架构后端接口实现思路1. MultipartFile 转 file(需要将前端传来的文件流转成file)2 .上传图片到阿里云OSS3.调用阿里视觉计算平台接口 获取返回结果// 开始进行图片标注4.图片下载5.根据像素坐标进行标注6.本地图像上传到OSS7.返回图片路径给前端引入Maven配置 <dependency&gt

2020-10-10 19:22:13 1238 1

原创 OJ系统研究现状

研究现状参考:[1]杨博,张能,李善平,夏鑫.智能代码补全研究综述[J].软件学报,2020,31(05):1435-1453.[2]尹青山.基于群组信息改进矩阵分解的群组推荐方法[J].计算机应用与软件,2020,37(09):328-333.[3]黄洪波,宋鸿陟,彭红星,司国东.大规模程序评判系统的设计与实现[J].计算机工程与设计,2016,37(03):825-831.开源OJ系统:https://github.com/QingdaoU/OnlineJudge微服务框架Spring C

2020-09-25 16:42:31 1171

原创 搭建一个自己的OJ系统(有手就行)

引言 最近接到老板任务,让研究一下OJ相关的代码检测,智能补全,组队推荐等内容,也尝试一下能否搭建一个自己的OJ的系统。秉承着‘把开源的变成自己的,把自己的变成祖传的’思想,白嫖github上的项目,还算轻松地完成了系统搭建任务,在此记录一下。搭建思路 配置基本环境-->下载docker镜像-->启动-->运维具体步骤环境准备: 本人用的是腾讯云学生服务器,理论上来说能安装上docker地Linux机器应该都行1.安装必要依赖sudo wget update &

2020-09-23 16:31:02 13097 8

原创 python数据可视化demo

引言在对数据进行处理之时,我们往往会通过绘图来可视化我们的数据,从而利于分析数据处理之前以及之后的一般的规律。下面来实战一下!Demo等高线图import numpy as npimport matplotlib.pyplot as pltdef f(x,y): return (1-x/2+x**5+y**3)*np.exp(-x**2-y**2)n = 256x = np.linspace(-3,3,n)y = np.linspace(-3,3,n)X,Y = np.me

2020-09-19 18:22:41 648 1

原创 手撸一个分页查询接口

引言 为了提高用户的浏览体验,列表显示往往会进行分页显示,因此后端也需要编写分页查询接口。在网上查阅了一番分页相关的资料,发现了许多数据库分页查询的插件,但一般都有些许复杂,想了想直接自己手撸一个岂不妙哉,在此记录一下此次小小的尝试。需求分析​ 如上图所示,点击向左的箭头可向前翻页,点击数字可跳转至指定页面,点击向右箭头可向后翻页。实现思路前端:使用element ui里的 pagination组件,简单进行封装一下就可使用pagination组件链接:https://elemen

2020-09-04 21:56:43 1929 4

原创 浅谈决策树

引言 本文需要些许信息论的知识,不了解的可以去看下相关博文,还是比较容易的,虽然本科学过信息与编码的相关知识,但也是没有实际应用过,所以并不懂其真正的内涵所在,学习了决策树,补了下信息论相关的知识,在此记录一下。什么是决策树​ 决策树(decision tree)是一种基本的分类与回归方法。举个相亲的例子,某一天小C和他的相亲对象小K在咖啡馆里,他们之间有这样一段对话:小C问: 家里有房吗?小K答: 有,也就十几套小C心想:还不错,可以进行下一步小C继续问:家里有车吗?小K答:有

2020-09-03 13:44:29 1092

原创 Java多线程基础学习笔记

引言 最近在学习jdk源码中的Object类时,看见wait(),notify()相关的内容时一头雾水,果然非科班出身虽然会做些应用,但是基础还是比较薄弱。简单学习了一些多线程相关的基础知识,在此简单记录一下。问题一:什么是线程,进程,以及协程进程: 本质上是一个独立执行的程序,进程是操作系统进行资源分配和调度的基本概念,操作系统进行资源分配和调度的一个独立单位​线程:是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一个进程中可以并发多个线程,每条线程执行不

2020-09-02 00:26:24 970

原创 Python科学计算神器---Numpy初步

引言 最近在学习机器学习的算法,发现在用代码实现诸如KNN,朴素贝叶斯,决策树等基本算法时,经常用到矩阵的相关操作。python语言虽相比java,因其数据类型规定比较松散,且语法糖较多,在进行矩阵加减乘除方面编码较为简单,但也必须用的大量的循环操作,如进行矩阵的reshape操作。于是就开始学习了numpy,其不仅操作简单,且因其底层用C语言实现,运行速度相比原生py也更快,下面来总结下近期所学。什么是NumpyNumPy是Python中科学计算的基础包。它是一个Python库,提供多维

2020-09-01 15:37:44 1160

原创 朴素贝叶斯决策理论

引言 虽然本科学过概率论,但是也就会用点公式,知道点皮毛,知其然却不知其所以然,最近看了大佬的博客,有些心得,在此记录一下。个人理解,概率即是可能性,实际问题中好多问题因其复杂性不容易对其进行精确的度量,因此往往采用求概率的形式来进行估计判断,如天气预报。贝叶斯决策理论​ 如上图,我们现在用p1(x,y)表示数据点(x,y)属于类别1(图中红色圆点表示的类别)的概率,用p2(x,y)表示数据点(x,y)属于类别2(图中蓝色三角形表示的类别)的概率,那么对于一个新数据点(x,y),可以用下面

2020-08-28 16:19:01 7665

原创 K近邻算法经典案例实现之海伦约会

引言 上文实现了简单的K近邻算法,本文来介绍下完整的K近邻算法,将实际需求与算法进行结合,先介绍数据预处理以及可视化。K近邻算法的一般流程如下:收集数据:可以使用爬虫进行数据的收集,也可以使用第三方提供的免费或收费的数据。一般来讲,数据放在txt文本文件中,按照一定的格式进行存储,便于解析及处理。准备数据:使用Python解析、预处理数据。分析数据:可以使用很多方法对数据进行分析,例如使用Matplotlib将数据可视化。测试算法:计算错误率。使用算法:错误率在可接受范围内,就可以运行k

2020-08-27 23:44:19 4708 3

原创 简单的K近邻算法实现(python)

引言 学了两天python基础之后,以及简单了解了一下简单的机器学习算法,以及py的第三方库numpy之后,python做数值计算相比java果然无比的方便通过所学知识简单地实现了一下最基础的K近邻分类算法,在此写篇博客记录一下此次学习。算法原理 初中时我们就学过两点间的距离公式,横纵坐标越相近的点,其类别也必然相似,举个极端的例子,相同事物的坐标必定相同,当然反之可能并不成立。因此如果我们可以将一个事物的特征抽象成一个二维或者多维的坐标,运用两点间的距离公式,就可以判断某个未知点的类别。

2020-08-26 17:22:33 1729

原创 微信小程序接口注册/登陆接口及界面开发实战(三)

引言 个人人为,相比前端开发,后端开发明显更注重逻辑思维,更注重代码的模块化,追求的低内聚,高可用,这其实也正是前端框架的组件化开发的思想的内核,所以即便没有前端框架基础,后端开发人员学习前端可谓是‘降维打击’。笔者认为MVC三层架构的思想核心即在于分层,为何要分层?初学者经常会有这种疑问,大家可以类比工厂分工,在流水线生产未到来之前,工人既不方便精细化管理,生产效率也不高,流水线让工人们各司其职,更便于发现问题和解决问题。代码分层的目的也是如此,提升开发的效率,让各大中间件可以与框架有机结合,

2020-08-16 23:18:45 3004 1

原创 微信小程序登陆/注册界面及接口开发实战(二)

项目预览登陆界面注册界面功能分析登陆模块: Login按钮:点击Login按钮,将文本框内容通过http协议的POST方法传递至后端服务器,成功则提示登陆成功,失败则提示登陆失败 Register按钮:点击Register按钮,跳转至注册界面 Reset按钮:点击Reset按钮,清空表单内容注册模块: Login按钮:点击Login按钮,跳转至登陆界面 Register按钮:点击Register按钮,将文本框内容通过http协议的POST方法传

2020-08-16 22:24:41 6436 8

原创 微信小程序注册/登陆页面及后台接口开发实战(一)

引言 最近刚好闲暇时间比较多,游戏又不好玩,女朋友又没有,似乎只有学习才能使我快乐了!!!于是开始了微信小程序的学习,博主平常主要做的是后端开发,对前端开发不是很熟悉,有不足之处还望批评指正。学习方式主要是:官方文档+代码调试,毕竟实践出真知。写这个系列的博客也是对这两天的入门学习进行一次总结。开发准备项目环境: 后端:jdk1.8+mysql5.5 前端:无开发工具: 后端:IDEA+Navicat 前端:微信开发者工具微信开发者工具下载1.去微信公众平台注册⼩

2020-08-16 20:04:50 4410

原创 JVM学习笔记———运行时数据区

文章开头,先来探讨一个问题,为什么JAVA的生态圈这么大,它的优势到底在哪里?个人认为,互联网公司选择一门技术,关注的是这门技术是否稳定,是否容易上手,是否方便进行二次开发,是否具有强的移植性。刚入门JAVA的时候,简单的认为面向对象这一编程思想是java语言最大的优势,直到接触到spring,了解了AOP(面向切面编程)的思想,最近又接触了一下JVM,才知晓什么是"坐井观天"。​ JAV...

2020-01-21 15:59:09 3199

原创 上传本地代码到github

上传本地代码到github第一步:建立git仓库在你想上传的文件夹下面,鼠标右键点击git bash here.执行Git命令:git init第二步:将项目的所有文件添加到仓库中执行git add .别把最后的 . 忘了,代表全部文件的意思如果想添加某个特定的文件,只需把“.”换成特定的文件名即可。第三步:将add的文件commit到仓库执行git commit -m...

2020-01-21 12:20:58 1552

原创 Docker配置阿里云镜像加速解决拉取镜像速度慢的问题

​ 在docker拉取镜像的时候,由于需要访问外网的缘故,拉取速度会非常的慢,下面来简要介绍一下怎么解决这一问题步骤一:首先登陆阿里云,没有账号就注册一个步骤二:在控制台搜索容器镜像服务步骤三:在最底端找到镜像加速服务并进入步骤四:根据操作系统版本找到相应的配置文件配置步骤:vi /etc/docker/daemon.json{"registry-mirrors...

2020-01-21 11:15:58 8199 3

原创 docker中centos7容器的安装及容器基本使用

文章开头,首先来探讨一个问题,docker中什么是镜像,什么是容器,镜像和容器有什么区别?就我个人理解,镜像就类似安装包,我们可以通过镜像创建不同的容器(类似解压),操作不同容器互不影响,这就是隔离。下面开始正题!!!!一,docker镜像的基本操作查看本地镜像docker images搜索镜像docker search centos搜索镜像并过滤是官方的docker sear...

2020-01-20 22:52:51 3103

原创 centos7下docker的安装

文章开头,首先来说下Docker的优点,市面上比较流行的一句总结叫做:“开箱即用,快速部署,可移植性强,环境隔离”,就我个人理解意思就是生产环境部署项目方便高效,大大提高生产效率.下面开始正题!!!​ 一 ,安装环境及准备工作​ centos7:docker官方要求的至少是3.8以上,建议3.10以上​ (我用的是腾讯云的学生服务器...

2020-01-19 23:04:25 1712

原创 SpringBoot整合MybatisPlus实现简单的crud操作

第一步:创建SpringBoot项目可以使用 Spring Initializer 快速初始化一个 Spring Boot 工程网址:https://start.spring.io引入web,mysql等依赖,generate之后直接解压引入IDEA即可第二步:添加MybatisPlus等依赖,直接在pom.xml文件中加入以下依赖即可<dependency> &lt...

2020-01-08 22:27:48 3522

原创 Linux下Zookeeper的搭建

1.linux⽤wget2.ZooKeeper下载地址:http://www.apache.org/dyn/closer.cgi/zookeeper3.ZooKeeper安装​ tar -zxvf zookeeper-3.4.8.tar.gz4.配置在“conf”⽬录下,新建⼀个名为“zoo.cfg”的⽂件,其中内容如下: tickTime=2000` dataDir...

2019-08-09 21:05:22 1390

原创 分布式中的Dubbo 和 Zookeeper

Dubbo是什么?为什么我们要用Dubbo1.Dubbo是什么?Apache Dubbo 是一个高性能,轻量级,基于Java的RPC框架。Dubbo提供三个关键功能,包括基于接的远程调用,容错和负载平衡以及自动服务注册和发现。2.Dubbo功能分析3.调用功能职责服务容器负责启动,加载,运行服务提供者。服务提供者在启动时,向注册中心注册自己提供的服务。服务消费者在启动时,向注册中心...

2019-08-09 20:45:33 1456

原创 分布式架构中不可不知的RPC远程调用

1.RPC是什么?RPC是指远程过程调用,也就是两台服务器A,B,一个应用部署到A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据。2.RPC怎么做?​ 连接:通过客户端和服务器之间建立TCP连接,远程过程调用的所有交换的数据都在这个连接里传输。​ 寻址:A服务器上的应用怎么告诉底层的RPC框架,...

2019-08-09 19:54:14 1523

原创 mysql学习总结

1.1 mysql的简介介绍1、什么是mysql?mysql是一个开源的关系型数据库管理系统,现在是oracle公司旗下的一款产品,由C和C++语言编写,可移植性高。支持在多种操作系统上安装,最常见有AIX,linux,window。mysql因为开源免费,所以受到了目前互联网行业的欢迎。以mysql作为数据库,linux系统作为操作系统,apache或者nginx作为web服务器,perl...

2019-05-06 18:37:24 1569

原创 mysql建表时常用的数据类型

数据类型是什么?数据类型是指列、存储过程参数、表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型。有一些数据是要存储为数字的,数字当中有些是要存储为整数、小数、日期型等…mysql常见数据类型如下:<1>整数型 类型 大小 范围(有符号) 范围(无符号unsigned) 用途 T...

2019-05-06 12:59:31 5471

原创 大型互联网架构常见问题

1.哪些组件和方法可以来提升网站性能,可用性以及并发量? 提高硬件能力,增加系统服务器。(当服务器增加到某个程度的时候系统所能提供的并发访问量几乎不变,所以不能根本解决问题) 使用缓存(本地缓存:本地可以使用jdk自带的Map , Guava Cache。分布式缓存:Redis,Memcache。本地缓存不适用于提高系统并发量,一般是用在程序中。比如Spring实现单例的时候,Spring把...

2019-05-04 21:17:01 1605 4

原创 前后端分离之SpringBoot2.x整合mybatis实现数据库的增删改查操作(二)

1.由于是前后端分离架构,因此会产生跨域问题,至于为何会产生跨域问题,自行百度,这里不多说跨域问题解决方案package com.example.demo1.corsConfig;//设置服务器允许跨域访问import org.springframework.context.annotation.Configuration;import org.springframework.web.s...

2019-04-28 22:18:35 3109 3

原创 前后端分离之SpringBoot2.x整合mybatis实现数据库的增删改查操作(一)

1.新建springBoot2.x项目,添加mybatis,mysql等依赖,太过基础,这里不多介绍。项目目录结构如下:pom.xml文件如下<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.o...

2019-04-28 22:04:58 4706 2

原创 SpringBoot2.x整合定时任务Schedule

1.启动类上开启定时任务注解 @EnableScheduling注:springboot会自动扫描主类包下的所有controller2 自定义Compoment @Compoment3.@Scheduled(fixedRate =1000*15)//每15s执行一次方法...

2019-04-28 13:00:35 2165 2

电信学院期末安卓课程设计源码(仅用于期末交流)

免费,仅用于期末交流学习!

2019-05-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除