自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 原型模式实例-浅拷贝与深拷贝(Serializable)

原型模式实例问题描述结果图编程实现Photo类Resume类客户端问题描述在某在线招聘网站中,用户创建一个简历模板。针对不同的工作岗位,可以复制该简历模板并进行适当修改后,生产一份新的简历。在复制简历时,用户可以选择是否复制简历中的照片:如果选择“是”,则照片将一同被复制,用户对新简历的修改不会影响简历模板中的照片,对模板进行修改也不会影响新的简历;如果选择“否”:则直接引用简历模板的照片,修改简历模板中的照片将导致新的简历一同修改,反之亦然。结果图编程实现Photo类public class

2021-07-14 19:28:29 1835

原创 桥接模式实例-图片添加滤镜

桥接模式实例问题描述结果图编程实现Image抽象类具体图像类滤镜接口滤镜类具体实现客户端问题描述某手机美图APP软件支持多种不同的图像格式,例如JPG、GIF、BMP等常用图像格式,同时提供多种不同的滤镜对图像进行处理,例如木刻滤镜(Cutout)、模糊滤镜(Blur)、锐化滤镜(Sharpen)、纹理滤镜(Texture)等。现在采用桥接设计模式设计该APP软件,使得该软件能够为多种图像格式提供一序列图像处理滤镜,同时还能够增加新的图像格式和滤镜。结果图编程实现Image抽象类public

2021-07-13 11:07:55 2562

原创 外观模式实例-智能手机一键备份

