6 anshuai_aw1

尚未进行身份认证

暂无相关简介

等级
TA的排名 1w+

PU learning简介(附python代码)

一、引言在现实生活中,有许多只有正样本和大量未标记样本的例子。这是因为负类样本的一些特点使得获取负样本较为困难。比如:负类数据不易获取。负类数据太过多样化。负类数据动态变化。举一个形象点的例子:比如在推荐系统里,只有用户点击的正样本,却没有显性负样本,我们不能因为用户没有点击这个样本就认为它是负样本,因为有可能这个样本的位置很偏,导致用户没有点。因此,有研究人员开始关注PULea...

2019-04-23 18:16:50

深入理解L0,L1和L2正则化

正则化技术是机器学习中常用的技术,一般是用来解决过拟合问题的。为什么范数可以作为机器学习的正则化项?为什么L1正则化可以用来进行特征选择的工作?为什么正则化可以解决过拟合问题?本篇博客从机器学习中为什么需要范数讲起,引出L0L_0L0​,L1L_1L1​和L2L_2L2​的定义,然后回答上述的问题。文章目录一、损失函数与目标函数二、范数与正则项2.1定义2.2L1和L2范数的对比2.2...

2019-04-21 18:27:57

分类问题中类别不平衡问题的有效解决方法

LightGBM二分类处理:在LGBM的文档中,可以看到有两个参数来处理类别不平衡,分别是is_unbalance和scale_pos_weight。在上图中的介绍中,这2个参数只能选其一,不能同时选。这说明了什么呢?这2个参数肯定是起到了相同的作用。这2个参数的关系是什么呢?在issue中找到了答案:ifis_unbalance=true,weightofeachpos...

2019-04-14 14:13:51

适合工业界的特征选择方法介绍

一直想写一篇关于特征选择(FeatureSelection)的博客。有两个原因:第一、特征选择对于传统机器学习任务是十分重要的;第二、自己在硕士期间的研究方向就是特征选择,对于学界前沿的特征选择方法是有那么一丢丢了解的。在有监督,无监督,半监督以及单标签,多标签各种场景下,也做过一些工作:《Local-nearest-neighbors-basedfeatureweightingfor...

2019-04-02 12:44:23

Spark性能调优详解

本文完全转载自《美团技术沙龙》和过往记忆博客。在大数据计算领域,Spark已经成为了越来越流行、越来越受欢迎的计算平台之一。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计算操作,应用范围与前景非常广泛。然而,通过Spark开发出高性能的大数据计算作业,并不是那么简单的。如果没有对Spark作业进行合理的调优,Spark作业的执...

2019-04-01 15:46:39

蓄水池采样算法(Reservoir Sampling)原理,证明和代码

有一个在大数据下很现实的例子:“给出一个数据流,这个数据流的长度很大或者未知。并且对该数据流中数据只能访问一次。请写出一个随机选择算法,使得数据流中所有数据被选中的概率相等。”解决这个问题既需要算法设计,又需要一些概率论知识,因此对于大多数人,起码包括我,这不是一个立刻就能想出答案的问题。解决这个问题的算法叫蓄水池采样(ReservoirSampling)算法。本篇博客介绍该算法的原理、证...

2019-03-22 21:01:30

(一)异常检测算法:Isolation Forest原理及其python代码应用

异常检测(anomalydetection),又被称为“离群点检测”(outlierdetection),是机器学习研究领域中跟现实紧密联系、有广泛应用需求的一类问题。但是,什么是异常,并没有标准答案,通常因具体应用场景而异。大多数文献对异常的定义虽然笼统,但其实暗含了认定“异常”的两个标准或者说假设:异常数据跟样本中大多数数据不太一样。异常数据在整体数据样本中占比比较小。为了刻...

2019-03-13 20:19:16

Python: 一文看懂pandas的透视表pivot_table

本文转载自知乎《Pandas|一文看懂透视表pivot_table》,在原文基础上略有增删改。感谢原作者非常生动的例子。目录一、概述1.1什么是透视表?1.2为什么要使用pivot_table?二、如何使用pivot_table2.1读取数据2.2Index2.3Values2.4Aggfunc2.5Columns2.6pivot_t...

2019-03-11 18:31:21

python:column_or_1d用法

