数据结构、算法原理、机器学习、数据库
博主自学数据结构与算法原理的笔记!
光电的一只菜鸡
个人技术交流群833459254
展开
-
Pytorch:训练中断再恢复
Pytorch:训练中断再恢复时的注意事项原创 2024-05-16 14:59:34 · 558 阅读 · 1 评论 -
两小时看完花书(深度学习入门篇)
深度学习入门原创 2024-05-14 21:45:21 · 2007 阅读 · 0 评论 -
OSError: [WinError 1455] 页面文件太小,无法完成操作 的问题
实质问题是报错:caffe2_detectron_ops.dll“ or one of its dependencies。安装之后顺利测试通过。原创 2024-05-11 16:24:11 · 241 阅读 · 0 评论 -
Scikit-Learn
机器学习中的重要角色 Scikit-Leran(官网:https://scikit-learn.org/stable/),它是一个基于 Python 语言的机器学习算法库。由于 Scikit-Learn 的存在极大地提高了机器学习的效率,让开发者无须关注数学层面的公式、计算过程,有更多的更多的时间与精力专注于业务层面,从而解决实际的应用问题。Scikit-Learn 的基本功能主要被分为六大部分:分类,回归,聚类,数据降维,模型选择和数据预处理。原创 2024-04-17 22:33:02 · 292 阅读 · 0 评论 -
tensorboardx与pytorch版本对应关系
原创 2024-04-17 13:22:27 · 906 阅读 · 0 评论 -
机器学习算法快速入门
机器学习(Machine Learning,简称 ML)是人工智能领域的一个分支,也是人工智能的核心,其涉及知识非常广泛,比如概率论、统计学、近似理论、高等数学等多门学科。就当下而言,Python 无疑是机器学习领域最火的编程语言,这得益于 Python 对科学计算的强大支持。因此,本套教程中关于机器学习算法的代码均采用 Python 机器学习库 sklearn 编写。原创 2024-04-15 21:43:55 · 1685 阅读 · 0 评论 -
Point-Nerf复现及解析
Pytorch是torch的python版本,是由Facebook开源的神经网络框架,专门针对 GPU 加速的深度神经网络(DNN)编程。Torch 是一个经典的对多维矩阵数据进行操作的张量(tensor )库,在机器学习和其他数学密集型应用有广泛应用。与Tensorflow的静态计算图不同,pytorch的计算图是动态的,可以根据计算需要实时改变计算图。pytorch相对于tensorflow出现的较晚一些,主要是针对深度神经网络而开发出来,这几年发展也是十分不错;原创 2024-04-12 14:57:02 · 1033 阅读 · 0 评论 -
不允许在constexpr函数中进行声明
在网上查找很久无果,后面通过查看编译记录,发现是VS与pycharm环境下C++标准不匹配的问题,然后将pycharm里面的所用到的cl编译器的换成了VS2019版本的,然后问题解决。原创 2024-04-10 22:17:08 · 172 阅读 · 0 评论 -
SaaS、IaaS和 PaaS
有了laaS,企业在开发APP时,只需在公有云平台上注册一个账号,花点钱,配置各种云服务器,各种大小的存储,各种带宽的网络,都配齐,不用操心诸如机房选址、设备采购、实体服务器、存储、网络等问题,只要一个账号,便解决了。而作为程序员,只需在服务器上安装各类runtime,中间件,数据库等等以及开发这款APP的前端与后台,测试,上线,再迭代,再更新的操作,如果没有IaaS,前期我们的工作还有很多。SaaS,提供最上层服务。而中间的这些,就是利用最右边的基础设施搭建出的平台,从而承载最左边的【应用】和【数据】。原创 2024-03-12 16:34:45 · 454 阅读 · 0 评论 -
conda基本操作
conda创建、查看、删除虚拟环境原创 2024-01-27 21:40:12 · 200 阅读 · 0 评论 -
什么是SQLite
SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库,这意味着与其他数据库不一样,您不需要在系统中配置。就像其他数据库,SQLite 引擎不是一个独立的进程,可以按应用程序需求进行静态或动态连接。SQLite 直接访问其存储文件。原创 2023-09-28 21:41:39 · 292 阅读 · 0 评论 -
类内距离与类间距离
https://blog.csdn.net/qq_36979522/article/details/89480352原创 2023-04-20 10:45:27 · 440 阅读 · 1 评论 -
DBSCAN聚类
https://zhuanlan.zhihu.com/p/185623849原创 2023-04-19 21:12:27 · 145 阅读 · 0 评论 -
层次聚类算法
https://zhuanlan.zhihu.com/p/363879425原创 2023-04-19 21:03:32 · 153 阅读 · 0 评论 -
信息熵(entropy)定义公式的简单理解
信息熵与信息量原创 2023-03-25 16:21:37 · 175 阅读 · 0 评论 -
损失函数是什么?
https://zhuanlan.zhihu.com/p/261059231原创 2023-03-21 19:13:32 · 153 阅读 · 0 评论 -
超平面是什么?
超平面原创 2023-03-18 18:14:23 · 143 阅读 · 0 评论 -
concat层多用于利用不同尺度特征图的语义信息,将其以增加channel的方式实现较好的性能
https://blog.csdn.net/xys430381_1/article/details/88355956原创 2023-03-17 13:39:16 · 264 阅读 · 0 评论 -
卷积神经网络CNN基本原理详解
https://blog.csdn.net/woaijssss/article/details/79535052原创 2023-03-17 10:04:40 · 143 阅读 · 0 评论 -
机器学习里面的Ground Truth是什么意思?
https://blog.csdn.net/FrankieHello/article/details/80486167原创 2023-03-15 20:27:46 · 258 阅读 · 0 评论 -
深度学习pipeline和baseline是什么意思?
https://blog.csdn.net/qq_38463737/article/details/120743532原创 2023-03-15 20:10:27 · 224 阅读 · 0 评论 -
感受野是什么?
在卷积神经网络中,感受野(Receptive Field)是指特征图上的某个点能看到的输入图像的区域,即特征图上的点是由输入图像中感受野大小区域的计算得到的。因此感受野的值可以用来大致判断每一层的抽象层次。公式求取的感受野通常很大,而实际的有效感受野(Effective Receptive Field)往往小于理论感受野,因为输入层中边缘点的使用次数明显比中间点要少,因此作出的贡献不同,所以经过多层的卷积堆叠后,输入层对于特征图点做出的贡献分布呈高斯分布形状。原创 2023-03-15 20:06:05 · 3049 阅读 · 0 评论 -
pytorch(一)——损失函数
损失函数,又叫目标函数,是编译一个神经网络模型必须的两个参数之一。另一个必不可少的参数是优化器。损失函数是指用于计算标签值和预测值之间差异的函数,在机器学习过程中,有多种损失函数可供选择,典型的有距离向量,绝对值向量等。 上图是一个用来模拟线性方程自动学习的示意图。粗线是真实的线性方程,虚线是迭代过程的示意,w1 是第一次迭代的权重,w2 是第二次迭代的权重,w3 是第三次迭代的权重。随着迭代次数的增加,我们的目标是使得 wn 无限接近真实值。,pytorch 中定义了很多类型的预定义损失函数,原创 2021-08-23 12:39:56 · 930 阅读 · 0 评论 -
pytorch(零)——变量与求导
1.pytorch基础知识 PyTorch 是 Facebook 发布的一款非常具有个性的深度学习框架,它和 Tensorflow,Keras,Theano 等其他深度学习框架都不同,它是动态计算图模式,其应用模型支持在运行过程中根据运行参数动态改变,而其他几种框架都是静态计算图模式,其模型在运行之前就已经确定。2.变量与求导 先看看 Tensor,pytorch 中的数据都是封装成 Tensor 来引用的,Tensor 实际上就类似于 numpy 中的数组,两者可以自由转换。import to原创 2021-08-20 16:24:58 · 449 阅读 · 0 评论 -
oracle数据库和mysql数据库的区别
参考链接:https://blog.csdn.net/qq_42031653/article/details/985138691、体积不同。oracle是oracle的数据库产品,它体积比较庞大,一般是用来开发大型应用(例如分布式)的。而mysql的体积相对来说比较小,较之oracle更容易安装、维护以及管理,操作也简单,最重要的是它是三个中唯一一个开源数据库,但目前也属于Oracle公司的产品了。2、容量不同。Oracle容量无限,根据配置决定;而mysql使用MyISAM存储引擎,最大表尺寸为6原创 2021-01-27 11:37:04 · 1697 阅读 · 0 评论 -
了解PostgreSQL
0.教程链接https://www.runoob.com/postgresql/postgresql-tutorial.html1.简介PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统。POSTGRES的许多领先概念只是在比较迟的时候才出现在商业网站数据库中。PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询、外键、触发器、视图、事务完原创 2021-03-19 21:14:07 · 633 阅读 · 0 评论 -
oracle的安装
版本:oracle11g参考链接:https://www.cncrk.com/downinfo/262271.html下载地址:https://pan.baidu.com/s/1dDZz1zr#list/path=%2F原创 2021-01-27 21:47:48 · 115 阅读 · 0 评论 -
AI框架对比
1. TensorFlow使用数据流图表的可伸缩机器学习的计算!语言:C ++或Python。当进入AI时,你会听到的第一个框架之一就是Google的TensorFlow。TensorFlow是一个使用数据流图表进行数值计算的开源软件。这个框架被称为具有允许在任何CPU或GPU上进行计算的架构,无论是台式机 、服务器还是移动设备。这个框架在Python编程语言中是可用的。TensorFlow对称为节点的数据层进行排序,并根据所获得的任何信息做出决定。优点:使用易于学习的语言(Python)。原创 2021-03-25 11:20:37 · 1050 阅读 · 0 评论 -
MLPACK C++ 的机器学习库
0.官网https://www.oschina.net/p/mlpack?hmsr=aladdin1e11.简介mlpack是一个快速、灵活的机器学习库(c++编写),其目的是提供快速便捷的机器学习算法。mlpack将这些算法提供为简单的命令行程序,Python绑定和C ++类,然后可以在c++代码用或者Python中调用他们来完成机器学习的工作。它重点在于其扩展性、高速性和易用性。它的目的是让新用户通过简单、一致的API使用机器学习,同时为专业用户提供C++的高性能和最大灵活性。他的性能超出大原创 2021-03-25 11:06:48 · 809 阅读 · 0 评论 -
学习机器学习——神经网络
0.神经网络是干嘛的?神经网络作为一种非线性的网络模型怼非线性科学进行研究,是一种模仿人类神经网络行为特征的分布式并行信息处理算法结构的动力学模型。它用于接收多路输入刺激,按加权求和超过一定阈值时产生“兴奋”输出,来模仿人类神经元的工作方式,并通过这些神经元相互连接的结构和反映关联强度的权系数,使其具有各种复杂的信息处理能力。其不是由于元性能不断改进,而是通过复杂的互联关系得以实现。所有它是一种联接机制模型,具有复杂系统的许多重要特征。其实质反映了输入转化为输出的一种数学表达式,这种数学关系是...原创 2021-02-11 13:36:36 · 733 阅读 · 1 评论 -
学习数据结构(九)——图
0.图的定义图是由顶点集合和顶点关系集合组成的一种数据结构:,其中,顶点集合V是有穷非空集合,其包含数据元素;E是边的有穷集合,Path(x,y)表示从顶点x到顶点y的一条单向通路,通路有方向,图包括有向图和无向图。...原创 2021-02-23 23:06:34 · 248 阅读 · 0 评论 -
学习数据结构(八)——树
0.树的定义树是n个结点的有限集,有且只有一个特定的称为根的结点,当时,其余结点可分为m个互不相交的有限集,其中集合本身又是一棵树,并且称为树的子树。树的根结点没有前驱结点,除了根结点外的所有结点有且只有一个前驱结点,树中的所有结点可以有零个或多个后驱结点。树中的结点包含一个数据元素和若干指向其子树的分支,结点拥有的子树数目称为结点的度,度为0的结点称为叶子或终端结点,度不为0的结点称为非终端结点或分支结点,树中结点的最大层次称为树的深度,叶子结点高度为1,非叶子结点的高度等于子女结点高度加1,树的高度原创 2021-02-12 16:09:31 · 815 阅读 · 0 评论 -
学习数据结构(七)——串
1.什么叫串?字符串简称叫串。串是由0个、1个、多个字符组成的有限序列。串中任意一个连续的字符组成的子序列称为该串的子串。2.C++的串处理库其库函数名为<string>。(1)复制函数函数原型:char* strcpy(char *strDestinnation,const char* strSource);将Source复制到Destinnation。(2)...原创 2021-02-10 20:46:40 · 423 阅读 · 0 评论 -
学习数据结构(六)——广义表
1.什么叫广义表?一个广义表是n个表元素的一个序列,若n=0时称为空表。设为广义表的第i个元素,则广义表GL的一般表示与线性表相同:。其中,n表示广义表的长度,即广义表中所含元素的个数,且n0。如果是单个数据元素,则是广义表GL的原子;如果是一个广义表,则是广义表GL的子表。广义表具有如下属性:(1)有序性:广义表中的数据元素有相对次序。(2)有长度:广义表的长度定义为最外层包含元素个数。(3)有深度(4)可共享:一个广义表可以为其他广义表共享。(5)可递归:...原创 2021-02-09 22:47:26 · 2544 阅读 · 0 评论 -
学习数据结构(五)——数组
1.数组数组是下标与值成对的集合。在C++中有静态与动态之分:(1)静态数组:定义时显式声明数据类型与空间内存大小。(2)动态数组:程序运行时才分配空间的。原创 2021-02-01 21:36:27 · 515 阅读 · 0 评论 -
学习数据结构(四)——队列
1.队列队列是限定在表的两端插入或删除的线性表。先进入队列的元素先删除,因此,其特点是先进先出。(1)顺序队列采用顺序结构。其应包括队首、尾指示器、队列起始地址、队列允许最大空间数。(1)进队操作:进队时队尾指针加1,再将新的元素按照队尾指示器所指地址插入。(2)出队操作:出队时对头指示器加1,再将队首指示器所指地址的元素取出。队列空的时候,出队会错误;队列溢出的时候,入队会错误。(2)循环队列当队尾指示器指向maxsize+1处时候,而队首指示器不为0,这种现象称为假溢出。消除假溢原创 2021-01-31 20:37:56 · 276 阅读 · 3 评论 -
学习数据结构(三)——栈
1.栈栈是一个线性表,如下图,其特点是后进先出。对栈来说,表尾部是栈顶,表头是栈底,不含元素的栈叫空栈。栈的基本操作除了出栈、入栈,还有初始化栈,空栈判断、取栈顶元素等。...原创 2021-01-30 22:48:55 · 161 阅读 · 0 评论 -
学习数据结构(二)——顺序表与链表
1.线性表线性表是形式为数据元素的有序序列。长度可根据需求增加或减少,不仅可以访问数据元素,还可以进行插入、修改、删除等操作。原创 2021-01-29 00:22:02 · 271 阅读 · 0 评论 -
学习数据结构(一)——算法常识
0.算法基本概念算法是用有限步数求解某问题的一套明确定义的集合,是为执行特定任务的任何运算序列。一个算法应该具备下面五个特性:(1)有穷性:对于任何一组输入,必须保证有限步骤输出结果。(2)确切性:算法中的每一行指令必须有确切的含义,相同输入只能得到相同输出。(3)可行性:算法必须可以准确运行且是有限步骤执行完(4)输入(5)输出比较算法优劣,主要看(1)准确性:算法能够正确执行预定功能和性能需求。(2)可使用性:即对用户友好。(3)可理解性:算法应该是可被理解的,方便测试与维护(4)效率:主原创 2021-01-27 20:09:07 · 214 阅读 · 0 评论 -
学习数据结构(零)——初识数据结构
博主非科班出身,而且没有离散数学的基础,我是在C++的基础上学习数据的,可能大多数演示源码都是由C++写的。可能有的东西确实不如科班大佬们清楚。原创 2021-01-27 16:50:20 · 352 阅读 · 0 评论