自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 资源 (4)
  • 收藏
  • 关注

原创 背包问题的总结(01背包/完全背包/满包/不满包)

背包问题的总结(01背包/完全背包/满包/不满包)

2022-08-14 21:45:11 757 1

原创 并查集(Find-Union)解决无向图连通数量问题

并查集(Find-Union)解决无向图连通数量问题

2022-06-26 21:57:39 855

原创 LRU与LFU的原理与实现

LRU LFU 原理与python实现

2022-06-24 17:04:59 593

原创 特征选择方法

Feature Selection 特征选择单变量特征过滤Variance Threshold 方差选择法Pearson Correlation 皮尔森相关系数 (回归问题)Mutual Information互信息Chi-squared Statistics卡方统计量数据预处理后,我们生成了大量的新变量(比如独热编码生成了大量仅包含0或1的变量)。但实际上,部分新生成的变量可能是多余:一方面它们本身不一定包含有用的信息,故无法提高模型性能;另一方面过这些多余变量在构建模型时会消耗大量内存和计算能力。因此

2022-05-01 19:02:29 1041 1

原创 缺失值填补

缺失值填补单变量特征插补多元特征插补参考: https://github.com/YC-Coder-Chen/feature-engineering-handbook单变量特征插补假设第 i 列中有缺失值,那么我们将用常数或第 i 列的统计数据(平均值、中值或众数)对其进行估算from sklearn.impute import SimpleImputertest_set = X[0:10,0].copy() # 选择前十个变量作为测试集,无缺失值# 返回 array([8.3252, 8.3

2022-05-01 15:25:55 580

原创 常用类别变量编码方式总结

常用编码方式总结1. Ordinal Encoding 序列编码2. One-hot Encoding 独热编码3.Target Encoding 目标编码4. Hashing Encoding 哈希编码5. Catboost Encoder Catboost 编码参考:http://contrib.scikit-learn.org/category_encoders参考:https://github.com/YC-Coder-Chen/feature-engineering-handbook1. O

2022-05-01 15:04:04 2223 1

原创 第三届阿里云智维算法大赛总结

第三届阿里云智维算法大赛总结问题描述数据简述思路一模板匹配训练数据生成输入模型GridSearchCV调参思路二biL-lstm+attention其他问题描述给定一段时间的系统日志数据,参赛者应提出自己的解决方案,以诊断服务器发生了哪种故障。具体来说,参赛者需要从组委会提供的数据中挖掘出和各类故障相关的特征,并采用合适的机器学习算法予以训练,最终得到可以区分故障类型的最优模型。数据处理方法和算法不限,但选手应该综合考虑算法的效果和复杂度,以构建相对高效的解决方案。初赛会提供训练数据集,供参赛选手训练

2022-04-02 22:25:49 1925 5

原创 二分法、梯度下降法、牛顿法求解根号(Python)