今天在读代码的时候,发现Pythonsklearn的utils有个这样的函数:sklearn.utils.validation.column_or_1d。第一次遇到这个函数,记录一下用法。在机器学习任务中,这个函数一般是对数据集的Y进行操作。官方说明如下:可以看到对1维array进行raval()。warn是提出警告。这个警告是说,如果我们输入的y是2D的形式(shapes,1...

2019-03-11 15:38:10

(一)推荐算法概述——以协同过滤为主

推荐算法具有非常多的应用场景和商业价值,因此对推荐算法需要认真学习。推荐算法种类很多,但是目前应用最广泛的应该是基于协同过滤的推荐算法。本文总结了多种推荐算法,其中重点对协同过滤的推荐算法做一个概括。目录一、推荐系统的作用二、推荐算法概述2.1基于流行度的算法2.2协同过滤算法2.2.1基于用户的CF2.2.2基于物品的CF2.3基于内容的算法2....

2019-03-06 20:51:45

(二)常见的分类评价指标及代码实现与应用

在上一篇《(一)常见的回归评价指标及代码应用》中我们介绍了评价回归性能的指标。sklearn的官方文档《Modelevaluation:quantifyingthequalityofpredictions》中,对于二分类,多分类和多标签问题,有非常详细的指标介绍和实现。本篇博客我们只介绍常见的分类评价指标,以及它们的代码实现与应用。文章目录一、二分类指标(BinaryClas...

2019-03-03 18:02:02

(一)常见的回归评价指标及代码实现与应用

每个机器学习模型都试图使用不同的数据集来解决具有不同目标的问题,因此,对于不同的机器学习任务,在充分理解上下文的基础上,选择合适的机器学习评价指标是非常重要的。只有了解了本次机器学习建立模型的任务,才能选择合适的评价指标。本篇博客关注回归问题的评价指标。先介绍常用的评价指标,然后用代码实现一下部分评价指标。分类问题的评价指标的问题随后会整理。一、回归指标(RegressionMetrics...

2019-03-01 18:24:39

PySpark-DataFrame各种常用操作举例

最近开始接触pyspark,其中DataFrame的应用很重要也很简便。因此,这里记录一下自己的学习笔记。详细的应用可以参看pyspark.sqlmodule。这是官网文档,里面记录了详细的DataFrame使用说明。目录一、创建DF或者读入DF二、查2.1 行元素查询操作2.2 列元素操作 2.3 排序2.4抽样三、 增、改四、合并join/un...

2019-02-23 13:29:52

机器学习中最优化问题总结

记录一下自己学习机器学习中最优化问题的过程。一、基础知识1.1梯度向量、Jacobian矩阵和Hessian矩阵这里讨论的三个概念:梯度向量、Jacobian矩阵和Hessian矩阵它的自变量:x=(x1,x2,⋯ ,xn)T\mathbf{x}=(x_1,x_2,\cdots,x_n)^Tx=(x1​,x2​,⋯,xn​)T因变量有两种情况:一维f

2019-02-14 17:36:38

关联规则(三):带时间间隔的序列模式挖掘

序列模式挖掘,即是在序列数据库中挖掘出频繁子序列,是一个具有广泛应用的重要的数据挖掘问题。PrefixSpan算法可以有效地挖掘出大规模数据的频繁子序列,然而,它并没有项集之间的时间间隔。因此,本文提出了一种带时间间隔的序列模式挖掘算法,我们称其为I-PrefixSpan算法。一、引言带时间间隔的序列模式可以提供比传统序列模式更有价值的信息。我们以零售业务为例:在带时间间隔的序列模式的帮助下...

2019-01-24 16:02:48

利用Anaconda管理多个python版本

问题描述最近在搞序列模式挖掘prefixspan算法,正好有一个大神写好了这个库PrefixSpan-py。安装没有报错,安装以后,运行程序发现报错。但是在朋友电脑上,发现一样的安装步骤和代码却可以运行。发现他的python版本是3.6.6,而我的python版本是3.5.3。于是,猜测可能是python版本的问题。因为我python3.5.3的环境已经安装好了很多个库,我担心简单地把版本从3...

2019-01-21 14:23:41

完全图解RNN、RNN变体、Seq2Seq、Attention机制

本文转自何之源知乎文章《完全图解RNN、RNN变体、Seq2Seq、Attention机制》。PS:建议先阅读之前的博客《深度学习(五):循环神经网络(RNN)模型与前向反向传播算法》。本文主要是利用图片的形式,详细地介绍了经典的RNN、RNN几个重要变体,以及Seq2Seq模型、Attention机制。希望这篇文章能够提供一个全新的视角,帮助初学者更好地入门。一、从单层网络谈起在...

2019-01-11 18:00:13

排序学习(Learning to rank)综述

Learningtorank(简写LTR、L2R)也叫排序学习,指的是机器学习中任何用于排序的技术。目录一、LTR引言1.1LTR的出现背景1.2LTR基本框架二、训练数据的获取2.1 人工标注2.2 搜索日志2.3 公共数据集三、特征提取四、模型训练4.1单文档方法(PointWiseApproach)4.2 文档对方法(PairW...

2019-01-09 11:38:19

Scala语法快速入门

最近开始接触一点Scala的东西,这篇博客记录的都是一些最基本的Scala语法,主要是方便自己查询用,所以不是很系统。目录二、控制结构2.1 条件表达式2.2 块表达式和赋值2.3 循环2.4 增强for循环和for推导式三、Scala方法与函数3.1方法3.2函数3.2.1指定函数参数名3.2.2可变参数3.2.3高阶函数3.2.4...

2019-01-07 15:18:32

Scala下划线“_”的常用用法大全

在Scala中,我们随处可见下划线“_”,本篇博客记录了Scala中下划线“_”的各种常用用法,可能不是全部的用法。目录一、集合和函数中使用1.1集合1.2函数二、作为通配符2.1 import语句2.2 case语句2.3 元组(tuple)三、下划线和其他符号组合的使用方式3.1 下划线与星号(_*)3.1.1变长参数3.1.2 变量声明中...

2019-01-04 17:51:39

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。