学习笔记
文章平均质量分 81
胡LiuJia
这个作者很懒,什么都没留下…
展开
-
LevelDB源码解析(5) WriteBatch
你也可以通过我的独立博客 —— www.huliujia.com 获取本篇文章简介LevelDB的官方注释是这么介绍WriteBatch的:WriteBatch holds a collection of updates to apply atomically to a DB如何保证原子性可能需要看完对WriteBatch的使用才能理清楚,这里只能确定一个WriteBatch对象可以包含多条更新记录(插入/删除),支持批量写入。WriteBatch的很多操作是通过辅助类来实现的,辅助类会直.原创 2021-10-02 09:18:04 · 562 阅读 · 1 评论 -
LevelDB源码解析(4) MemTable
原文作者:胡刘郏原文链接:https://www.huliujia.com/blog/c5e8646cb4765da867b3936b2bae62843bded7e5简介MemTable是LevelDB在内存中的缓存库。用户写入数据时,LevelDB会先把数据写入到MemTable中。如果MemTable写满了,就会新建一个MemTable进行写入。后台再异步把旧的MemTable压缩写到磁盘上。因为旧的MemTable不允许写入了,所以也被称为Immutable MemTmable。MemTa.原创 2021-10-02 09:09:25 · 374 阅读 · 0 评论 -
学习笔记:相似度度量与协同过滤
你也可以通过我的独立博客 —— www.huliujia.com 获取本篇文章相似度度量相似度度量关注的是两个对象是否相似,相似程度是多少?比如两张图片、两篇文章、两句话、两个人的喜好的相抵程度等。为了度量相似度,首先需要将比较对象转换成实数向量,这样计算机才能够理解。对象类型不同,转换方式也不同,最终目的都是将比较对象转换成实数向量。转换成实数向量之后就可以通过计算两个实数向量的相似度来作为对象的相似度。相似度的计算方法有很多种,常见的有余弦相似度、皮尔森相关系数。余弦相似度CosineS.原创 2021-03-28 22:48:53 · 630 阅读 · 0 评论 -
学习笔记:信息熵与决策树
你也可以通过我的独立博客 —— www.huliujia.com 获取本篇文章信息熵什么是信息熵信息熵用于度量”预测随机变量Y的取值“的难度。信息熵越大说明Y的取值的不确定性越大,即预测难度越大。本文用H(Y)表示预测Y值的信息熵。下表为两只球队的虚拟的胜、负、平历史记录,显然预测恒大比赛结果的难度要远小于绿城。因为恒大90%都是胜场,预测恒大胜就可以了。而绿城胜、平、负的概率都是三分之一,很难预测绿城的比赛结果。这里随便变量Y就是比赛结果,显然预测恒大比赛结果(即Y的取值为胜、平或者负)的信息.原创 2021-03-28 22:43:54 · 1196 阅读 · 0 评论 -
Pyhon+lxml+xpath快速实现网页爬虫(比BeautifulSoup好用)
你也可以通过我的独立博客—— www.huliujia.com 获取本篇文章背景最近因为工作需要写爬虫,以前用过BeautifulSoup,所以很自然的无脑上BeautifulSoup了,不过使用过程中发现BeautifulSoup有一个致命的缺陷,就是不能支持XPath。XPath可以快速在结构化的文档(如XML,HTML)中查找、访问元素的语言,语法比正则表达式还要简单,非常容易使用。在浏览器中其中可以方便地获取任何目标元素的XPath,简单来说XPath和文件路径很像,通过文件路径可以快速定.原创 2021-01-30 12:04:42 · 797 阅读 · 1 评论 -
使用lxml.etree解析中文网页时出现乱码问题的解决办法
吐槽不得不说网络这个东西害死人,一群只会复制粘贴的瓜皮儿。 没一点有用的答案,还要写的像模像样装x这个问题折腾了一个晚上,晚上找了各种方案,都是相互抄,然而都不能解决问题,找的过程中看到一个博主发出了这样的感慨,真的深表赞同啊,鱼目混杂的内容太多了。lxml.etree.tostring 乱码的解决方案话不多说,直接show code,很简单的一个示例代码。这里的关键是to string时用utf-8编码,然后用utf-8解码。#!env python3from urllib.request原创 2021-01-30 12:01:28 · 4266 阅读 · 5 评论 -
Docker基础使用
本文镜像地址本文使用的运行环境Ubuntu 16.04.5 LTS全新安装docker参考:https://docs.docker.com/install/linux/docker-ce/ubuntu/安装依赖包sudo apt-get updatesudo apt-get install apt-transport-https ca-certificates curl ...原创 2018-11-30 19:06:41 · 588 阅读 · 0 评论 -
Github pages + Hugo 搭建静态博客
前景提要阮一峰总结了喜欢写Blog的人,会经历三个阶段。第一阶段,刚接触Blog,觉得很新鲜,试着选择一个免费空间来写。第二阶段,发现免费空间限制太多,就自己购买域名和空间,搭建独立博客。第三阶段,觉得独立博客的管理太麻烦,最好在保留控制权的前提下,让别人来管,自己只负责写文章。在过去,进入第三阶段需要付出巨大的资金成本(要花钱请人啊。。。),Github Pages的出现,极大地...原创 2019-02-23 17:50:44 · 2519 阅读 · 0 评论