背景 通过 Leanote 写笔记,经过整理后可以直接发布 Blog 的这种模式比较戳我了。 不过一直有点忍受不了 Leanote 的分类逻辑和 Hexo ,Hugo ,Jekyll 等静态博客不太一样,用着主题市场中半成品的主题,就这样凑合着过了两年。 但直到看到了一款 Jekyll 的主题 Chirpy,可以说是一间钟情了,果断移植到 Leanote 上。 在移植过程中越来越忍受不了 Leanote 奇怪的分类逻辑,移植的不够完美,越想越气,忍无可忍,又想到 Leanote 官方从 2018 年就基本上停止更新了,然后就 fork 了源码修改了对应部分的逻辑。 移植后的主题:le
ROS修改 MTU 和 MSS 解决上网慢和页面显示不全问题
有时候国内的一些平台的一些资源加载不出来,ipv4 有些网站慢,ipv6 就是卡顿、资源完全加载不出来,比如起点小说网的图片,微信的图片,抖音一些的相关资源等。 为此我还搭建了 mosdsn 服务,配置某些网站在查询域名的时候只返回 ipv4 的地址,后来发现没有这个必要。 故障原因是 MSS 设置不正确,而服务器有设置不允许分片,所以导致部分数据包被丢包,最终导致结果如上。由于MSS 属于 Option,非强制要求。。 首先 Ros 的 Actual MTU 值或者 Max MTU 值改成和原有光猫的 MTU 值。如果 pppoe 已经拨通的情况下就以 Actual MTU 为准。
EPUB 格式详解
epub3 标准则是基于 html5、css3、svg 等 web 标准以及 mathML 等来展示内容,以 .epub 结尾的 zip 压缩文件。 epub3 规范使用 OCF (open container format) 标准规定的文件结构,根目录当中__必须__有一个 mimetype 文件和一个 META-INF 文件夹。其中,mimetype 文件中只有一个行内容 application/epub+zip,而 META-INF 中存放的则是表述整个文档的元数据。 在 META-INF 文件夹内必须有一个 container.xml 文件(除该文件以后,标准还定义了一些可选文
Quartus ii 调用 Modelsim
配置 Modelsim 设置仿真工具 assignments -> setting -> EDA tool setting -> simulation 选择需要的工具。 自动产生测试激励文件模板 processing -> start -> Start test bench template writer: 文件夹 simulation - modelsim 中产生一个测试激励文件 xxx.vt(Verilog test bench) 或者 xxx.vht(VHDL test bench) 连接 test bench 还是在 simula
vscode + verilog 环境配置
vscode 需要安装的插件: Verilog-HDL/SystemVerilog/Bluespec SystemVerilog: 语法高亮,自动补全,代码跳转,代码静态检查等 verilog-formatter: 自动格式化 需要安装的命令行程序: iverilog: 代码编译、静态检查等,也可以使用 modelsim, xvlog, verilator 等 ctags: 补全,大纲,跳转 iStyle Verilog Formatter: 代码格式化。这个需要手动编译,可以使用 g++ 或者 Visual Stuido 编译,附上一个 vs2022 编译好的 iStyle,如果提
Python的跨目录引用
经常遇到 Python 跨目录引用报 No module named xxxx 错误,略微整理一下。 区分Python中的一些概念 一个以 .py 结尾的文件就是一个 python module 任意一个文件夹,只要其中包含 python module,就可以叫做 python package.(Python2的话,该文件夹内还需要包含一个 __init__.py 文件) 我们既可以 import package,也可以 import module,以及 module 下的函数、类等等 Python引用自定义python文件的情况 utils和main位于同级目录下
反向传播原理的理解
如图所示,计算图的反向传播从右到左传播信号。反向传播的计算顺序是,先将节点的输入信号乘以节点的局部导数(偏导数),然后再传递给下一个节点。 首先来考虑加法节点的反向传播。这里以 z=x+yz = x + yz=x+y 为对象, 观察它的反向传播。z=x+yz = x + yz=x+y 的导数可由下式(解析性地)计算出来: ∂z∂x=1∂z∂y=1\frac{\partial z}{\partial x} = 1 \\ \frac{\partial z}{\partial y} = 1 ∂x∂z=1∂y∂z=1 也就是说,加法节点的反向传播只乘以 1。输入的值会原封不动地流向下一
迁移学习入门
简介 迁移学习(transfer learning)通俗来讲,就是运用已有的知识来学习新的知识,核心是找到已有知识和新知识之间的相似性,用成语来说就是举一反三。由于直接对目标域从头开始学习成本太高,我们故而转向运用已有的相关知识来辅助尽快地学习新知识。比如,已经会下中国象棋,就可以类比着来学习国际象棋;已经会编写Java程序,就可以类比着来学习C#;已经学会英语,就可以类比着来学习法语;等等。世间万事万物皆有共性,如何合理地找寻它们之间的相似性,进而利用这个桥梁来帮助学习新知识,是迁移学习的核心问题。 在迁移学习中,我们已有的知识叫做源域(source domain),要学习的新知识叫目标域
N2N 搭建教程
之前从 Zerotier 切换到 Tinc,但是在 ArchLinux 和创建的 Alpine 镜像中,连接成功一段时间后老是提示 Metadata socket read error for xxxxx: Connection reset by peer,搜了一圈也没有找到解决办法,干脆切换到 N2N 算了。 N2N是一款十分简单且强大的p2p组网软件。它可以实现组网和p2p直连。只需要拥有一台服务端,任何主机都可以接入进来做为客户端,功能更贴近 Zerotier。 安装 supernode 服务端 由于 VPS 的 Debian 软件仓库里的版本非常低,做了一个Dock
WireGuard 搭建组网教程
IOS 只支持一个 vpn 连接,如果想科学上网和连上家里的局域网,就需要频繁切换 vpn。之前使用了 tailscale 组网,choc 支持 tailscale,但作者疑似跑路。 Stash 和 Surge 支持 wireguard 协议,这样出国和回家就能在同一个 vpn 中实现,不同来回切换,索性再用 wireguard 再组一个虚拟网络。 shadowrocket 也支持 wireguard,但我尝试了一下,和服务端握手后仍然 ping 不通。 网络拓扑图如下: 用一个有公网服务器做 WireGuard 服务端,OpenWrt 和 IOS 做客户端。WireGuard