摘要: 在 Zig 中实现接口 实现接口的关键是遵循特定的函数调用约定,包含接口通常由函数原型和定义组成,表示了一组要被实现的方法或行为。实现接口的关键在于确保函数的参数类型和返回值等方面与接口定义一致。 抽象:可以通过使用函数指针、结构体和指针、泛型等技术来实现。抽象的目的是将具体的实现细节与接口定义分离 阅读全文
posted @ 2024-05-19 13:51 Violeshnv 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 想用用 GTK4,所以升级到 22.04 了。 不过没想到更新之后还有意外之喜,除了 UI 变得更好看了,而且也解决了扬声器无声和蓝牙耳机短连的老问题,以前除了自己写驱动程序以为的方法都试过了也没解决。 查看 Ubuntu 版本,如果版本是 18.04 则输出如下 cat /etc/lsb-rele 阅读全文
posted @ 2024-03-24 00:25 Violeshnv 阅读(335) 评论(1) 推荐(0) 编辑
摘要: Rust 命令行俄罗斯方块 先放一个 gif 在这里。 使用 crate: std rand terminal 。 代码地址 // todo 阅读全文
posted @ 2023-12-09 13:52 Violeshnv 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 类似 #ifndef NDEBUG do_something(...) #else do_otherthing(...) #endif logging 模块 如果有无 NDEBUG,只在于是否输出一些信息,那么可以使用 logging 模块,这是一个用于记录和管理日志信息的标准库,通过配置日志级别, 阅读全文
posted @ 2023-11-30 22:03 Violeshnv 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 编译期类型名获取 C++20 标准,使用库 std::source_location。 #include <source_location> C++ 20 之前 在 C++ 20 前有两种方法 __PRETTY_FUNCTION__ __FUNCSIG__ 通过截取函数签名中的 T = ... 获取 阅读全文
posted @ 2023-11-20 21:51 Violeshnv 阅读(297) 评论(0) 推荐(0) 编辑
摘要: MIT 6.828 Lab1 MIT 课程实验本体 https://pdos.csail.mit.edu/6.828/2018/schedule.html 你可以在这里找到所有代码,一个实验一个分支 https://github.com/VioleshnvQuetsall/mit-6.828-lab 阅读全文
posted @ 2023-09-26 00:26 Violeshnv 阅读(84) 评论(0) 推荐(0) 编辑
摘要: ## Mixup, TTA, and Ensemble 在[上一篇文章](https://www.cnblogs.com/violeshnv/p/17583908.html)中使用了普通的 CNN 实现了对 CIFAR10 数据集 89% 的准确率。 本文通过实现三种技术来进一步提高准确率 - Mi 阅读全文
posted @ 2023-07-27 01:24 Violeshnv 阅读(98) 评论(0) 推荐(0) 编辑
摘要: ## Shallow CNN 从最简单的卷积神经网络(CNN)开始。卷积神经网络是神经网络的一种(子集),其结构主要包括以卷积层、池化层为主的特征提取部分和全连接层为主的分类部分。 - 卷积层使用卷积核对输入进行卷积操作。卷积操作的目的是对图像进行扫描以找到最接近卷积核所代表的特征。其输出称为特征图 阅读全文
posted @ 2023-07-27 01:22 Violeshnv 阅读(161) 评论(0) 推荐(0) 编辑
摘要: ## 使用 CNN 提取内容和风格进行迁移 [TOC] 本文演示了使用 CNN 进行风格迁移(style transfer)的深度学习 PyTorch 实现。 完整实现代码位于 https://github.com/VioleshnvQuetsall/neural-transfer 的 cnn-tr 阅读全文
posted @ 2023-05-26 16:01 Violeshnv 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 好久没写爬虫,试着将音乐通过直链爬下来,然后在本地组装成完整的音乐。 也可以作为主要用到的三个库 requests、pandas、eyed3 的一次实践。 本文的 headers 将会被省略 import time import requests import os import eyed3 imp 阅读全文
posted @ 2023-05-09 14:48 Violeshnv 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 马尔可夫不等式(Markov's inequality) $X\ge0$ 为非负随机变量,$t>0$ 为常数,则有 $$ \begin{align*} \mathbb P(X\ge t)\le{\mathbb EX\over t} \end{align*} $$ 证: 指示器函数 $I\lbrace 阅读全文
posted @ 2023-04-20 21:30 Violeshnv 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 耗时一个月,全部独立完成,部分比较简单的题目没用给出题解。一般只给出代码,比较难或者有趣的题目会给出分析。 使用 DrRacket 的语言库 #lang sicp 作为解释器,除了部分难以给出题设环境的、涉及语言具体实现的、和使用一些省略(....)的题解,一般都是可以运行的。 Building A 阅读全文
posted @ 2023-03-05 22:09 Violeshnv 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 设计算法的时候发现有时候算法无法结束,算法采用随机数据 a = np.arange(6).reshape(2, 3) fail_to_chosen = np.average(a[np.zeros(2, dtype=bool)], axis=0) 则 fail_to_chosen = array([n 阅读全文
posted @ 2023-01-22 23:11 Violeshnv 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 修改用户注册表导致 Win10 无法启动(具体为不显示登录界面)。 解决方法: 使用电源键强制重启 开机时点击 F8 进入高级选项菜单 启动命令提示符界面,将在这里修改注册表 启动命令提示符之后会进入 X 盘 X:\Windows\System32,首先需要导入被修改的用户注册表,假设这个用户名字为 阅读全文
posted @ 2023-01-22 23:11 Violeshnv 阅读(800) 评论(0) 推荐(0) 编辑
摘要: 支持向量机 支持向量分类 线性可分数据和硬间隔 支持向量机的学习策略为间隔(margin)最大化,间隔的测量需要在特征空间中选择。 首先考虑线性可分的数据,输入为 $\pmb x$,特征为 $\pmb\Phi(\pmb x)$,标签为 $y\in\lbrace-1,1\rbrace$。数据的判定函数 阅读全文
posted @ 2023-01-09 00:32 Violeshnv 阅读(23) 评论(0) 推荐(0) 编辑