解方程方法1. 梯度下降法(Gradient descent)python2. 牛顿迭代法(Newton's method)python3. 二分法1. 梯度下降法(Gradient descent)若要求根号下2,即要求解 x^2 - 2 = 0 的根, 也就是函数 L=(x2−2)2L=\left(x^{2}-2\right)^{2}L=(x2−2)2取极小值时 x 的取值。这个也就对应机器学习中的损失函数。要寻找损失函数的最低点就是找到曲线的最低点。在这里,我们使用了微积分里导数,通过求出函数导

2022-03-17 10:39:02 5771 1

原创 分类模型评估指标总结

混淆矩阵混淆矩阵实际预测 1预测 0真实值 1TPFN真实值 0FPTNTP = True Postive = 真阳性; FP = False Positive = 假阳性FN = False Negative = 假阴性; TN = True Negative = 真阴性引出True Positive Rate(真阳率)、False Positive(伪阳率)两个概念:TPR = TP / (TP + FN)FPR = FP / (FP + TN)T

2022-03-15 10:33:47 919

原创 DeepFM

DeepFM简介具体结构代码简介DeepFM是2017年华为若亚方舟团队提出的一个将FM与DNN有效结合的模型,主要借鉴Google的Wide&Deep论文的思想并进行适当改进,将其中wide部分(logistic回归)换成FM与DNN进特征交叉。wide和deep部分共享原始输入特征向量,这让DeepFM可以直接从原始特征中同时学习低阶和高阶特征交叉,因此不像Wide&Deep模型那样,需要进行复杂的人工特征工程(logistic回归部分需要人工特征工程),同时训练效率会更高(Deep

2021-08-22 17:14:14 1122

原创 矩阵分解算法与因子分解机

矩阵分解算法核心思想应用场景优缺点核心思想矩阵分解的目的是通过机器学习的手段将用户行为矩阵中缺失的数据(用户没有评分的元素)填补完整,最终达到可以为用户做推荐的目标。在推荐系统中,用户操作行为可以转化为如下的用户行为矩阵。用户对标的物的操作行为矩阵矩阵分解算法是将用户评分矩阵分解为两个矩阵的乘积。其中U,代表的用户特征矩阵,V代表标的物特征矩阵。某个用户对某个标的物的评分,就可以采用矩阵U对应的行(该用户的特征向量)与矩阵V对应的列(该标的物的特征向量)的乘积。有了用户对标的物的评分就很容易为用

2021-08-22 13:35:48 1520

转载 Word2vec原理CBOW与Skip-Gram模型基础

Word2vecWord2vecCBOWSkip-GramWord2vec词向量最早的词向量是很冗长的,它使用是词向量维度大小为整个词汇表的大小,对于每个具体的词汇表中的词,将对应的位置置为1。这种词向量的编码方式我们一般叫做one hot representation.One hot用来表示词向量非常简单,但是却有很多问题。首先,它是一个词袋模型,不考虑词与词之间的顺序(文本中词的顺序信息也是很重要的);其次,它假设词与词相互独立(在大多数情况下,词与词是相互影响的);最后,它得到的特征

2021-08-22 00:04:14 920

原创 文本特征提取算法-TF-IDF

TF-IDF算法原理及其使用详解TF-IDFsklearn实现TF-IDFTF-IDF(Term Frequency-inverse Document Frequency)是一种针对关键词的统计分析方法。用于评估一个词对一个文件集或者一个语料库的重要程度。一个词的重要程度跟它在文章中出现的次数成正比,跟它在语料库出现的次数成反比。这种计算方式能有效避免常用词对关键词的影响,提高了关键词与文章之间的相关性。其中TF(Term Frequency)指的是某词在文章中出现的总次数,该指标通常会被归一化定义为

2021-08-21 14:04:28 1895

原创 推荐系统的Pipeline架构总结

推荐系统的Pipeline架构1. 召回非个性化范式完全个性化范式群组个性化范式标的物关联标的物范式笛卡尔积范式2. 排序logistic回归模型GBDT模型Wide & deep模型DeepFM模型3. 业务调控思考推荐的流程一般分为召回、排序、业务调控3个阶段,召回就是将用户可能会感兴趣的标的物通过算法从全量标的物库中取出来,一般会采用多个算法来召回,比如热门召回、协同过滤召回、标签召回等,排序阶段将召回阶段的标的物列表根据用户可能的点击概率大小排序(即所谓的CTR预估)。在实际业务中,在排序

2021-08-20 23:36:56 1103

原创 正则化技术总结

正则化方法总结概念正则化方法L2-NormL1-NormDropout思考概念过拟合与正则化在机器学习里,使用少量样本去拟合了所有没见过的样本, 我们叫这种现象为“过拟合”。另外,我们训练模型的数据不可避免的存在一些测量误差或者其他噪音,比如下图中10个点,我们可以找到唯一个多项式来拟合所有点;也可以使用线性模型 y = 2x 拟合。简单来说,正则化是一种为了减小测试误差的行为(有时候会增加训练误差)。我们在构造机器学习模型时,最终目的是让模型在面对新数据的时候,可以有很好的表现。当你用比较复杂的模

2021-08-20 00:17:02 809

原创 损失函数的总结与推导

损失函数的总结与推导1. 概念区分2.回归常用损失函数2.1 均方差损失(MSE)2.2 平均绝对损失 (MAE)MAE与MSE的比较2.3 Huber Loss3.分类常用损失函数3.1 交叉熵损失3.1.1 二分类3.1.2 多分类分类为什么是交叉熵总结1. 概念区分Loss Function损失函数 Loss Function损失函数 Loss Function还分为经验风险损失函数和结构风险损失函数。经验风险损失函数指预测结果和实际结果的差别,通常是针对单个训练样本而言,给定一个模型输出

2021-08-20 00:06:13 5388

原创 激活函数总结

激活函数总结为什么需要激活函数Sigmoid激活函数Tanh激活函数整流线性单元(ReLU)指数线性单元(ELU)SELULeaky ReLUParametric ReLU (PRELU)Gaussian Error Linear Unit(GELU)SwishData Adaptive Activation Function(Dice)MaxoutSoftplusSoftmax如何选择激活函数?为什么需要激活函数激活函数之性质**1. 非线性:**即导数不是常数。保证多层网络不退化成单层线性网络。这

2021-08-20 00:04:20 795

原创 模型优化方法总结

模型优化方法总结1. 梯度下降法SGD2. 动量法Momentum3. RMSpropAdamAdamWLookahead,RAdam?LazyAdam参考资料模型优化方法的选择直接关系到最终模型的性能。有时候效果不好,未必是特征的问题或者模型设计的问题,很可能是优化算法的问题,而且好的优化算法还能够帮助加速训练模型。深度学习模型的发展进程:SGD -> SGDM ->NAG -> AdaGrad -> AdaDelta -> Adam -> Nadam1.整体框

2021-08-20 00:01:50 10110

原创 Logistic原理与公式推导

逻辑回归原理与公式手推逻辑回归(Logistic Regression)逻辑回归(Logistic Regression)逻辑回归算法实际上是一种分类算法,它适用于标签 ???? 取值离散的情况,预测的变量 ???? 是离散的值,如:1 0 0 1。要搞清楚逻辑回归的原理必须要从概率和似然性说起。我们常常用概率描述一个事件发生的可能性。而似然性正好反过来,意思是一个事件实际已经发生了,反推在什么参数条件下,这个事件发生的概率最大。即:已知参数 β 前提下,预测某事件 x 发生的概率是 P(x |

2021-08-19 23:58:27 1191

原创 BP神经网络公式推导

BP神经网络公式推导神经元简介公式推导神经元简介为了构建神经网络模型,我们需要首先思考大脑中的神经网络是怎样的?每一个神经元都可以被认为是一个处理单元/神经核(processing unit/Nucleus),它含有许多输入/树突(input/Dendrite),并且有一个输出/轴突(output/Axon)。神经网络是大量神经元相互链接并通过电脉冲来交流的一个网络。神经元之间通过电信号进行沟通(微弱的电流)。所以如果神经元想要传递一个消息,它就会就通过它的轴突,发送一段微弱电流给其他神经元的树突。

2021-08-19 23:57:23 592

原创 数据结构经典算法(待完善)

数据结构与经典算法数组链表二叉树栈与队列字符串排序动态规划分治法贪心滑动窗口数组链表二叉树#94. 二叉树的中序遍历&节点个数class TreeNode: def __init__(self,val = None,left = None,right = None): self.val = val self.left = left self.right = rightclass Solution: c = 0 de

2021-08-17 23:38:10 486 1

原创 十种排序算法代码

十种排序算法Python实现1. 原理2.代码1. 原理排序过程原理总结https://zsaisai.github.io/sort-summary/2.代码class Solution(object): ''' 1.冒泡排序:bubbleSort() 2.选择排序:selectionSort() 3.插入排序:insertionsort() 4.希尔排序:shellSort() 5.归并排序:mergeSort() 6.快速排序:quick

2021-08-09 16:15:36 432

原创 相似度算法

相似度算法简单总结欧几里得距离皮尔逊相关系数最近开始研究推荐系统,其中常见的相似度算法有以下几种:欧几里得距离欧几里得比较常见,是一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。注意事项:a.因为计算是基于各维度特征的绝对数值,所以欧氏度量需要保证各维度指标在相同的刻度级别,比如对身高(cm)和体重(kg)两个单位不同的指标使用欧式距离可能使结果失效。b.欧几里得距离是数据上的直观体现,看似

2021-07-09 19:51:06 586

原创 MD5加密与python实现

MD5文件加密python实现MD5文件加密python实现EXE生成软件MD5文件加密MD5,全名Message Digest Algorithm 5 ,中文名为消息摘要算法,为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。主要是通过特定的hash散列方法将文本信息转换成简短的信息摘要,压缩+加密+hash算法的结合体,是不可逆的。主要应用1、一致性验证MD5的典型应用是不同消息(文件)的MD5码不一样,所以经常用来检验文件是否被修改过。2、数字证书数字签名应用。3、安全

2021-07-08 11:55:36 882

原创 Protobuffer与GRPC的使用与测试

Protobuf与GRPC1. ProtobufferProtobuffer定义使用2. GRPCGRPC定义使用3.ghz请求测试1. ProtobufferProtobuffer定义Protobuf实际是一套类似Json或者XML的数据传输格式和规范,用于不同应用或进程之间进行通信时使用。通信时所传递的信息是通过Protobuf定义的message数据结构进行打包,然后编译成二进制的码流再进行传输或者存储。Protobuf的优点相比较而言,Protobuf有如下优点:足够简单序列化后体

2021-07-02 16:43:25 753 1

原创 Git的完整流程

Git获取与提交代码完整流程获取查看提交其他获取git clone xx@xxxxxx.git #连接远程仓库,注意这个xx@xxxxxx.git是你gitlab上的project的地址查看提交其他

2021-06-27 17:47:44 4831

原创 SMTP发送邮件(Python)

@TOCSMTP协议协议简介:SMTP协议(simple mail transfer protocol) 简单邮件传输协议定义了邮件客户端与SMTP服务器之间、两台SMTP服务器之间的通信规则分为标准SMTP协议和扩展SMTP协议。扩展SMTP协议在标准SMTP协议上增加了邮件安全的认证 通信双方采用一问一答的命令/响应模式底层基于TCP/IP的应用层协议、默认网络监听号25SMTP(简单邮件传输协议),邮件传送代理程序使用SMTP协议来发送电邮到接收者的邮件服务器。SMTP协议只能用来发

2021-06-16 22:07:24 462

原创 Hive-SQL学习笔记

HIVE-SQLDDL(Data Defination Language)DML(Data manipulation language)DQL(data query language)Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据表,并提供类似于SQL(HiveSQL)的操作功能。在Hive中,本质上是将SQL转换成为MapReduce程序。Hive的基本操作与传统的数据库的操作类似,所不同的是Hive的SQL语句会转换成MapReduce程序执行,对于特定的查询等操

2021-06-16 19:51:18 275

原创 Aws/Doceker/Hadoop命令总结

Aws/Doceker/Hadoop命令总结AwsDoceker-imageHadoopAws用命令行管理aws s3管理存储桶创建桶;$ aws s3 mb s3://bucket-name删除桶:$ aws s3 rb s3://bucket-name删除非空桶:$ aws s3 rb s3://bucket-name --force列出存储桶$ aws s3 ls列出存储桶中所有的对象和文件夹$ aws s3 ls s3://bucket-name列出桶中 bucket-

2021-06-16 18:27:42 232

转载 Linux的crontab使用

Linux的Crontab用法Crontab配置文件crontab命令详解实例在Linux系统的实际使用中,可能会经常碰到让系统在某个特定时间执行某些任务的情况,比如定时采集服务器的状态信息、负载状况;定时执行某些任务/脚本来对远端进行数据采集等。这里将介绍下crontab的配置参数以及一些使用实例。Crontab配置文件Linux下的任务调度分为两类:系统任务调度和用户任务调度。Linux系统任务是由 cron (crond) 这个系统服务来控制的,这个系统服务是默认启动的。用户自己设置的计划任务

2021-06-15 11:34:45 116

原创 机器学习十大算法案例

机器学习十大算法案例实现监督学习1. 线性回归2. 逻辑回归3. 神经网络4. SVM支持向量机5. K邻近6. 贝叶斯7. 决策树8. 集成学习非监督学习9. 降维—主成分分析10. 聚类分析监督学习1. 线性回归2. 逻辑回归3. 神经网络4. SVM支持向量机5. K邻近6. 贝叶斯7. 决策树8. 集成学习非监督学习9. 降维—主成分分析10. 聚类分析跳转 —>聚类分析综述与案例实现...

2021-06-14 19:23:46 49513 139

原创 特征选择-卡方检验与互信息(python)

特征选择(卡方检验与互信息)特征选择的主要目的有两点:减少特征数量提高训练速度,这点对于一些复杂模型来说尤其重要减少noisefeature以提高模型在测试集上的准确性。一些噪音特征会导致模型出现错误的泛化(generalization),从而在测试集中表现较差。另外从模型复杂度的角度来看,特征越多模型的复杂度越高,也就越容易发生overfitting。互信息(Mutual information)和卡方检验(chisquare)是两种比较常用的特征选择方法:互信息互信息是用来评价一个事件的

2021-05-22 20:49:01 2166

原创 Hadoop发展与核心架构

Hadoop发展与核心架构HadoopHadoop的发展Hadoop的核心架构HDFSMapReduceHadoop的生态圈SparkHadoopHadoop的发展1998年9月4日,Google公司在美国硅谷成立。正如大家所知,它是一家做搜索引擎起家的公司。一位名叫Doug Cutting的美国工程师,迷上了搜索引擎。他做了一个用于文本搜索的函数库(姑且理解为软件的功能组件),命名为Lucene。他做了一个用于文本搜索的函数库(姑且理解为软件的功能组件),命名为Lucene。后来又升级做出修改版Nu

2021-05-19 18:26:36 383

翻译 NLP技术发展综述

NLP技术发展史2001 - Neural language models(神经语言模型)2008 - Multi-task learning(多任务学习)2013 - Word embeddings( 词嵌入)2013 - Neural networks for NLP2014 - Sequence-to-sequence models2015 - Attention2015 - Memory-based networks2018 - Pretrained language models翻译原文来自:

2021-05-19 15:58:34 3645 2

原创 SQL调优简单总结

SQL调优https://www.cnblogs.com/jstarseven/p/12720551.html

2021-05-19 11:19:04 2466

原创 Encoder-decoder模型及Attention机制

Seq2Seq模型及Attention机制Seq2Seq模型Attention机制Seq2Seq模型seq2seq模型最早可追溯到2014年的两篇paper [1, 2],主要用于机器翻译任务(MT)。seq2seq本质上是一种encoder-decoder框架,以翻译任务中的“英译汉”为例,模型首先使用编码器对英文进行编码,得到英文的向量化表示S,然后使用解码器对S进行解码,得到对应的中文。由于encoder与decoder两端处理的都是序列数据,所以被称为sequence-to-sequence,简

2021-05-06 20:38:37 6331 1

原创 Ubantu环境部署笔记

Ubantu环境部署系统安装二级目录三级目录系统安装http://www.360doc.com/content/15/0902/16/803694_496491534.shtml二级目录三级目录

2021-04-14 18:45:50 108

原创 LeNet-ResNet-AlexNet网络详解

LeNet-AlexNet-VGG-ResNet-DenseNetLeNetLeNet不计输入层,LeNet-5共有7层,每一层的结构为:输入层:输入图像的尺寸统一归一化为32*32。C1层-卷积层输入图片:3232卷积核大小:55卷积核种类:6输出feature map大小:2828 (32-5+1)=28神经元数量:28286可训练参数:(55+1) * 6(每个滤波器55=25个unit参数和一个bias参数,一共6个滤波器)连接数:(55+1)62828=12230

2021-04-14 11:18:43 1975

原创 解决Initializing libiomp5md.dll, but found libiomp5md.dll already initialized问题

方式一:(亲测有效)允许副本存在,忽略报错;在程序中添加如下代码:import osos.environ["KMP_DUPLICATE_LIB_OK"]="TRUE"方式二:把numpy卸载干净再重装

2021-04-09 16:02:20 6311 5

原创 eclipse导出的war包反编译为java项目

之前的项目找不到了,只有eclipse导出的war包,第一思路当然是试试解压,然后发现解压是完全OK的,但是里面的java文件在项目封装的时候一般是不会放在里面的,里面只有class类文件。这里推荐下载一个小工具,在http://jd.benow.ca/官网下载jd-gui工具,按照自己的系统下载。jd-gui工具需要jdk1.8的运行环境,下载后打开。将自己的war后缀改为.zip,然后解压出来,解压出来后我们可以看到web-app下面的文件全部都在,只有java文件不存在,但是在WEB

2021-04-05 21:51:53 669

Netframework3.5 离线安装包(含安装脚本)

解压后,修改install脚本Source后的路径为你的磁盘路径即可,右键管理员运行脚本,即可离线安装。

2021-10-12

md5文件加密exe软件(直接使用)

md5文件加密exe软件(无需注册和付费)

2021-07-08

常用聚类分类数据集(32个txt格式)

二维多维不同簇数的点集,螺旋分布、月牙分布、环形分布等数据集,共30余种

2020-12-04

Mathpix Snipping Tool软件

截图数学公式生成latex,注册需要到官网Mathpix Snipping Tool注册。

2020-12-04

空空如也

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

TA关注的人

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