加密数据库Encrypted Database
超几何分布假设有 $N$ 个球,其中黑球 $M$ 个,白球 $N−M$ 个,每次不放回、随机地抽取一个球。那么在抽取总共 $y$ 个球的情况下有多少个黑球是一个随机变量。我们用$X$来表示这个随机变量,用$x$表示具体的黑球数量,那么满足 $X=x$ 的概率是
Pr(X=x,M,N,n) = \f ...
隐私保护求交集PSI
定义隐私集合求交(Private Set Intersection, PSI)允许持有各自隐私数据集的多方计算他们数据的交集,同时不泄露任何交集以外的信息。假设一方持有数据集A,另一方持有数据集B,则PSI的结果为A交B。A方从B方获得的信息仅为AB的交集;同理,B方从A方获得的信息仅为AB的交集。 ...
私有数据检索PIR
定义私有信息检索(Private Information Retrieval, PIR)的问题描述是:服务器Bob拥有一个数据库,其中有n个数据 $d_1,d_2,…,d_n$,客户端Alice要查询这个数据库的某条数据$d_i$,而Bob却不知道$i$的值。
如果我们对服务器的数据隐私也进行保护, ...
1025 PAT ranking
1025 PAT Ranking (25 分)Programming Ability Test (PAT) is organized by the College of Computer Science and Technology of Zhejiang University. Each test ...
1012 The Best Rank
1012 The Best Rank (25 分)To evaluate the performance of our first year CS majored students, we consider their grades of three courses only: C - C Prog ...
My Os - 鼠标
本篇文章我们要解决一个大问题,那就是鼠标。要让鼠标的移动能够实现,我们得实现完善部分系统中断。同理,中断实现了之后键盘的输入也是一样的道理了。
Day06 - 鼠标前期(中断)显示鼠标首先我们需要设计一个鼠标,我们用一个 16 * 16 的矩阵来表示
123456789101112131415161 ...
My Os - 文字显示
前面我们实现了界面的绘制,已经熟练掌握了绘图技能,下面我们可以用同样的方法实现文字的显示。
Day05(续) - 文字显示学过计组之后我们知道可以通过像素点阵来实现文字的显示。
代码整理首先我们要对之前写的 bootpack.c 进行一点小整理,让代码可读性更好。主要改进是使用结构体来储存屏幕的 ...
My Os - 界面
前面我们实现了引导区,下面我们继续完善磁盘磁道的读写。
Day02 - 读磁盘我们先把上一篇文章的 helloos.nas 改写一下,让他更像汇编语言的编写方式,并重命名为 ipl.nas。ipl = initial progrom loader
12345678910111213141516171 ...
My Os - hello world
最近发现来一本日本人写的书,叫做《三十天自制操作系统》。这本书自制的操作系统十分简单,但是该有的功能都有,而且提供了完整的工具和代码十分值得学习。
Day01 - Hello World第一天的主要工作是对现有的储存空间进行分区,我们打算先设计一个1.44M大小的操作系统。
我们先设计启动区,以下为 ...
BPR推荐算法介绍
本篇文章极大地参考了博客
论文下载
背景在商品推荐领域常用的方法有矩阵分解(Matrix Factorization)和最近邻搜索(kNN)等。但是这两种方法都没有针对推荐排序问题的优化方法,因此本文提出一个关于针对个性化推荐排序问题的优化方法——BPR-OPT,并将其应用到MF和kNN方法之中。
...