自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Bryan__的专栏

https://github.com/YouChouNoBB

  • 博客(146)
  • 资源 (3)
  • 论坛 (2)

原创 spark的join和leftJoin使用union和reduce实现

在spark中使用自带的join与leftJoin容易引发性能问题,所以可以改写为union后reduce来提升性能。import scala.reflect.ClassTagdef leftJoin[K:ClassTag,V:ClassTag](left:RDD[(K, V)],right:RDD[(K, V)])={ left.mapValues(x=>Ar...

2018-12-01 15:07:20 1880 2

原创 使用spark scala计算信息熵,信息增益,信息增益率

找了下,没找到现成的代码,自己写了个,速度还能接受,可以用来做简单的特征选择import org.apache.spark.rdd.RDDclass FeatureSelect { //信息熵 def entropyRDD(data:RDD[String])={ val size=data.count() val p=data.map(x=>(x,1)).r...

2018-10-30 20:40:27 1974

原创 win7+spark

https://blog.csdn.net/u011513853/article/details/52865076https://blog.csdn.net/u011464774/article/details/76697183F:\Program Files\hadoop\bin\winutils.exe chmod 777 /tmp/hive 这一步报错ChangeFileMode...

2018-09-27 19:49:48 590

原创 IJCAI-18 阿里妈妈搜索广告算法大赛亚军解决方案

代码和解决方案见github: https://github.com/YouChouNoBB/ijcai-18-top2-single-mole-solution

2018-06-06 20:06:23 10573 15

原创 基于sklearn同时处理连续特征和离散特征

核心思路:先用LabelEncoder对离散特征编码,因为onehotencoder只能处理数值然后使用OneHotEncoder编码,生成稀疏表示的特征再使用sparse.hstack连接连续特征和稀疏特征为什么不使用pd.get_dummy呢,因为这样是直接生成的稠密矩阵,内存开销太大# coding=utf-8# @author: bryanfrom skle...

2018-04-12 12:10:42 5862 2

原创 python计算稀疏表示的TF-IDF

使用sklean的计算方法,这种结果是稠密矩阵,如果数据集太大,计算结果将会占满内存,或者直接报MemeryError的错误。tfidf详细计算参考:https://blog.csdn.net/Eastmount/article/details/50323063import jieba import jieba.posseg as pseg import os import ...

2018-04-02 20:47:20 3034 4

原创 腾讯2018广告算法大赛思路解析 100行代码带你上0.73

比赛报名地址:algo.qq.com/person/mobile/landingPage?from=dsbryan由于本次比赛我属于内部员工不得参赛,所以我尽量写一些思路解析,为大家提供一个baselinegithub:https://github.com/YouChouNoBB/2018-tencent-ad-competition-baseline1...

2018-03-20 11:33:41 35851 73

原创 在Python中使用多进程快速处理数据

数据分片:可以将数据分片处理的任务适合用多进程代码处理,核心思路是将data分片,对每一片数据处理返回结果(可能是无序的),然后合并。应用场景:多进程爬虫,类mapreduce任务。缺点是子进程会拷贝父进程所有状态,内存浪费严重。import mathfrom multiprocessing import Pooldef run(data, index, size): # data 传入数...

2017-12-12 21:59:06 7215

原创 python中ndarray与dataframe互转

情况1:输入的数据data为list情况2:输入的数据data为dict情况3:输入的数据data为ndarray

2017-12-11 21:54:43 8676

原创 学习经历与求职经历分享

内容:1.介绍数据挖掘入门学习线路2.BRYAN的学习经历和求职经历分享3.学习资料分享https://tianchi.aliyun.com/competition/new_articleDetail.html?spm=5176.8366600.0.0.1686543adgkJAe&raceId=&postsId=2801ppt:

2017-09-28 10:07:11 5908 2

原创 图解RNN、RNN变体、Seq2Seq、Attention机制

转自:https://zhuanlan.zhihu.com/p/28054589本文主要是利用图片的形式,详细地介绍了经典的RNN、RNN几个重要变体,以及Seq2Seq模型、Attention机制。希望这篇文章能够提供一个全新的视角,帮助初学者更好地入门。一、从单层网络谈起在学习RNN之前,首先要了解一下最基本的单层网络,它的结构如图:输入是x,经过变换W

2017-09-07 20:53:52 3882

原创 从ctr预估问题看看f(x)设计—DNN篇

转自:https://zhuanlan.zhihu.com/p/28202287把DNN引入ctr预估无非看重两点:一,改进模型结构,提高“信息利用率”,发现高阶非线性特征,挖掘以前挖不到潜在模式,比如DIN引入attention机制;一般来说Embedding+MLP是标配。二,扩充“信息量”,把图片/文本这类不好处理的数据利用起来,比如DeepCTR;#0 RoadMa

2017-08-24 21:50:57 6501 3

原创 [天池竞赛系列]IJCAI-17 口碑商家客流量预测冠军思路

题目链接:https://tianchi.aliyun.com/competition/introduction.htm?spm=5176.100066.0.0.773ef42fw2ednG&raceId=231591 代码链接:https://github.com/YouChouNoBB/ijcai-17-top1-single-mole-solution  ...

2017-08-20 22:32:13 16474 20

原创 python快速入门

来源:http://cs231n.github.io/python-numpy-tutorial/#python-basicTable of contents:PythonBasic data typesContainersListsDictionariesSetsTuplesFunctionsClassesNumpyArraysArray inde

2017-08-18 22:12:31 1462

原创 DenseNet 简介

1.首先对深度学习做一个简单的回顾2.介绍DenseNet1.1 DNN回顾如下图所示是一个基本DNN结构,通过forward传播和backword传播来训练一个模型包含input层,L个隐藏层和一个output隐层使用的sigmoid激活函数一般的优化方法有如下几种GD:对所有样本计算完一次梯度然后更新权重SGD:每个样本计算一次梯度就更新权重

2017-08-17 19:00:11 29894 4

原创 1x1卷积核如何降低参数量

本文介绍1*1的卷积核与googlenet里面的Inception。正式介绍之前,首先回顾卷积网络的基本概念。 1. 卷积核:可以看作对某个局部的加权求和;它是对应局部感知,它的原理是在观察某个物体时我们既不能观察每个像素也不能一次观察整体,而是先从局部开始认识,这就对应了卷积。卷积核的大小一般有1x1,3x3和5x5的尺寸。卷积核的个数就对应输出的通道数,这里需要说明的是对于输入的每个通道,

2017-08-17 15:53:28 7936 1

原创 基于tensorflow实现word2vec

使用NCE作为损失函数,SGD优化,skipGram模式# -*- coding: utf-8 -*-"""Created on Sat Jul 22 17:35:12 2017@author: bryan"""import collectionsimport mathimport osimport randomimport zipfileimport numpy as

2017-07-31 20:24:48 1785

原创 scala集合操作

Scala是数据挖掘算法领域最有力的编程语言之一,语言本身是面向函数,这也符合了数据挖掘算法的常用场景:在原始数据集上应用一系列的变换,语言本身也对集合操作提供了众多强大的函数,本文将以List类型为例子,介绍常见的集合变换操作。一、常用操作符(操作符其实也是函数)++ ++[B](that: GenTraversableOnce[B]): List[B] 从列表的尾部添加另外一个

2017-07-31 19:22:57 1517

原创 在tensorflow中使用CNN

# -*- coding: utf-8 -*-"""Created on Tue Jul 18 15:48:07 2017@author: bryan"""import tensorflow as tffrom tensorflow.examples.tutorials.mnist import input_datamnist = input_data.read_d

2017-07-19 22:10:06 702

原创 CNN笔记:通俗理解卷积神经网络

来源:http://blog.csdn.net/v_july_v/article/details/51812459通俗理解卷积神经网络(cs231n与5月dl班课程笔记)1 前言    2012年我在北京组织过8期machine learning读书会,那时“机器学习”非常火,很多人都对其抱有巨大的热情。当我2013年再次

2017-07-19 11:40:04 1080

原创 tensorflow实现AlexNet

参考:http://hacker.duanshishi.com/?p=1661使用LR可以得到0.92的分类正确率使用AlexNet可以得到0.95的分类正确率使用LR# -*- coding: utf-8 -*-"""Created on Mon Jul 17 16:26:57 2017@author: bryan"""import tensorflow a

2017-07-18 16:34:57 1533

原创 用python实现一个神经网络

原文:http://www.wildml.com/2015/09/implementing-a-neural-network-from-scratch/# -*- coding: utf-8 -*-"""Created on Fri Jul 7 15:37:41 2017@author: bryan"""import numpy as npfrom matplotli

2017-07-07 16:46:02 1163 1

原创 深入FFM原理与实践

转自:http://tech.meituan.com/deep-understanding-of-ffm-principles-and-practices.htmlFM和FFM模型是最近几年提出的模型,凭借其在数据量比较大并且特征稀疏的情况下,仍然能够得到优秀的性能和效果的特性,屡次在各大公司举办的CTR预估比赛中获得不错的战绩。美团点评技术团队在搭建DSP的过程中,探索并使用了FM和FF

2017-07-06 20:18:22 1270 2

原创 [天池竞赛系列] 历届天池竞赛答辩PPT和视频

1、阿里移动推荐算法: 答辩视频:https://space.dingtalk.com/c/gQHOEnXdXw 2、资金流入流出预测: 答辩视频:https://space.dingtalk.com/c/gQHOEnXi6w 3、阿里移动推荐&资金流入流出预测答辩PPT下载: https://tianchi.shuju.aliyun.com/mini/reply.htm?spm=

2017-03-23 21:01:11 10199 4

原创 [天池竞赛系列]O2O优惠券使用预测复赛第三名思路

本次竞赛初赛获得第二名,复赛第三名代码参考 第一名队伍【诗人都藏在水底】的代码:https://github.com/wepe/O2O-Coupon-Usage-Forecast

2016-12-28 12:09:24 22006 7

原创 数据挖掘/机器学习/算法岗2017校招面试总结

    目前就职于腾讯,想内推朋友可以发我简历(校招/社招都要),邮箱384375530@qq.com,注明岗位和工作城市。这个岗位叫法很多,算法岗,数据挖掘岗,机器学习岗,基础研究等等,总结一下从16年9月校招的面试情况。百度:    师姐给我内推的,一面聊了2个半小时,基本在写代码。用MapReduce写好友推荐,在一堆单词里面找出现次数最多的k个;设计一个栈,O(1)时间返回最值;求多叉树深...

2016-09-26 19:09:26 55138 66

原创 美团的笔试题,怎么拿红包金额最大

思路:看题目应该是想考动态规划,所以第一步是建立动态转移方程dp(i)=max( a[i]+dp(i-2),dp(i-1))也就是第i个位置的红包有两种方式要么拿,拿了就不能拿i-1的红包,解是a[i]+dp(i-2)要么不拿,不拿的解就是dp(i-1)但是需要考虑另外一个问题,就是首尾相连也就是拿了第一个就不能拿最后个那么又可以分成2种方式,第一个拿与不拿

2016-09-11 17:07:51 5451 6

原创 机器学习降维方法

特征降维方法包括:Lasso,PCA,小波分析,LDA,奇异值分解SVD,拉普拉斯特征映射,SparseAutoEncoder,局部线性嵌入LLE,等距映射Isomap。1. LASSO通过参数缩减达到降维的目的。LASSO(Least absolute shrinkage and selection operator, Tibshirani(1996)) 该方法是一种压缩估计

2016-09-09 16:21:17 4759

原创 二叉搜索树的后序遍历序列

题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。思路:二叉树的后序遍历,根节点在最后一个位置,搜索树就是排序树,所以左子树的所有元素肯定是小于根节点,右子树的所有元素大于等于根节点于是可以把序列划分为两个部分,左右子树,然后再递归的划分下去就行public class Solution {

2016-09-05 16:56:50 647

原创 删除排序链表中重复的结点

题目:在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5思路:用递归删除,遇到相同的往后走,返回第一个不相同的节点/* public class ListNode { int val; ListNode next = null; Li

2016-09-05 16:38:48 2170

原创 平衡二叉树

题目:输入一棵二叉树,判断该二叉树是否是平衡二叉树。思路:后续遍历二叉树,同时得到子树的深度,判断子树的深度是否满足平衡条件即可public class Solution { //后续遍历时,遍历到一个节点,其左右子树已经遍历 依次自底向上判断,每个节点只需要遍历一次 private boolean isBalanced=true; public boolean I

2016-09-05 15:56:25 505

原创 把数组排成最小的数

题目:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。思路:把数组排序,自定义排序规则,规则就是相邻的两个数合并之后比较大小,那么整个数组排完序之后拼接起来就是最小的import java.util.ArrayList;import java.util.Coll

2016-09-05 15:51:04 512

原创 TopK的两种解法

题目:输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。思路1:如果k比较大,可以直接把数组划分为2个部分,一部分为[0,k-1] ,一部分为【k,n-1】            遍历第二部分,和第一部分的最大值比较,如果更小则交换,遍历结束第一部分就是topk的结果    时间复杂度是k(n-k)思路2:利用

2016-09-05 15:11:32 1202

原创 二叉树的深度

题目:输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。思路:递归返回左右子树中深度较大者+1,树为空返回0/*public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(in

2016-09-05 14:11:10 603

原创 两个链表的第一个公共节点

题目:输入两个链表,找出它们的第一个公共结点。思路:定义两个指针,一起走,如果其中一个走到尾部,则该指针指向另一个链表头部。如果有公共节点,这这两个指针一定会相遇因为假如长度不一样的话,其中p1先走完,这时p2刚好走完了p1的长度,也就是剩下的长度为两个链表的差此时p1指向p2的链表,当p2走完时,p1刚好走完了两个链表的差,此时p2指向了之前p1指向的链表,这个时候两个链表同时走,一

2016-09-04 14:14:58 579

原创 二叉树的层次遍历

题目:从上往下打印出二叉树的每个节点,同层节点从左至右打印。思路:用一个队列,保存根节点,取出来之后再展开import java.util.ArrayList;import java.util.LinkedList;import java.util.Queue;/**public class TreeNode { int val = 0; TreeNode left

2016-09-04 13:45:56 714

原创 树的子结构

题目:输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)思路1:直接遍历两棵树返回序列,判断序列是否是子序列思路2:比较AB根节点,如果不同,再递归比较A的左子树右子树和B/**public class TreeNode { int val = 0; TreeNode left = null; TreeNode righ

2016-09-04 00:55:09 427

原创 合并两个排序的链表

题目:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。思路:利用递归,谁小谁做头结点,然后head.next=Merge() 来递归完成/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.va

2016-09-04 00:17:40 557

原创 单链表反转

题目:输入一个单链表,反转该单链表思路:用head保存当前位置,利用前驱和后继指针来保存上一个和下一个指针         记住4个步骤:1,先保存head.next 不然断链了2,反转链表3,pre前移到head的位置4,head前移到next的位置/*public class ListNode { int val; ListNode next = nu

2016-09-03 23:42:44 452

原创 链表中倒数第k个结点

题目:输入一个链表,输出该链表中倒数第k个结点。思路:定义两个指针,last先走k-1步到达第k个节点,然后同时向后走,当last为空的时候,返回pre就是第k个节点/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val

2016-09-03 23:17:48 414

机器学习/数据挖掘岗面试准备

参加各大公司面试时准备的复习资料,已经拿到百度,腾讯,华为offer

2016-09-26

9个大数据竞赛方案分享,其中6次获得top10

对参加过的9个大数据竞赛一个浓缩的解决方案总结 其中9个比赛6次获得top10

2016-06-15

数据挖掘比赛经验

之前应老师要求,跟学弟学妹们吹了下牛。只准备了一天,水平有限,看看就好

2016-05-20

Bryan__的留言板

发表于 2020-01-02 最后回复 2020-01-02

怎么在Java中使用xgboost

发表于 2016-03-31 最后回复 2018-04-22

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