机器学习之旅---奇异值分解
本次的讲解主要内容如下:
1.什么是奇异值分解?为什么任意实矩阵都存在奇异值分解?
2.怎么用C语言代码实现SVD分解?
3.实际应用:
基于SVD的图像压缩
基于SVD的协同过滤推荐系统
一、SVD奇异值分解概念
在多数情况下,数据中的一小段携带了数据集中的大部分信息,其他信息要么是噪声,要么就是毫不相干的信息。
OpenCV矩阵运算
矩阵处理
1、矩阵的内存分配与释放
(1) 总体上:
OpenCV 使用C语言来进行矩阵操作。不过实际上有很多C++语言的替代方案可以更高效地完成。
在OpenCV中向量被当做是有一个维数为1的N维矩阵.
windbg调试堆破坏
堆破坏
所谓的堆破坏,是说没控制好自己的指针,把不属于你分配的那块内存给写覆盖了。这块内存可能是你程序的数据,也可能是堆的管理结构。那么这个会导致怎样的后果呢?可能的情况我们来yy下
把程序里的计算结果覆盖了,这也许会让你重复看了N次代码,校验了N次计算逻辑也搞不明白为何计算结果还是有问题
堆管理结构被破坏了,new/delete,或者malloc/free操作失败
等等等等~
堆破坏较为理想的情况是被修改的数据会马上导致程序crash,最差的情况是你的堆数据莫名其妙在今天被改了,但明天才crash。
单源最短路SPFA算法
$huaji^{233……}$模板:洛谷 P3371
#include
#include
#include
#include
#include
using namespace std;
struct data{
int v;int next;
int valu...