自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 阿里移动推荐算法大赛总结

一、 赛题说明1. 竞赛题目在真实的业务场景下,我们往往需要对所有商品的一个子集构建个性化推荐模型。在完成这件任务的过程中,我们不仅需要利用用户在这个商品子集上的行为数据,往往还需要利用更丰富的用户行为数据。定义如下的符号:U:用户集合I :商品全集P:商品子集,P ⊆ ID:用户对商品全集的行为数据集合那么我们的目标是利用D来构造U中用户对P中商品的推荐模型。2. 数据说明数据主要包含

2015-11-19 20:56:57 24474 11

原创 对数似然比相似度

最近在看mahout的相似性度量时,对其中的对数似然比相似度颇为好奇,由于书本上完全没有涉及到对数似然比相似度的计算原理,只是提供了一个函数接口,因此决定深入了解一下这个对数似然比相似度。下面mahout中的源码:public static double logLikelihoodRatio(int k11, int k12, int k21, int k22) { double r

2015-11-13 22:50:48 22184 4

原创 RankNet与LambdaRank

在使用搜索引擎的过程中,对于某一Query(或关键字),搜索引擎会找出许多与Query相关的URL,然后根据每个URL的特征向量对该URL与主题的相关性进行打分并决定最终URL的排序,其流程如下:排序的好坏完全取决于模型的输出,而模型又由其参数决定,因而问题转换成了如何利用带label的训练数据去获得最优的模型参数w。Ranknet提供了一种基于Pairwise的训练方法,它最早由微软研究院的Chr

2015-10-25 16:58:34 14172 5

原创 MapReduce shuffle过程详解

我们知道MapReduce计算模型主要由三个阶段构成:Map、shuffle、Reduce。Map是映射,负责数据的过滤分法,将原始数据转化为键值对;Reduce是合并,将具有相同key值的value进行处理后再输出新的键值对作为最终结果。为了让Reduce可以并行处理Map的结果,必须对Map的输出进行一定的排序与分割,然后再交给对应的Reduce,而这个将Map输出进行进一步整理并交给Reduc

2015-10-17 22:29:57 46076 16

转载 绘图: matplotlib核心剖析

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!matplotlib是基于Python语言的开源项目,旨在为Python提供一个数据绘图包。我将在这篇文章中介绍matplotlib API的核心对象,并介绍如何使用这些对象来实现绘图。实际上,matplotlib的对象体系严谨而有趣,为使用者提供了巨大的发挥空间。用户在熟悉了核心

2015-09-25 17:25:18 810

原创 Java泛型学习笔记

1、什么是泛型我们知道一般的类和方法在定义的时候,其成员变量、参数、返回值等都必须指明具体的类型,要么是基本的数据类型,要么是自定义的类。如果需要编写可以应用于多种类型的代码,这种刻板的限制对代码的束缚就会很大。而泛型正是为了解决这个问题而产生的,其含义即“可以应用于许多许多类型”,它是一种方法,通过它可以编写出更“泛化”的代码,这些代码对于它们能够作用的类型具有更少的限制,因此单个的代码段可以应用

2015-09-17 19:31:04 635

原创 浅谈向上转型与向下转型

向下转型可以吗?package com.ycy.rtti;import java.util.ArrayList;import java.util.List;class Pet { void name() { System.out.println("I'm a pet"); }}class Dog extends Pet{ void name() {

2015-09-07 10:54:20 1550

原创 关于编码格式的总结

最近在用Java做文本处理的时候,经常遇到一些乱码的问题,因此决定好好看一下编码格式的问题。所谓编码,从我的理解就是一种映射关系,即数字到符号的一一映射;而编码标准就是那张映射表,它决定了哪一个数字对应了哪一个符号,在计算机的世界里面实际是只有数字的,但是标准的存在则是数字与符号联系的纽带。现在常用的编码主要有以下几种:ASCII、Unicode、UTF-8(有无BOM)、UTF-16、UTF-32

2015-09-02 20:30:08 556

原创 Numpy常用函数

文件读写1.文件载入loadtxt(fname, dtype=<type 'float'>, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0)函数功能:将文本文件载入到内存中,并且要求文本文件中每一行含有相同数量的值,即一

2015-05-18 17:22:24 1104

原创 NumPy与ndarray简介

一、NumPy简介NumPy的全名为Numeric Python,是一个开源的Python科学计算库,它包括:一个强大的N维数组对象ndrray;比较成熟的(广播)函数库;用于整合C/C++和Fortran代码的工具包;实用的线性代数、傅里叶变换和随机数生成函数NumPy的优点:对于同样的数值计算任务,使用NumPy要比直接编写Python代码便捷得多;NumPy中

2015-05-01 17:51:16 14507

转载 Python的作用域

在这篇文章里,我们来关注作用域在Python被误用的地方。通常,当我们定义了一个全局变量(好吧,我这样说是因为讲解的需要——全局变量是不好的),我们用一个函数访问它们是能被Python理解的:123bar = 42def foo():print bar在这里,我们在foo函数里使用了全局变量bar,然后它也如预想的能够正常运行:12>>> foo()

2015-04-24 17:41:52 483

原创 正则表达式学习笔记(一)

一、什么是正则表达式在进行文本处理的时候,我们经常需要根据自己的需求提取某些特定的字符串,因而我们需要给计算机提供匹配模板,而这个模板就是正则表达式。正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。大部分时候我们见到的正则表达式都是以字符串的形式展现,如"w+\\.bai

2015-04-23 22:28:00 492

原创 如何去掉MapReduce输出的默认分隔符

我们在用MapReduce做数据处理的时候,经常会遇到将只需要输出键或者值的情况,如context。write(new Text(record), new Text("")),这样得到结果每行尾部会自动加上一个制表符。尽管我们的值是空的,但是MapReduce默认输出的是键值对,且键值对之间采用默认的分隔符为制表符,这样可能对我们数据的后续处理会产生一些干扰,那么如和去掉或是更改这个制表符呢?这里

2015-04-07 11:42:25 3565

原创 Java异常学习笔记

一、Java异常处理的顺序与匹配原则import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;class FirstException extends Exception { public FirstException(String s){};}

2015-03-30 20:48:14 448

原创 Java容器学习笔记(一)

一、什么是容器? 在使用Java编程的过程中,我们经常使用数组来存储对象的集合,但有时候会遇到这样一个问题:我们没法确定数组的长度,只有当程序运行后我们才能知道具体有多少个对象。一种解决办法是定义一个很大的数组,这无疑会浪费很多存储资源;另一种方法便是使用容器,所谓容器我们也可以理解为一个动态的数组,我们不需要提前设定存储对象的数目,有多少对象就可以添加多少对象,系统会自动为我们分配资源。

2015-03-16 17:34:44 623

空空如也

空空如也

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

TA关注的人

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