外观模式实例问题描述结构图编程实现需要交互的类Facade类客户端问题描述某软件公司为新开发的智能手机控制与管理软件提供一键备份功能,通过该功能可以将原本存储在手机中的通讯录、短信、照片、音乐等资料一次性拷贝到移动存储介质中(例如:SD卡)中。在实现过程中需要与多个已有的类进行交互,如通讯录管理类、短信管理类。结构图编程实现需要交互的类public class ContactsManager { private String contacts; public Contacts

2021-07-09 16:18:37 2627

原创 装饰模式实例

装饰模式实例问题描述结构图编程实现Table类(被装饰者)抽象装饰者类具体装饰者类客户端问题描述在某OA系统中提供一个报表生成工具,用户可以通过该工具为表格增加表头和表尾,允许用户为报表增加多个不同的表头和表尾,用户还可以自行确定表头和表尾的次序,为了能够灵活的设置表头和表尾的次序并且易于增加表头和表尾。结构图编程实现Table类(被装饰者)public class Table { private int rowNum; private int colNum; priv

2021-07-09 12:16:50 1582

原创 建造者模式实例

建造者模式问题描述结构图编程实现Car类抽象的Builder类具体的Builder类Director类客户端类问题描述在赛车游戏中,赛车包括方程式赛车、场地越野赛车、运动汽车、卡车等类型,不同类型的赛车的车身、发动机、轮胎、变速箱等部件有所区别。玩家可以自行选择赛车类型,系统将根据玩家的选择创建出一辆完整的赛车。结构图编程实现Car类public class Car { private String body; private String engine; privat

2021-07-09 10:36:08 1453 2

原创 适配器模式实例

适配器模式实例问题描述结构图编程实现Encode类适配者类(Adaptee)适配器类(Adapter)客户端类问题描述某OA系统需要提供一个加密模块,将用户机密信息(如:用户口令、邮箱等)加密之后再存储到数据库中,系统已经定义好了数据库操作类。为了提高开发效率,系统需要重用已有的加密算法,这些算法封装在一些由第三方提供的类中,有些甚至没有源代码,试用适配器模式设计该加密模块,实现在不修改现有类的基础上重用第三方的加密方法。结构图编程实现Encode类public interface Encod

2021-07-07 13:40:30 3639

原创 抽象工厂模式实例

抽象工厂模式实例问题描述结构图编程实现Connection类Statement类Factory类Properties文件客户端问题描述某系统为改进数据库操作的性能,用户可以自定义数据库连接对象Connection和语句对象Statement,针对不同类型的数据提供不同的连接对象和语句对象,例如提供Oracle或MySQL专用连接类和语句类,而且用户可以通过配置文件等方式根据实际需要动态更换系统数据库。结构图编程实现Connection类public interface Connection {

2021-07-06 12:16:16 1329

原创 工厂方法模式实例

工厂方法模式实例问题描述结构图编程实现Connection类工厂类客户端问题描述在某网络管理软件中,需要为不同的网络协议提供不同的网络连接类,例如针对POP3协议的连接类POP3Connection,针对IMAP协议的连接类IMAPConnection,针对HTTP协议的连接类HTTPConnection等。由于网络连接对象创建的过程较为复杂,需要将其创建过程封装到专门的类中,该软件还支持更多类型的网络协议。结构图编程实现Connection类public interface Connecti

2021-07-04 18:22:32 3133 2

原创 简单工厂模式实例

简单工厂模式实例问题描述结构图编程实现接口实现类自定义UnsupportedShapeException异常类工厂类客户端问题描述使用简单工厂模式设计一个可以创建不同几何形状(Shape),如圆形(Circle)、矩形(Rectangle)和三角形(Triangle)等的绘图工具类,每个几何图形均具有绘制Draw()和擦除Erase()两个方法,要求在绘制不支持的几何图形时,抛出一个UnsupportedShapeException异常。绘制类图并编程模拟实现。结构图编程实现接口publ

2021-07-04 17:43:09 3098

原创 备忘录模式实现撤销(Undo)和重做(Redo)功能

备忘录模式实现撤销和重做功能问题结构类图程序代码问题某文字编辑软件须提供撤销(Undo)和重做/恢复(Redo)功能,并且该软件可支持文档对象的多步撤销和重做。开发人员决定采用备忘录模式来实现该功能,在实现过程中引入栈(Stack)作为数据结构。结构类图程序代码//备忘录类public class Memento { private String state; public Memento(UnRedoOriginator unRedoOriginator) {

2021-06-10 20:33:55 2013

原创 经典排序算法:快速排序、归并排序、堆排序、选择排序、希尔排序、插入排序、冒泡排序(Java版)

经典排序算法定义排序类插入排序希尔排序选择排序冒泡排序快速排序堆排序归并排序用Java实现经典的排序算法,便于以后查询使用定义排序类public class Sort{ public int[] arr; public Sort(int n){ arr=new int[n]; } public Sort(int[] arr){ int len=arr.length; this.arr=new int[len]; for(int i=0;i<len;++i){ thi

2020-12-12 18:38:37 154

原创 遗传算法求解K图染色问题(java版)

遗传算法:K图着色问题先修知识问题描述问题分析:伪代码局限性图节点文本文件具体实现先修知识若你对模拟退火算法的思想不是很熟悉,可以先阅读以下两篇文章,了解什么是模拟退火算法。遗传算法图文详解问题描述对于文件给出的一个有 500 个节点的图形(n500),利用遗传算法,求最少可用几种颜色能对其进行着色?并给出对应的着色方案。问题分析:题目的目标是用3种颜色,将图1中的每个节点上色,且保证相邻节点间颜色不同;a) 首先我们依次将图1中的每个节点随机染色,得到一个解序列S;b) 设置初始种群数

2020-12-12 18:26:30 2720 1

原创 HBase Java API之TableDescriptorBuilder,ColumnDescriptorBuilder创建表、列族

HBase用Java API创建表背景实现HBase用Java API创建表、列族背景HBase 2.2.2 Jave API 中使用HTableDescriptor与HColumnDescriptor时提示不推荐使用了,并且在3.0.0版本将删除,而是使用TableDescriptorBuilder和ColumnFamilyDescriptorBuilder实现HBase用Java API创建表、列族import org.apache.hadoop.conf.Configuration;impo

2020-12-07 12:18:20 3932 1

原创 模拟退火算法求解K图染色问题(java版)

模拟退火算法:K图着色问题先修知识问题描述问题分析:伪代码局限性图节点文本文件具体实现先修知识若你对模拟退火算法的思想不是很熟悉,可以先阅读以下两篇文章,了解什么是模拟退火算法。模拟退火算法图文详解模拟退火算法TSP问题java实现本文算法的细节步骤,如领域解集的更新采取的是局部搜索原理,因此在阅读本文之前。请先参考以下文章,了解什么是局部搜索算法。局部搜索法求解K图着色问题(java版)问题描述对于文件给出的一个有 500 个节点的图形(n500),利用局部搜索算法,求最少可用几种颜色能

2020-11-28 15:55:55 3592 9

原创 局部搜索法求解K图染色问题(java版)

局部搜索法:K图着色问题问题描述问题分析:伪代码:简单实例图节点文本文件具体实现问题描述对于文件给出的一个有 500 个节点的图形(n500),利用局部搜索算法,求最少可用几种颜色能对其进行着色?并给出对应的着色方案。问题分析:题目的目标是用3种颜色,将图1中的每个节点上色,且保证相邻节点间颜色不同;a) 首先我们可以建立三个颜色集合C1、C2、C3,依次将图1中的每个节点随机放入一个颜色集合中;b) 计算每个颜色集合中,产生冲突的个数之和作为初始的冲突值initConflicts;c) 然

2020-11-27 21:50:22 1943 4

原创 回溯法求解K图染色问题(java版)

K图着色问题问题描述:问题分析:伪代码:局限性具体实现问题描述:对如图 1 所示的图,采用局部搜索算法,求其对应的 3 着色方案。问题分析:题目的目标是用3种颜色,将图1中的每个节点着色,且保证相邻节点间颜色不同;a) 首先我们可以建立一个颜色集合color[9]color[9]color[9],存储每个节点的颜色b) 从前向后遍历每个节点,让每个节点从3种颜色中选择一种颜色,判断是否与其相邻节点冲突;若冲突,则选则下一种颜色,没有颜色可选时,回溯至上一节点,更改其颜色c) 当所有节点都着色

