- 博客(74)
- 资源 (38)
- 收藏
- 关注
原创 论文阅读-LightGBM: A Highly Efficient Gradient Boosting Decision Tree
GBDT是常用的机器学习算法,有少量高质量的实现算法,例如:XGBoost和pGBRT。
2017-12-15 21:22:23
12862
原创 论文阅读-XGBoost: A Scalable Tree Boosting System
Tianqi Chen大神提出了一种可扩展性的端到端基于树的boosting系统,这个系统可以处理稀疏性数据,通过分布式加权直方图算法去近似学习树,这个系统也提供基于缓存的加速模式、数据压缩、分片功能。机器学习应用于垃圾邮件分类、基于上下文植入广告、阻止银行恶意袭击的漏洞检测系统、探测引发物理显现的事件。有两个重要的因子驱动这些成功的应用:发现数据之间相关性的模型、从大量数据集中学习到有趣的模型。
2017-12-15 20:50:33
14417
1
原创 文本信息熵
public class InfoEntropy { // 代表每个字母的出现的频率。 public int[] count = new int[26]; private double entropy; private int sumCount ; public InfoEntropy(String str){ // 不区分大小写 String lowStr = s
2017-12-07 16:40:50
3614
转载 京东推荐系统
京东推荐系统编辑删除在电商领域,推荐的价值在于挖掘用户潜在购买需求,缩短用户到商品的距离,提升用户的购物体验。京东推荐的演进史是绚丽多彩的。京东的推荐起步于2012年,当时的推荐产品甚至是基于规则匹配做的。整个推荐产品线组合就像一个个松散的原始部落一样,部落与部落之前没有任何工程、算法的交集。2013年,国内大数据时代到来,一方面如果做的事情与大数据不沾边,
2017-12-07 09:19:48
7730
1
原创 论文Recent Trends in Deep Learning Based Natural Language Processing
一:abstract。深度学习已经应用于很多领域,特别是在计算视觉和模式识别方面取得了突出的成绩。深度学习应用于NLP的一大优势是自动特征提取,而传统的NLP处理技术大多是通过手工提取特征,手工提取特征耗时、不完整。Natural Language Processing (Almost) from Scratch阐述了基于深度学习的框架和算法在词性标注、命名实体识别、语义角色标签等NLP任
2017-12-01 17:02:09
1028
原创 论文Natural Language Processing: State of The Art, Current Trends and Challenges
摘要:这篇文章提出自然语言处理涉及到自然语言理解和生成自然语言(understand and generate the text)。自然语言处理任务又分为:语音(听觉),语言形态、语法、语义、语用(语言的角度)。自然语言任务细分为:自动生成文本摘要、共指消解、话语分析、命名实体识别、形态切分、字符识别、词性标注。自动生成文本摘要(auto summarization):生成易于
2017-12-01 10:51:15
925
转载 一个框架解决kaggle问题
一个框架解决几乎所有机器学习问题 但是没有具体的例子和代码,今天看到一个不错的 kaggle 上的 codeExploratory Tutorial - Titanic 来解析一下,源码可以直接点这个链接。在这篇文章中可以学到一个完整的运用机器学习解决分析问题的过程,它包括了解决问题的一般流程,描述性统计的常用方法,数据清洗的常用方法,如何由给定的普通变量启发式思考其他影响因素,skl
2017-11-29 20:03:42
517
转载 微信paxos库PhxPaxos实现原理与解析
微信paxos类库PhxPaxos实现原理与解析 微信最近开源了其paxos类库PhxPaxos,具体参考资料: 1. phxpaxos github的地址:点击打开链接 2. 微信自研生产级paxos类库PhxPaxos实现原理介绍 : 点击打开链接 ===========
2017-11-29 19:49:33
1945
原创 Dubbo SPI机制简介
SPI (service Provider Interface,是一种面向接口的编程方式。一个接口经常有多个实现类,通过SPI机制发现接口的实现服务。当服务的提供者,需要在META-INF/services下创建接口对应的文件,之后通过java提供的serviceLoader加载对应的实现,并装载实例化。SPI demo:package org.dubbo.demo.spi
2017-11-29 15:46:47
835
转载 百度NLP架构与应用
深度| 百度副总裁王海峰:百度在NLP领域都做了什么?雷锋网 02-09 17:05雷锋网按:2017年美国加州当地时间2月5日,人工智能顶级会议AAAI大会召开,AAAI今年首次设置了AI in Practice (应用人工智能)环节,百度副总裁王海峰应邀做了名为“百度的自然语言处理”(Natural Language Processing at Baidu)的主题演讲。雷锋
2017-11-24 16:11:22
2228
转载 阿里NLP架构与应用
NLP技术的应用及思考背景介绍阿里巴巴的生态系统下面有很多的计算平台,上面有各种各样的业务层,最中间是买家和卖家之间包括销售、支付等等之间的关系,外面建了一圈从娱乐到广告到金融到购物到物流等等各方面这样一个生态,中间有非常多的数据能够关联起来,所以对于阿里巴巴而言,这个图可以非常简练的概括我们在做什么,中间是最重要的数据,下面数据包含了最核心的也是阿里巴巴最早起家的来自于电商的
2017-11-24 15:42:01
38651
1
转载 kafka对比RocketMQ
淘宝内部的交易系统使用了淘宝自主研发的Notify消息中间件,使用Mysql作为消息存储媒介,可完全水平扩容,为了进一步降低成本,我们认为存储部分可以进一步优化,2011年初,Linkin开源了Kafka这个优秀的消息中间件,淘宝中间件团队在对Kafka做过充分Review之后,Kafka无限消息堆积,高效的持久化速度吸引了我们,但是同时发现这个消息系统主要定位于日志传输,对于使用在淘宝交易、订单
2017-11-23 16:18:13
8746
原创 一个轻量级的分布式RPC框架
在互联网中,随着访问需求的不断扩大,单一的MVC架构已经不能满足用户的访问需求,这个时候就需要RPC分布式架构。常见的RPC分布式框架:RPC server(生产者)提供RPC服务,通过向Zookeeper中注入服务。zookeeper管理分布式服务,负责服务节点选取、Master节点选择、分布式一致性、注册功能。RPC client 作为消费者订阅RPC server服务
2017-11-23 09:38:24
4303
原创 RPC基本原理
背景:在互联网中,随着访问需求的不断扩大,单一的MVC架构已经不能满足用户的访问需求,这个时候就需要RPC分布式或者微服务架构。所以在大型互联网公司中,公司的系统由大量的服务组成,怎样调用服务和怎样为别人提供服务?RPC请求服务过程:标注要发布的服务,即服务器提供的服务。import java.lang.annotation.ElementType;import java
2017-11-22 15:59:58
529
原创 Paxos理论介绍(三): Master选举
分布式系统中通过paxos(必须为强一致性算法)选举时,在同一时刻选举一个节点作为Master , 读、写数据都通过Master节点进行,所以Master的数据时最新的。Master选举与Paxos解耦合,Master 选举使用Paxos的API。Master选举租赁算法:
2017-11-21 15:07:02
435
原创 Paxos理论介绍(二):Multi-Paxos
朴素Paxos通过多轮proposer、acceptor选举的方式选举一个提议,这个过程为一个Instance。Multi-Paxos通过算法来确定很多Instance的值,这些Instance的值在多个节点的顺序保持一致,在朴素Paxos中,通过计算找到编号为i的Instance,之后再计算编号为i+1的Instance,这样形成顺序的Instance,这样形成的latency(延迟)很高。而M
2017-11-20 17:02:18
5574
2
原创 朴素Paxos理论介绍(一致性算法)
Paxos算法主要通过定义约束保证一致性,即只要算法满足一定的约束,就能保证一致性。约束一:提案编号唯一。约束二:多数派提案才成功。约束三:当需要提案B时,如果提案多数派中有人已经提议了B*(提案编号B* 约束四: 保证提案编号的顺序,即如果提案B,并且之前已经有B* > B , 则抛弃编号为B的提案。位了保证编号的顺序性,所以需要强化约束,当不再接受编号小于当
2017-11-20 11:33:44
531
转载 分布式服务框架(dubbo)
分布式服务框架原理(dubbo)设计和实现1.分布式服务框架设计分布式服务框架一般可以分为以下几个部分,(1)RPC基础层:包括底层通信框架,如NIO框架、通信协议,序列化和反序列化协议,以及在这几部分上的封装,屏蔽底层通信细节和序列化方式差异(2)服务发布/消费:服务提供者根据消费者请求消息中的接口名,方法名,参数列表等信息,通过Java反射,调用本地的接口实现类
2017-11-19 17:36:57
345
转载 秒杀系统设计
秒杀系统架构分析与实战目录1 秒杀业务分析2 秒杀技术挑战3 秒杀架构原则4 秒杀架构设计5 大并发带来的挑战6 作弊的手段:进攻与防守7 高并发下的数据安全8 总结转载: 秒杀系统架构分析与实战1 秒杀业务分析正常电子商务流程(1)查询商品;(2)创建订单;(3)扣减库存;(4)更新订单;(5)付款;(6
2017-11-19 17:31:54
277
转载 消息队列的使用场景
一、消息队列概述消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题。实现高性能,高可用,可伸缩和最终一致性架构。是大型分布式系统不可缺少的中间件。目前在生产环境,使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ等。二、消息队列应用场景以下介绍消息队列在实际应用中常用的使用场景。异步处理,
2017-11-19 17:27:54
272
原创 Netty实战读书笔记(第十一章(下))
Netty提供异步通信的机制,所以当有大数据需要传输时,即使数据还没有传输完成,也会返回通知ChannelFuture,所以这时会有内存溢出的危险。这个时候需要一个NIO实现零拷贝的方式,直接操作网络栈中的数据,实现一个FileRegion,支持零拷贝的Channle的文件传输协议。import java.io.File;import java.io.FileInputStream;imp
2017-11-19 15:47:34
320
原创 Netty实战读书笔记(第十一章(上))
Netty提供的预制的Handler和编解码器。Netty通过预制的SslHandler保证数据在pipeline中加密和解密,SslHandler在其他Handler的逻辑处理后才能进行加密。import javax.net.ssl.SSLEngine;import io.netty.channel.Channel;import io.netty.channel.Chann
2017-11-17 19:45:15
276
原创 Netty实战读书笔记(第十章)
Netty编码解码器:在网络应用程序中,需要将字节流转换为应用程序对应需要的数据格式。编码器是将应用程序需要的数据格式转换为字节流,解码器是将字节流转换为应用程序需要的数据格式。解码器主要有两种:ByteToMessageDecode、MessageToMessageDecode。webSocket实现了browser和server的全双工通信。import java.util.Lis
2017-11-17 17:15:39
256
原创 Netty实战读书笔记(第八章)
当server相应client的请求时,有时候需要server作为client向其他server请求资源,这个时候一般通过再创建新的bootstrap,添加新的EventLoopgroup,,这种做法创建新的线程,会有线程创建和切换的开销,并且会有client 线程和server线程的数据交换,所有可以通过将server的EventLoop Group到client的bootstrap中,这样实现
2017-11-17 11:46:15
249
原创 Netty实战读书笔记(第七章)
EventLoop和线程模型,在java concurrent线程池的基础上的封装。java提供了executor,通过创建的线程缓存和重用Thread减少new thread 的资源消耗,减少线程上下文切换的消耗。网络框架的基本功能:运行任务执行生命周期内的事件,Netty通过事件循环来处理这样的事件,netty concurrent的类结构:在netty中,
2017-11-16 16:45:50
245
原创 从paxos到zookeeper读书笔记(第六章)
zookeeper的典型应用场景:zookeeper应用场景主要包括:发布/订阅、负载均衡、命名服务、分布式协调/通知(注册功能)、集群管理、master选举、分布式锁、分布式消息队列。zk实现数据发布/订阅服务:发布/订阅通常有两种模式:push/poll的方式为客户端提供服务。主要应用于分布式中,配置文件的全局通知、更新。配置获取-》配置更新。在机器启动过程中,zookeepe
2017-11-16 15:29:37
355
原创 从paxos到zookeeper读书笔记(第四章)
netty集群简单的集群方案:zk用来实现服务发现的功能,通过高性能的netty网络框架作为服务器,注册到zk中,client请求到zk中选取可用的netty服务器,选取策略有:轮询、哈希、IP分组、加权分组(均衡负载和服务发现的功能),netty服务器关闭时主动到zk注销。ZAB算法:zookeeper官方文档说明,zab算法提供崩溃可恢复的原子消息广播算法,paxos是一种通用
2017-11-16 11:06:24
358
原创 从paxos到zookeeper读书笔记(第四章)
zookeeper提供分布式协调服务,提供诸如统一命名服务、配置管理和分布式锁、分布式消息等分布式的基础服务。zookeeper的zab(zookeeper atomic broadCast),是paxos的一种改进。zookeeper是一个典型的分布式数据一致性的解决方案,分布式应用可以基于zookeeper实现发布\订阅、负载均衡、命名服务、分布式协调\通知、集群管理/master选举、分布式
2017-11-15 21:27:07
308
原创 Paxos到zookeeper读书笔记(第一章、第二章)
ACID->CAP->BASE。ACID主要应用于保证在对数据库进行分布式请求下,数据的ACID特性。CAP:在进行分布式应用设计时,经常需要考虑CAP特性,consistent、Available、partition tolerance,理论已经证明同时保证这三个特性的强的特性是不可能的,因为为分布式应用,所以应用在不同的进程或者子网络中,partition tolera
2017-11-15 20:25:08
192
原创 Netty实战读书笔记(第七章)
Netty实战读书笔记第七章讲解了Eventloop和线程模型,主要通过一个Eventgrouploop分配Eventloop,每个Eventloop处理多个channel,在channel的整个生命周期,都由一个Thread执行,一个EventLoop 将由一个永远都不会改变的 Thread 驱动。
2017-11-14 20:05:25
211
原创 Netty实战读书笔记(第六章)
Netty channelHandler和channelPipeline。channelPipeline将channelHandler链接起来做逻辑处理。channelHandler有四个状态,在handler处理时可更具状态激活不同的方法,比如channelActive对应于channelActive(ChannelHandlerContext ctx , Object msg
2017-11-14 15:53:44
271
原创 Netty实战读书笔记(第五章(二))
Netty通过ByteBuf类对数据进行操作,ByteBuf提供了对于字节操作的方法。对于Netty中ByteBuf对象的字节操作:ByteBuf的顺序访问:// 顺序访问ByteBuf中的字节。 public static void getByteFromBuff(){ ByteBuf buff = buf; for(int i = 0; i < buff.capa
2017-11-13 21:13:12
249
原创 Netty实战读书笔记(第五章(一))
Netty实战第五章主要讲Netty封装的数据容器:ByteBuf(java中ByteBuffer的替代品,在网络中传输主要通过字节进行传输)。Netty中主要通过abstract class ByteBuf、interface ByteBufHolder进行操作。Netty中ByteBuf的主要优点:读写使用不同的索引(readIndex、writeIndex)、容量支持
2017-11-13 20:12:07
286
原创 Netty实战读书笔记(第四章)
Netty实战第四章:传输比较java自带的OIO、NIO、Netty提供的OIO、Netty提供的NIO。OIO:import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.ServerSocket;import java.net.S
2017-11-13 15:37:30
421
原创 Netty实战读书笔记(第三章)
Netty组件和设计:Netty实战的第一章梳理了Netty的概念、使用场景、技术基础。第二章通过一个EchoClient和EchoServer小的应用程序简介了使用Netty框架的处理流程。第三章将重Netty库的使用和框架的设计来探讨Netty。通过在Netty高性能框架上,使用Netty类库构建高性能服务器。Netty在技术上,通过异步和实践驱动的方式,做到高负载下应用技术的可扩展性和可伸缩
2017-11-12 21:20:40
424
转载 数据库书籍推荐
软件开发者编写代码,最终都是要处理数据,因此数据库是必备技能。悲剧的是,学校里与此最相关的数据库原理课,对初学者的体验却非常不好。相信很多同学都有这样的痛苦经历:一上来就一通数据库历史,罗列一大堆从来没见过以后也不会见到的各种古老数据库;然后是数学公式密集的关系模型、关系代数,一连串不知道什么用却很难懂的范式……全学完了,数据库咋用、咋编程都不知道,连SQL都只是一知半解。
2017-11-12 21:17:38
9252
1
转载 Ubuntu 16.04
Ubuntu 16.04发布了,带来了很多新特性,同样也依然带着很多不习惯的东西,所以装完系统后还要进行一系列的优化。1.删除libreofficelibreoffice虽然是开源的,但是Java写出来的office执行效率实在不敢恭维,装完系统后果断删掉[html] view plain copyprint?sudo apt-get
2017-11-12 21:16:19
293
原创 Netty实战读书笔记(第二章)
Netty实战第二章主要通过讲解EchoClient、EchoServer构建了一个基于Netty的应用。在client端,1 , EventLoopGroup实例化一个对象。2 ,实例化一个bootstrap对象,作为netty高性能服务器的启动器。3 , 将EventLoopGroup实例group进bootStrap实例 4 , 申明连接的I/O类别为NioChannelSocket。5
2017-11-12 19:36:01
351
原创 Netty实战读书笔记(第一章概念梳理)
Netty是一个由事件驱动的java异步I/O高性能网络通信框架,在java中,提供网络通信的JDK主要有I/O、NIO、AIO。I/O主要是同步阻塞的网络通信协议,NIO(No-blocking I/O)提供非阻塞的读写操作,又因为非阻塞,所以可提供异步操作,NIO一般可当做异步I/O。AIO是jdk1.7中引入的异步I/O操作,客户端的请求都是通过OS完成了I/O操作之后,再交由服务器处理启动
2017-11-10 17:19:38
347
转载 Timer与TimerTask的真正原理&使用介绍
其实就Timer来讲就是一个调度器,而TimerTask呢只是一个实现了run方法的一个类,而具体的TimerTask需要由你自己来实现,例如这样:[java] view plain copyprint?Timer timer = new Timer(); timer.schedule(new TimerTask() { publ
2017-11-07 15:17:12
272
Mastering Machine Learning With scikit learn pdf
2017-11-13
scikit-learn Cookbook pdf sklearn
2017-11-13
Python for Data Analysis 2nd Edition pdf
2017-11-13
Spark for Data Science pdf 完整 积分最少
2017-11-11
Machine Learning with Spark pdf
2017-11-11
High Performance Spark pdf 完整版 免费
2017-11-11
Advanced Analytics with Spark, 2nd Edition.pdf
2017-11-11
机器学习系统设计 免费
2017-11-10
Technical Analysis of Stock Trends
2017-11-10
PYTHON机器学习及实践+从零开始通往KAGGLE竞赛之路 免费
2017-11-10
Python Machine Learning Blueprints
2017-11-10
构建一个机器学习系统(第二版)
2017-11-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人