摘要:
1.首先在浏览器中进入WAP版微博的网址,因为手机版微博的内容较为简洁,方便后续使用正则表达式或者beautifulSoup等工具对所需要内容进行过滤 https://login.weibo.cn/login/ 2.人工输入账号、密码、验证字符,最后最重要的是勾选(记住登录状态) 3.使用Wires 阅读全文
摘要:
用homebrew 在电脑上安装tesseract库 brew install tesseract 用pip安装支持python的tesseract 接口 pip install pytesseract 使用pytesseract库对图片文件(jpg、png、bmp等)进行识别,把图片转换成字符串输 阅读全文
摘要:
可以使用pprof来分析golang程序的CPU性能,内存占用,block死锁,Goroutine性能等,pprof一般是在需要分析代码性能的时候才加入 1.分析Gin web服务的性能 可以使用 gin-contrib/pprof 这个工具,参考:Gin框架中使用pprof 添加依赖 go get 阅读全文
摘要:
堆排序 阅读全文
摘要:
阻塞队列与Semaphore有些相似,但也不同,阻塞队列是一方存放数据,另一方释放数据,Semaphore通常则是由同一方设置和释放信号量。 ArrayBlockingQueue 只有put方法和take方法才具有阻塞功能 用3个空间的队列来演示阻塞队列的功能和效果。 用两个具有1个空间的队列来实现 阅读全文
摘要:
CyclicBarrier 适用于:创建一组任务,它们并行地执行任务,然后在进行下一个步骤之前等待,直至所有任务完成。它使得所有的并行任务都将在栅栏处列队,因此可以一致地向前移动。 表示大家彼此等待,大家集合好后才开始出发,分散活动后又在指定地点集合碰面,这就好比整个公司的人员利用周末时间集体郊游一 阅读全文
摘要:
Semaphore [ˈseməfɔːr] 可以维护当前访问自身的线程个数,并提供了同步机制。使用Semaphore可以控制同时访问资源的线程个数(即允许n个任务同时访问这个资源),例如,实现一个文件允许的并发访问数。 Semaphore实现的功能就类似厕所有5个坑,假如有十个人要上厕所,那么同时能 阅读全文
摘要:
Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也应该是一个对象。两个线程执行的代码片段要实现同步互斥的效果,它们必须用同一个Lock对象。 1.重入锁 ReentrantLock 使用ReentrantLock实现交替打印zhangxiaoxiang和l 阅读全文
摘要:
线程池的概念与Executors类的应用 1.创建固定大小的线程池 2.创建缓存线程池 3.创建单一线程池 关闭线程池 shutdown与shutdownNow的比较 用线程池启动定时器 调用ScheduledExecutorService的schedule方法,返回的ScheduleFuture对 阅读全文
摘要:
多个线程访问共享对象和数据的方式 1.如果每个线程执行的代码相同,可以使用同一个Runnable对象,这个Runnable对象中有那个共享数据,例如,买票系统就可以这么做。 2.如果每个线程执行的代码不同,这时候需要用不同的Runnable对象,有如下两种方式来实现这些Runnable对象之间的数据 阅读全文
摘要:
转自 SiteMesh的使用 SiteMesh的介绍就不多说了,主要是用来统一页面风格,减少重复编码的。 它定义了一个过滤器,然后把页面都加上统一的头部和底部。 需要先在WEB-INF/lib下引入sitemesh的jar包:http://wiki.sitemesh.org/display/site 阅读全文
摘要:
1.创建clickhouse环境 安装clickhouse 参考:ubuntu16.04安装clickhouse 或者使用docker 参考:https://hub.docker.com/r/clickhouse/clickhouse-server docker run -d -p 18123:81 阅读全文
摘要:
1.搭建环境的第一步是导包,把下面这些包都导入工程中 /media/common/工作/Ubuntu软件/SpringMVC_jar包整理/aop/media/common/工作/Ubuntu软件/SpringMVC_jar包整理/apache-commons-logging/media/commo 阅读全文
摘要:
当使用S3作为Amazon EMR的存储的时候,当写入的流量比较大的时候,有时会遇到性能瓶颈,报错如下 Caused by: com.amazonaws.services.s3.model.AmazonS3Exception: Please reduce your request rate. 在如下 阅读全文
摘要:
1.实现文件上传首先需要导入Apache的包,commons-fileupload-1.2.2.jar和commons-io-2.1.jar 实现上传就在add.jsp文件中修改表单 完整的add.jsp文件 2.在user-servlet.xml中配置上传文件 3.在控制器中修改add()方法 还 阅读全文
摘要:
1.在user-servlet.xml中加入以下代码,才能使得对静态文件的请求不被Controller捕获,而映射到一个固定的地址 2.在WebContent文件下面,添加resources文件夹和css/main.css文件 mian.css文件,文字的大小和颜色 3.在list.jsp文件中,加 阅读全文
摘要:
1.在WEN-INF文件夹下面,添加一个login.jsp文件 2.在UserController.java中加入login 3.其中需要new UserException,再创建UserException.java 如果只是做到这些的话,当输出的用户名和密码错误的时候,报错如下图 4.在UserC 阅读全文
摘要:
在使用hive时候,需要关注hive任务所消耗的资源,否则可能会出现hive任务过于低效,或者把所查询的数据源拉胯的情况 1.查看当前hive所使用的引擎和配置 使用set语句可以查看当前hive的配置 set; 查看hive当前使用的engine set hive.execution.engine 阅读全文
摘要:
1.shell命令 shell是连接linux内核和linux命令的模块 命令名称 /bin/sh /bin/csh /bin/ksh chsh -s 输入新的shell,即修改shell 可以使用env命令查看当前的环境变量,可以查看当前使用的是什么shell命令 env | grep SHELL 阅读全文
摘要:
聚类是一种无监督的学习,它将相似的对象归到同一簇中。它有点像全自动分类。聚类方法几乎可以应用到所有对象,簇内的对象越相似,聚类的效果越好。 K-均值(K-means)聚类算法,之所以称之为K-均值是因为它可以发现k个不同的簇,且每个簇的中心采用簇中所含值的均值计算而成。 簇识别(cluster id 阅读全文
摘要:
1.编译ranger项目 git clone https://github.com/apache/ranger.git cd ranger git checkout -b release-ranger-2.1.0 release-ranger-2.1.0 mvn clean package -Dsk 阅读全文
摘要:
和回归树(在每个叶节点上使用各自的均值做预测)不同,模型树算法需要在每个叶节点上都构建出一个线性模型,这就是把叶节点设定为分段线性函数,这个所谓的分段线性(piecewise linear)是指模型由多个线性片段组成。 main.py 得到两段函数,以0.28为分界 分别为y=3.46877+1.1 阅读全文
摘要:
线性回归创建模型需要拟合所有的样本点(局部加权线性回归除外)。当数据拥有众多特征并且特征之间关系十分复杂的时候,构建全局模型的想法就显得太难了,也略显笨拙。而且,实际生活中很多问题都是非线性的,不可能使用全局限性模型来拟合任何数据。 一种可行的方法是将数据集切分成很多份易建模的数据,然后再利用线性回 阅读全文
摘要:
1.认证方式 系统的常用的认证方式如下:账号密码(Basic Auth),OAuth2.0,SAML,OIDC,LDAP等 1.OAuth2.0 是一种授权协议,旨在允许应用程序安全访问资源,而不是用来验证用户的身份。 它通常用于授权流程,以获得对受保护资源的访问权限。不兼容oauth1.0.允许第 阅读全文
摘要:
1.数据可视化 1.单变量可视化 参考:从kaggle房价预测看探索性数据分析的一般规律 查看pandas某列的统计指标 # 描述性统计 print(train_data['SalePrice'].describe()) count 1460.000000 # 行数 mean 180921.1958 阅读全文
摘要:
特征缩放(Feature Scaling)是一种将数据的不同变量或特征的方位进行标准化的方法。 在某些比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲(数量级)的纯数值,便于不同单位或量级的指标能够进行比较和加权。 特征缩放的好处: 参考:标准化的好处及常见处理方法 1. 提升 阅读全文
摘要:
线性回归 优点:结果易于理解,计算上不复杂 缺点:对非线性的数据拟合不好 适用数据类型:数值型和标称型数据 回归的目的就预测数值型的目标值。最直接的办法就是依据输入写一个目标值的计算公式。这个计算公式就是所谓的回归方程(regression equation),其中的参数就是回归系数,求这些回归系数 阅读全文
摘要:
在机器学习的分类问题中,我们都假设所有类别的分类代价是一样的。但是事实上,不同分类的代价是不一样的,比如我们通过一个用于检测患病的系统来检测马匹是否能继续存活,如果我们把能存活的马匹检测成患病,那么这匹马可能就会被执行安乐死;如果我们把不能存活的马匹检测成健康,那么就会继续喂养这匹马。一个代价是错杀 阅读全文
摘要:
cd到需要git的目录 初始化git仓库 git init git remote add origin git@github.com:tonglin0325/XXX.git 新建分支 git checkout -b testing 添加并转到testing分支,不要直接在master分支上操作 gi 阅读全文
摘要:
ubuntu下非root用户下获得使用wireshark的权限 在非root用户下不能使用wireshark用来抓包,所以需要进行以下操作: sudo groupadd wireshark sudo chgrp wireshark /usr/bin/dumpcap sudo chmod 4755 / 阅读全文
摘要:
使用自签名的证书的网站默认不会被浏览器信任,使用浏览器带打开可能会弹出如下界面,需要在浏览器中点击继续前往或者添加例外 添加的例外可以在Firefox浏览器中如下界面中设置——隐私与安全——证书中进行查看 生成CA私钥 ca.key是证书颁发机构(Certificate Authority,CA)的 阅读全文
摘要:
参考 作者:刘帝伟 原文地址:http://www.csuldw.com/ 损失函数(loss function)是用来估量你模型的预测值f(x)与真实值Y的不一致程度,它是一个非负实值函数,通常使用L(Y, f(x))来表示,损失函数越小,模型的鲁棒性就越好。损失函数是经验风险函数的核心部分,也是 阅读全文
摘要:
当做重要决定时,我们可能会考虑吸取多个专家而不只是一个人的意见。机器学习处理问题也是这样,这就是元算法(meta-algorithm)背后的思路。 元算法是对其他算法进行组合的一种方式,其中最流行的一种算法就是AdaBoost算法。某些人认为AdaBoost是最好的监督学习的方法,所以该方法是机器学 阅读全文
摘要:
对于线性不可分的数据集,可以利用核函数(kernel)将数据转换成易于分类器理解的形式。 如下图,如果在x轴和y轴构成的坐标系中插入直线进行分类的话, 不能得到理想的结果,或许我们可以对圆中的数据进行某种形式的转换,从而得到某些新的变量来表示数据。在这种表示情况下,我们就更容易得到大于0或者小于0的 阅读全文
摘要:
Platt SMO算法是通过一个外循环来选择第一个alpha值的,并且其选择过程会在两种方式之间进行交替: 一种方式是在所有数据集上进行单遍扫描,另一种方式则是在非边界alpha中实现单遍扫描。 所谓非边界alpha指的就是那些不等于边界0或者C的alpha值。对整个数据集的扫描相当容易,而实现非边 阅读全文
摘要:
或者编写Shell脚本restart_sougou.sh,放到/usr/bin目录下,不要忘记chmod修改运行权限,然后就能在终端输入restart_sougou命令来执行重启搜狗输入法 阅读全文
摘要:
搜索广告是指广告主根据自己的产品或服务的内容、特点等,确定相关的关键词,撰写广告内容并自主定价投放的广告。 参考:互联网搜索广告介绍(一) 互联网搜索广告介绍(二) 阅读全文
摘要:
1.Mongo集群类型 1.Master/Slave 已经不推荐 2.Replica Set 3.Sharded Cluster,其包含3个组件:mongos,config server和mongod 参考:mongodb 三种集群的区别(Replica Set / Sharding / Maste 阅读全文
摘要:
SVM有很多实现,现在只关注其中最流行的一种实现,即序列最小优化(Sequential Minimal Optimization,SMO)算法,然后介绍如何使用一种核函数(kernel)的方式将SVM扩展到更多的数据集上。 1.基于最大间隔分隔数据 几个概念: 1.线性可分(linearly sep 阅读全文
摘要:
1.广告归因的概念 在做用户增长的时候需要对各渠道(广告投放平台,如腾讯广告、字节-巨量引擎、百度营销平台等)上的投放效果进行广告归因,归因的作用是判断用户从何渠道下载应用(或打开落地页、小程序),通过匹配用户广告行为,分析是何原因促使用户产生转化。 广告归因的数据结果是衡量广告效果、评估渠道质量的 阅读全文