Home
Home
取消

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

Leanote 支持 Mermaid,Chartjs 及修复 Bug

支持 emoji、chart.js 以及 mermaid 参考的大佬地址:https://github.com/jim3ma/leanote 下载 note.html 替换 leanote/app/views/note/note.html 下载 note-dev.html 替换 leanote/app/views/note/note-dev.html 下载 md2html.js 替换 leanote/public/libs/md2html/md2html.js 下载 main-v2.js 替换 leanote/public/md/main-v2.js 下载 default.css 替换

Mathematica 模拟滑块摆运动

写这个主要是为了Mathematica的动画制作,Mathematica官方文档给出的是用Animate及相关的函数,但这并不能满足题目的要求,所以选择创建GIF图片。 题目 滑块摆由一置于光滑杆上的质量为m的滑块A、一质量为M的小球B和长度为L,质量不计的刚性杆铰接而成,不计各处摩擦,以过A点的水平面为零势能面,通过Lagrange方程建立系统的运动方程,利用Maple软件画出: 1. 滑块A的位移x随时间t的变化曲线 2. 角度φ随时间t的变化曲线 3. 滑块摆的运动动画 拉格朗日力学分析 在力学中经常使用 Lagrange 方程来分析。 在滑块摆

MiniDlna 添加对 rmvb 的支持

MiniDLNA(官网)----DLNA服务端,不支持rm、rmvb格式的文件分享,但可以自己修改源文件来支持,所以就选它了。它还自带一个Web网页,可以显示分享资源数与当前客户端名字等等,在浏览器里打开http://本机IP:8200 下载源代码 目前minidlna最新版本1.1.5, 下载地址sourceforge.net 修改源文件 附上已经修改好的源码一份。 metadata.c //line 840 else if( strncmp(ctx->iformatctx->name, "matroska", 8) == 0 ) xasprint

Tinc 搭建教程

简介 最近从 Zerotier 切换到 Tinc,是由于公司网络的 NAT 层数太多,是 Symmetric NAT,Zerotier p2p 打洞几乎不成功,连接国内自建的 Moon 都费劲。切换到 Tinc 后目前体验良好。 附一个NAT类型测试工具:NAT类型测试.zip Tinc 是一个组建虚拟专用网络(VPN)的工具,以 GNU 协议发布,通过隧道及加密技术在互联网上点与点之间创建专有网络。tinc 在网络层工作,因此无需对现有软件进行修改和配置。您可以使用 tinc 搭建专属的低延迟、高带宽、可扩展的 P2P VPN。其数据通讯经过加密和压缩,能避免敏感数据和隐私的泄露。 无

Tensorflow 调用 Matlab 生成的 .mat 文件

matlab 处理好的数据想送进 Tensorflow 的神经网络中,在数据量极大的时候,全部读进内存也不是太理想,综合 tfrecord,自己构建 tfds 数据集等方式,还是生成 tf.data.Dataset 会更便捷一些。 在数据量极大的时候,期望的是 Tensorflow在使用数据的时候才读取相应的数据,则要求Matlab保存数据的时候不能将所有数据保存到一个大的 .mat 文件,而是应该分开保存: path_to_data └───────0.mat 1.mat 2.mat ...Copy 如果保