2020-11-27 21:16:29 1202 1

原创 GBDT二元分类算法Python实现

GBDT二元分类算法GBDT(梯度提升树)二元分类1.什么是GBDT(梯度提升树)?2.GBDT处理二元分类问题3.GBDT二元分类算法具体实现3.1构造CART回归树3.2GBDT具体实现4.数据集GBDT(梯度提升树)二元分类1.什么是GBDT(梯度提升树)?如果你还不是很熟悉GBDT的基本原理,请参考以下两篇博文1.GBDT(梯度提升树)基本原理及python实现2.GBDT原理详解2.GBDT处理二元分类问题这篇博文讲的很好,请参考深入理解GBDT二分类算法3.GBDT二元分类算法

2020-11-14 20:16:16 9429 4

原创 CART树二元分类算法Python实现

CART树二元分类1.数据集划分的衡量标准-gini系数1.1二元分类问题的gini系数CART树基本原理python代码实现二元分类数据集1.数据集划分的衡量标准-gini系数gini系数衡量一个数据集的纯度,数据集越纯,基尼系数越小。在构建CART二元分类树时,就使用gini系数的大小来衡量数据集的划分效果。具体的,在分类问题中,假设有K个类别,第k个类别的概率为pkp_{k}pk​, 则基尼系数的表达式为:Gini=∑k=1Kpk(1−pk)=1−∑k=1Kpk2Gini=\sum_{k=1

2020-11-14 19:50:05 634

原创 GBDT(梯度提升树)基本原理及python实现

GBDT实现原理GBDT基本原理背景提升树-boosting treeGBDT实例预测年龄预测年龄的残差GBDT公式推导GBDT的python实现CART回归树实现GBDT实现参考GBDT基本原理背景决策树是一种基本的分类与回归方法。决策树模型具有分类速度快,模型容易可视化等优点,但是同时是也有容易发生过拟合,虽然有剪枝,但也是差强人意。如果你CART树(对分类回归树)的知识不熟悉,请看这篇文章:CART分类回归树分析与python实现提升方法(boosting)在分类问题中,它通过改变训练样本

2020-10-23 15:16:51 5337

原创 推荐系统之FFM模型及python实现

特征域感知的因子分解机模型 FFM模型的基本原理FFM模型引入FFM模型数学公式FFM模型学习Adagrad算法更新学习率适用范围和使用技巧FFM模型python代码实现参考)FFM模型的基本原理FFM模型引入考虑以下数据集:其中:Publisher、Advertiser、Gender表示特征域(field),EPSN、NBC、NIKE、Adidas、Male、Female表示one-hot编码的特征(feature)对于第一条数据来说,FM模型的二次项为:wEPSN⋅wNike+wEPSN

2020-10-19 12:08:06 1380 1

原创 解决sigmoid/softmax指数运算溢出问题及python实现

