主页

开学祭

Q: 学校怎么样? A: 很大,不用导航路都找不到。 Q: 每天干什么? A: 吃饭上课睡觉打游戏。 Q: 你居然还睡觉? A: 还要适应一段时间。 Q: 你喜欢在寝室还是在图书馆学习? A: 我连图书馆在哪都不知道? Q: 一天吃几顿饭? A: 两餐都吃不下。 Q: 学校食堂怎么样? A: 小份饺子15个,阿姨害怕我不够吃,然后最后五个饺子只吃馅不吃皮。 Q: 评价一下每节课。 A: 语文课快乐但啥都没学到,数学课好像学了很多但什么都不懂,英语课没上考试先声夺人,化学课不知所云,生物课上一节忘一节。 总结: 开学快乐! 目标:好好学习,天天向上,每天早起背英语,晚上复习,9点睡,7点起,养成好身体,还有什么不满意,尽管和我提。

阅读更多

推荐系统之协同过滤矩阵分解

前言 推荐系统中有许多算法,本文主要讲解基于协同过滤的矩阵分解算法。 协同过滤 协同过滤简单来说是利用某兴趣相投、拥有共同经验之群体的喜好来推荐用户感兴趣的信息,个人通过合作的机制给予信息相当程度的回应(如评分)并记录下来以达到过滤的目的进而帮助别人筛选信息,回应不一定局限于特别感兴趣的,特别不感兴趣信息的纪录也相当重要。 矩阵分解 这里主要介绍LFM模型。 假如有两张表,一张是物品的属性表。 内容是每个物品该性质的程度。   性质1 性质2 性质3 物品1       物品2   ...

阅读更多

奇异值分解之图片压缩

这一篇主要是代码,后面有理论。 import numpy as np from PIL import Image img = Image.open("3.png").convert("RGB") n, m = img.size pix = img.load() r, g, b= img.split() red = np.array(r) green = np.array(g) blue = np.array(b) 以上将图像读取并分离为rgb from numpy.linalg import svd def chg(pic): U, s, VT = svd(pic) Sigma = np.zeros( (pic.shape[0], pic.shape[1]) )...

阅读更多

评论文本分类

前言 本项目旨在巩固机器学习算法,测试不同机器学习对文本分类的效果 由于暑假前不会更新(认真备战期末考试),本文先占坑,以后再补。 目的 根据已有数据,判断一条评论的星级。 数据的获得与处理 下载亚马逊评论数据集,获得 json 文件。 将文件拆成 $25$ 个,每个包含 $10^5$​ 条评论的小文件 对每个文件提取单词,转小写,统计出常用单词 $1729$​ 个(出现次数超过千分之一),转为编号形式。 平均每条评论出现单词数不多(远小于 $1792$ 个),算法可以对此进行优化。 中小规模数据效果 训练集 $10^5$ 个,测试集 $10^5$ 个。 感知机 正确率 $70\%$ 左右。 作为最简单的神经网络,这个正确率已经很可观了。 由于感知机只能...

阅读更多

线性代数常见操作及其复杂度

前言 最近在预习线性代数 (实际上什么也没学懂) 随便写几篇博客水一水,主要是很久没写博客了。 正文 话不多说,直接开始! 矩阵乘法 暴力操作显然是可以做到 $O(n^3)$​ 这也是它的实用复杂度,然而有很多优化的计算方法。 以下几种算法均基于矩阵分块。 Strassen算法 通过将矩阵分为2*2,通过设置中间变量的方式将原本8次乘法优化为7次乘法和18次加法。 如此通过主定理即可求出时间复杂度 \[T(n)=7*T(n/2)+T(n^2)\\ T(n)=O(n^{\log_27})\approx O(n^{2.81})\] 目前最优算法时间复杂度约为 $O(n^{2.37})$ ,推荐一下这篇文章,但我好像看不太懂。 此外多线程,GPU等均可优化矩阵乘法。 ...

阅读更多