自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(158)
  • 问答 (9)
  • 收藏
  • 关注

原创 动物园(Zookeeper)里有什么?

1.zookeeper定义ZooKeeper 是一个开源的,分布式应用程序协调服务。可以用于:数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等场景。怎么理解分布式应用程序协调服务呢?很久很久以前一个开放服务访问的人不多,所有的模块功能都在一个单体应用中,部署在一台服务器上,各个模块之间在本机通信很方便,但随着访问量和业务复杂度的提升,需要把应用切分成多个模块,分别将他们部署到不同的服务器,称之为分布式服务。这个时候这个模块在不同机器上的通信

2021-04-26 16:30:36 570 2

原创 JAVA中的异步调用

1.什么是异步调用异步调用简单理解,就是不阻塞主线程,再开辟另一个线程异步执行main{ //前置语句 costTime(); //后置语句}在上述代码中,主线程按顺序,需要依次执行前置语句,调用costTime函数,该函数耗时较长,以及后置语句。在执行costtime函数时,主线程处于阻塞状态。当后置语句和costTime函数执行无直接关联时,他们可以一起执行,这样的执行方式,就是对costTime的异步调用,此时主线程处于非阻塞状态。2.简单实现异步调用最简单的方式,就是new Th

2021-03-11 16:42:25 2458

原创 JAVA-内部类、匿名类介绍

1.Nested Class在Java程序中,被定义在一个类内部的类,称为内部类(Nested Class)。内部类分为三种:Inner class,常见的内部类Anonymous Class,匿名类Static Nested Class,静态内部类2.Inner class代码示例:class Outer{ class Inner{ }}特性:Inner类示例无法独立存在,必须依附outer类Outer outer = new Outer("Nested"); //

2021-02-20 14:16:00 266

原创 SQL-单表取分组内最新更新的记录

数据表table:jobcolumn:id,scene_id,gmt_modified按照scene_id分组并且取gmt_modified最大的那条记录正解:SELECT * FROM (SELECT * FROM job having 1 ORDER BY scene_id,gmt_modified DESC)b GROUP BY b.scene_id下面是探索过程:group by + maxSELECT scene_id,MAX(gmt_modified) FROM job grou

2020-09-18 11:47:43 724

原创 分布式服务(Driver-Worker模式)通信场景记录

场景描述现有两种节点,分别是中心节点(Driver)和工作节点(Worker),中心节点负责调度工作节点。中心节点一般有1-3个,工作节点可有很多个。现在要实现Driver和Worker之间的通信,Driver发布命令后所有Worker都需要执行,并且Driver需要能获取到有哪些Worker执行完成了,哪些还未完成。场景抽象将命令抽象为一种消息,Driver为消息生产者,Worker为消息消费者RabbitMQ是一种很常见的消息队列,其中的Topic模式可以实现消息的分发和接受,但是Driver无

2020-08-14 14:49:03 324

原创 Map按照value排序并截取Top10

递增P>0返回正值,递减P>0返回负值List<Map.Entry<String,Double>> lists=new ArrayList<Map.Entry<String,Double>>(map.entrySet()); Collections.sort(lists,new Comparator<Map.Entry<String, Double>>() { public int

2020-08-13 12:05:32 948

原创 ubuntu如何切换默认python版本

1.找到python的位置whereis python用这个命令找到/usr/bin下的python名称,比如我的是python-2.7和python3.62.添加python-list将两个版本的python放置在update-alternatives中。后面的数字表示版本的优先级update-alternatives --install /usr/bin/python pytho...

2019-12-27 16:22:31 457 1

原创 如何利用llvm得到一个函数的CFG结构

1.llvm-5.0安装参考:https://www.jianshu.com/p/861c1a630059准备工作首先安装必要的软件,官方是使用 svn 进行版本控制的,我们可以通过 svn 获取其源码。安装过程中要用到 cmake 命令,所以我们需要安装 subversion 和 cmake 两个软件。LLVM 也支持 Git 了,但是好像不是所有的子项目都支持,所以这里没做研究。su...

2019-11-25 21:35:25 1476

原创 Flink的计数功能探索

探索flink计数功能,欢迎指正!!使用场景:需要对经过算子处理后的DataStream中不同类型的数据进行全局统计个数(正解见第三种)1.Metric参考地址:https://ci.apache.org/projects/flink/flink-docs-stable/monitoring/metrics.html#datadog-orgapacheflinkmetricsdatadogd...

2019-11-14 16:31:12 2171

原创 Hadoop MapReduce任务的执行过程

注:本文注重原理介绍,较少涉及编程实现,有错误请指正,感谢~在进入正文之前需要了解这几个概念:HDFS:可以先简单理解为它是一个大型分布式的文件系统,里面存放了大量文件,也可以理解为放着俗称的大数据。数据块:HDFS中的数据以数据块为单位存放,默认是64MB,HDFS中的文件可能远远大于64MB,它被分割成很多个数据块,存放在集群上,数据块不一定存放在一台机器上,也不一定是连续存放的。Ma...

2019-07-12 15:13:10 920

原创 POI常用功能整理

读xlsx:InputStream is = new FileInputStream(new File(fileName));Workbook wb = new XSSFWorkbook(OPCPackage.open(is));或者File xlsFile = new File(filename); Workbook wb = WorkbookFactory.create(xlsF...

2019-07-04 16:21:05 1447

原创 如何用eclipse创建一个Maven项目

1.下载Maven在官网下一个,是个压缩包,解压后配置环境变量:MAVER_HOME:安装目录Path:%MAVEN_HOME%/bin安装完了以后再cmd运行mvn -v 就会出现版本信息,说明安装成功了需要注意的是安装maven前提必须安好了JDK,并且配置好了环境变量,JAVA_HOME,和path中添加了bin目录,否则会报错2.查看eclipse中是否有插件新版本的ec...

2019-06-29 15:22:29 926

原创 Sklearn.metrics评估方法介绍

在介绍指标之前,先回顾一下很重要的四个概念,可以说指标总是围绕着这四个来计算的。真实 1真实 0预测 1true positivefalse positive预测 0false negativetrue negative记忆小技巧:true/false 后面的pos or neg与预测值有关,预测为1就是positive,为0就是negative,然后如...

2019-05-10 11:17:09 5626

原创 Word2Vec之数学原理推导

对word2vec不了解的可以先看看这篇Word2vec入门网上很多word2vec的前向传播和反向传播给出的推导都不是很好理解,而且对于不太同种的实现方式也没有具体说明,所以一直想把这部分的坑填上,参考了网上的一篇优秀博客天空的城:Word2vec数学原理全家桶,对其做了进一步解释和修正。ONE-WORD-MODEL在说word2vec模型之前,先谈一谈ONE-WORD-MODEL,这个模...

2019-04-22 16:15:36 548 1

转载 句子相似度常见的计算方法

原文地址:静觅»自然语言处理中句子相似度计算的几种方法在做自然语言处理的过程中,我们经常会遇到需要找出相似语句的场景,或者找出句子的近似表达,这时候我们就需要把类似的句子归到一起,这里面就涉及到句子相似度计算的问题,那么本节就来了解一下怎么样来用 Python 实现句子相似度的计算。基本方法句子相似度计算我们一共归类了以下几种方法:编辑距离计算 杰卡德系数计算 TF 计算...

2019-04-22 13:21:00 3007 1

翻译 【译】Parsing C++ in Python with Clang

本文不是全部翻译,仅仅针对重要内容,添加了一些的实战经验,方便日后查阅Clang开发团队意识到,Clang不仅仅可以被用来作为编译器,还可以作为分析C/C++/Objc代码的工具。事实上苹果自带的Xcode代码编译底层用的就是Clang。libclang是clang一个强大的开发接口,本质上是一个C API,可以进行词法和语法分析,比如它可以让用户以AST结构去检验分析一段代码。python...

2019-04-09 18:14:48 1887

原创 康托编码与解码

原文地址:https://blog.csdn.net/neutre/article/details/78065633对于一个集合 {1,2,3,…,n},很明显它有 n! 种全排列,把它们全都按照字典序排好序(从小到大),对应顺序{1,2,3,…,n!},假如问你第X个全排列是什么,或者某个全排列在其中的序号是多少,可以利用康拓展开式来求。康托展开式:X = a[n]*(n-1...

2019-03-05 20:43:04 943 2

原创 ubuntu16.04搭建cuda9.0+cudnn7.0.5环境

在安装cuda之前,最重要的就是检查你的显卡是不是支持cuda安装版本。官网给出说明是只要在cuda支持显卡列表里的显卡就可以,但是我的显卡NVS 310虽然在,安装cuda以后会报错,因为显卡不支持。所以我猜测这个显卡或许可以支持低版本的cuda。官网的安装文档:https://docs.nvidia.com/cuda/cuda-installation-guide-linux/显卡列表:h...

2019-01-15 17:44:05 2039

翻译 Word2Vec入门

本文是对原文地址的翻译word2vec是一个用来处理文本的二层神经网络,它的输入是一个文本集,输出是一系列集合,这个集合是与文本集是对应的。明显word2vec不是一个深度学习网络,它只是将文本转化为深度网络可以理解的数值化格式。deeplwarning4j实现了一个分布式的Word2vec for Java和Scala,它可以在Spark上运行GPU。word2vec做的不仅仅是解析文集中...

2018-12-15 20:52:55 636

翻译 TensorFlow(八)TFRecords使用方法与实例

这篇文章介绍如何将大量数据存储为TFRecords格式的文件,然后将TFRecords格式的文件按批次处理的方式引入代码中,用来训练你的模型。本文借鉴了 link中的大部分内容,加上自己的理解和对代码中用到的库的补充说明。TFRecords 是 Tensorflow standard format ,就是tf标准的数据形式,tf源码中他提供了很多net结构,也就是网络结构,这些网络结构都是...

2018-12-14 21:17:47 1377

原创 Multi-Task Learning & Multiclass classification

最开始接触的机器学习问题就是 “ Is this a cat or not ” ,这是极具有代表性的一个二分类问题(Binary or binomial classification),二分类体现在数据的标签上就是0/1,一张图片作为输入X,对于监督学习而言,他的标签Y就是一个数字0/1,后面讲到的例子若不特殊说明都是监督学习。多分类问题(Multiclass classification)就是...

2018-12-12 18:40:26 762

原创 Tensorflow(七)Retrain Google Inception V3

1.下载Inception V3模型Download-Link 在tensorflow官网中可以直接下载,下载完压缩包以后解压,注意不要删除这个压缩包,后面可能会用到,然后在同目录下创建一个log文件夹,这些步骤可以手动完成,也可以用下面的python语句执行。# coding: utf-8import tensorflow as tfimport osimport tarfilei...

2018-12-10 23:21:44 1276

原创 基于JS实现表单的自动验证功能

注:本文代码是在Github上找到的源码,在此基础上进行了修改。表单验证的功能是通过JS代码实现的,在作者的验证JS代码中有已经设定好的数据格式,使用的是正则表达式,如果你想要设置自己的数据格式,可以在js文件最后找到datatype进行修改。作者的后端代码使用的是php,我修改为JAVA,这不影响前端页面。整个代码框架是JSP+Servlet,前端页面的表单审核通过后才可以提交,将数据传...

2018-11-21 22:22:30 2028

原创 Tensorflow(六)使用LSTM对MNIST数据集进行分类

对于RNN和LSTM不了解的朋友,可以去看看这两篇入门介绍,写的非常棒,在此特别感谢两位作者!!RNN入门:https://zhuanlan.zhihu.com/p/28054589LSTM入门:http://colah.github.io/posts/2015-08-Understanding-LSTMs本文参照了:https://jasdeep06.github.io/posts/...

2018-11-20 17:29:51 2391

原创 关于BP算法和梯度下降

最开始学习神经网络,感触最深的就是BP算法,当时只用到却没有好好体会它背后的深意,在RNN中也会用到一个类似的算法(BPTT下面会具体讲)。对神经网络有些了解,就会熟悉BP算法由两个部分组成,向前传播和反向传播。向前传播从输入层经过隐藏层到输出层,给出预测结果,在第一次传输过程中,使用到的权重(或者说参数)都是最开始随机初始化的,可想而知这样随机初始化的权重,最后得到的结果,与真实值的误差一定...

2018-11-17 14:15:28 4474

原创 Tensorflow(五)使用CNN对MNIST数据集进行分类

在tensorflow(二)中对MNIST数据集进行分类使用单层神经网络,梯度下降法以0.2的学习因子迭代了100次取得了92%的准确率,这个网络很简单,使用较大的学习因子也不会出现梯度爆炸或者梯度消失的情况,但是在复杂些的网络,比如这里用到的三层CNN网络使用0.2的学习因子就过大了。本文结合了tensorfow(三)中的卷积神经网络模型以及tensorflow(四)中的tensorboar...

2018-11-16 14:34:56 1805

原创 Tensorflow(四)Tensorboard简介

TensorBoard 简介官网上给的定义是:The computations you'll use tensorflow for (like training a massive deep neural network ) can be complex and confusing . To make it easier to understand, debug, and optimize t...

2018-11-11 15:01:16 527

原创 Tensorflow(三)训练一个简单卷积神经网络

这是吴恩达老师第四课第一周的编程练习,题目是分析图片中手势得到手所表示的数字。数据集我传到github上,可以下载https://github.com/penguin219/WU_Lesson4_week1特别要注意的是,如果你使用的是新版本的tensorflow,很有可能得到的结果和Coursera上的有所不同!1. 先简单介绍一个CNN(直接看代码的请往下翻)CNN全程是...

2018-11-09 20:35:26 1363

原创 Tensorflow(二)MNIST数据集分类

1.获取数据集有两种方式可以得到数据集,第一是直接通过mnist = input_data.read_data_sets('MNIST_data',one_hot = True)进行联网下载,但这个方法可能很慢或者连接不到服务器,所以推荐使用第二个,在MNIST 直接下载数据,然后放在当前路径下的‘MNIST_data’文件夹中,下载以后不需要解压,直接压缩包放进去就好,它会自动解压获取数据的...

2018-11-06 17:48:13 1733

原创 Tensorflow(一)搭建环境可能遇到的问题

Anaconda目前,python3.7是不支持tensorflow的,所以要学习tensorflow需要换成3.5或者3.6的版本os是win10,以前已经安装了puthon3.6.7和jupyter,直接安装了tensorflow,后来想装一个anaconda3 5.2,anaconda有自带的python3.6.5和jupyter(其实如果电脑没安装python,可以直接安装anac...

2018-11-04 19:05:46 1352

原创 优化算法(一)SGD算法实现

SGD随机梯度下降算法,和最常用的GD相比,GD每一次迭代都是所有样本都一起进行计算,而SGD是每一次迭代中每个样本分别进行计算,梯度算法的最终目标是减少cost值,训练出最优的参数值,GD每一次迭代都让所有样本去优化参数,一次迭代进行一次优化,而SGD一次只让一个样本去优化参数。 贴一下代码:#SGD(w初始化使用 2/sqrt(l-1))def SGD_model(X,Y,la...

2018-11-03 21:31:52 7158

原创 神经网络优化-正则化&DropOut

 实现正则化主要需要在两个地方做出修改:1.cost计算(L2 regularization) #正则化 n = len(parameters)//2 cost_extra = 0 for x in range(n): w = parameters['w'+str(x+1)] cost_extra += np.sum(np...

2018-10-28 18:22:59 661

原创 深度学习-吴恩达第一课第四周课程作业

在前面两节课的基础上,这次作业是训练一个N层神经网络,来判断一张图片是否有猫,实现过程其实和第三周很相似,因为层数不确定,所以在向前传播和反向传播的时候会用到for循环,代码相对而言反而更精简了。贴出的代码可能和老师给的模板不一样,我没有看到老师的原版课程作业,也是在网上找的资料自己写的,但是网上的代码大部分函数封装度高,但初学为了方便,也好理解,我没有采用那种方法。简单介绍一下模型,N层,传...

2018-10-21 21:04:52 1460

原创 深度学习-吴恩达第一课第三周课程作业

第二周的课程作业是利用逻辑回归来训练一个分类器来辨别一张图片是否为猫,这周老师讲了单隐层的神经网络,所以先看看利用这个模型能否在上次作业的基础上对训练准确度作出改善训练一个神经网络神经网络分为几层,隐藏层中包含几个神经元,使用的激活函数 初始化参数 W(i)和 B(i) 搞清楚参数的维度 准备数据 X ,Y 同样的要搞清楚维度 向前传播,计算代价函数,反向传播,更新参数...

2018-10-20 17:08:38 1286 3

原创 深度学习-吴恩达第一课第二周课程作业

这周作业是,给出一张图片,判断这张图是不是猫。这是一个二分类问题,结果是非0即1的,使用逻辑回归(Logic Regression),可以说,了解这个回归方法,有些python基础,会使用jupyter notebook就可以尝试着码一遍代码,走完整个学习流程,能进一步加深对逻辑回归的了解,对下一步的学习也有好处。首先在写代码之前,需要把逻辑回归向量化理解清楚,因为后面代码不是用循环来写的,是...

2018-10-13 20:55:45 1206

原创 关于Jupyter NoteBook下载与使用

第一步,下载notebook,有两种办法,其一是在官网下载anaconda,因为电脑上已经之前已经安装好了python,所以选择了第二种方法,直接在cmd中输入 :pip install jupyter 就可以成功安装如果输入命令但是不能安装的可能是python安装有问题,或者没有设置环境变量 第二步,在cmd中打开notebook,输入命令:jupyter notebook,然后会直...

2018-10-12 21:26:11 35982 1

原创 ASCII、Unicode与UTF-8的关系

计算机最早只有127个字母被编码到计算机里,包括大小写英文字母、数字还有一些符号,这个编码就是ASCII编码。因为计算机最早是外国人发明的,所以字符没有考虑中文,以及其他各国语言。ASCII编码表早在最开始学C语言的时候就有接触,一个字节用来存储一个字符。后来我们也发展了自己的编码,用来存储中文,中文使用一个字节存储是不够的,至少需要两个字节,有些特殊的文字还需要3-4或者更多的字节来处理,一...

2018-09-10 16:37:25 266

原创 Octave入门(一)

Octave安装直接搜就有,贴一个可在线运行的网址:Octave在线 Octave是一门针对数值运算的编程语言,和matlab很相近,对matlab有些了解的话会觉得octave也很熟悉按照默认安装完Octave以后(尽量安装4.0以后的版本),会在桌面上出现两个快捷方式,其中一个是可视化界面,另一个是命令行操作界面,不过可能因为选择的安装包不同,没有安装可视化界面,下面所有Octav...

2018-07-21 18:39:02 3021

原创 基于JSP、Servlet的ECharts入门案例

由于项目需要,对ECharts简单了解了一下,对ECharts详细使用语法并不了解,此案例侧重JSP,Servlet,ECharts三者的连接,以及记录遇到的问题和解决方法。 1.导入jar包和js文件echarts.common.min.js   http://echarts.baidu.com/download.htmlfastjson-1.1.33.jar  http://w...

2018-04-17 16:12:46 2413

原创 转发器-集线器-适配器-网桥-交换机-路由器-网关

转发器(Repeater)转发器又称为中继器或者放大器,用于物理层实现电气信号的“再生”,主要的功能是用来延伸网段和改变传输媒体,从而实现信息位的转发。它本身不执行信号的过滤功能。由于在数据的传输过程中,存在损耗,在线路上传输的信号会随着传输的距离(或其他干扰因素)逐渐减弱,减弱到一定程度甚至会造成信号的失真,中继器就是为了解决这一问题而设计的,它负责在两个节点的物理层上按位传输信息,完成信号的复...

2018-03-02 16:16:08 4879 2

空空如也

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

TA关注的人

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