sigmoid/softmax指数运算溢出问题sigmoid/softmax指数运算溢出问题解决sigmoidsigmoidsigmoid函数溢出问题解决LR模型中计算cross entropy溢出问题解决softmaxsoftmaxsoftmax函数溢出问题参考sigmoid/softmax指数运算溢出问题sigmoid和softmax函数在计算中,都会用到指数运算e−xe^{-x}e−x或exe^{x}ex,如果在e−xe^{-x}e−x中xxx是一个很小的负数,如-128等,或者在e−e^{

2020-10-18 12:34:14 6373 3

原创 因子分解机模型FM原理与python实现

这里写目录标题一级目录二级目录参考一级目录二级目录参考1.FM模型的算法思想2.『我爱机器学习』FM、FFM与DeepFM

2020-10-18 10:49:22 1038 1

原创 推荐系统之矩阵分解MF原理及Python实现

矩阵分解(Matrix Factorization)矩阵分解基本原理用户矩阵U与物品矩阵V求解实现矩阵分解Python代码参考矩阵分解基本原理将mn维的共现矩阵R分解为mk维的用户矩阵U和k*n维的物品矩阵V相乘的形式。其中m是用户数量,n是物品数量,k是隐向量维度。k的大小决定了隐向量表达能力的强弱。k取值越小,隐向量的表达能力就越弱;反之,k取值越大,隐向量表达能力越强实例:基于用户矩阵U和物品矩阵V,用户u对物品i的预估评分为:r^ui=qiTpu\hat{r}_{ui}=q_{i}^{T

2020-10-16 17:18:31 6327 4

原创 离线pandas安装教程

pandas安装教程Python版本需要的依赖包安装安装包下载Python版本python版本:3.7.6 (64位)需要的依赖包1.numpy-1.19.0+mkl-cp37-cp37m-win_amd64.whl2.six-1.5.1-py2.py3-none-any.whl3.python_dateutil-2.8.1-py2.py3-none-any.whl4.pytz-2020.1-py3-none-any.whl5.setuptools-49.6.0-py3-none-any.w

2020-10-11 20:33:57 6421 2

原创 推荐系统常用的评价指标:HR、NDCG、MRR

推荐系统常用的评价指标应用背景介绍评价指标的知识来源命中率HR(Hits Ratio)归一化折损累计增益(Normalized Discounted Cumulative Gain,NDCG)平均倒数排名(Mean Reciprocal Rank,MRR)实例参考应用背景介绍我们用一张表格展示推荐系统向用户推荐的列表与用户真实的访问项目,如下:用户真实值推荐列表A123,10,15,12,17B320,15,18,14,30C52,5,7,8,15D

2020-10-10 21:34:47 24731 10

原创 推荐系统之基于用户行为数据的协同过滤(Collaborative Filtering)

协同过滤算法什么是用户行为数据?基于邻域的协同过滤算法1.基于用户的协同过滤算法(UserCF):2.基于物品的协同过滤算法(ItemCF):3.相似度如何计算:3.1欧几里得距离(Euclidean Distance)参考什么是用户行为数据?用户行为数据在网站上最简单的存在形式就是日志,比如用户在电子商务网站中的网页浏览、购买、点击、评分和评论等活动。用户行为在个性化推荐系统中一般分为两种——显性反馈行为(explicit feedback)和隐性反馈行为(implicit feedback)。显性

2020-10-08 12:26:03 2336

原创 机器学习常用评价指标:ACC、AUC、ROC曲线

系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、混淆矩阵二、评价指标1.准确度(Accuracy)总结欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一

2020-10-06 14:14:39 47772 1

原创 Python3:UTF-8编码字符串转换中文、Unicode编码

在Python3中

2020-02-21 19:03:26 6987 1

原创 Error: Incomplete Type Class

将A与B两个类分别写到A.h和B.h中,编译时出现Error: Incomplete Type Class 错误IDE:Code::Blocks编译器:GCC将A与B两个类分别写到A.h和B.h中A.h的内容如下:#include “B.h”Class B;//前向声明Class A{void use(B *b)}B.h的内容如下:#include “A.h”Class...

2019-06-15 22:28:03 784

原创 Code::Blocks 缺少gdb.exe调试失败,可能解决的一个MinGW编译器文件夹

这里写自定义目录标题刚刚使用Code::Block开发环境不久,下午写排序算法的时候,结果一直不正确,准备调试一下程序!用Code::Block的Debugger调试程序发现出现failed错误,点击Setting->Debugger->default发现里面的Executable Path为空;然后去自己的MinGW文件里竟然没有gdb.exe,寻求网上的解决方法:1.刚开始...

2019-06-03 21:55:22 7275 7

空空如也

空空如也

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

TA关注的人

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