自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (7)
  • 收藏
  • 关注

原创 0x01 设计模式之设计原则

设计模式是软件开发过程中一些常见问题的典型,而非具体的解决步骤(算法),可以理解为软件开发的套路(通常是面向对象编程的软件设计模式)。

2022-12-13 23:04:51 247 1

原创 跨模态神经搜索实践VCED 基于Streamlit实现前端页面设计和逻辑

讲解Streamlit快速入门、如何在页面展示变量,展示变量的形式、Streamlit的组件,布局、缓存、多页面;基于Streamlit和VCED需求实现页面设计和对应的页面逻辑

2022-11-20 22:59:21 1181

原创 跨模态神经搜索实践VCED CLIP简介

多模态和跨模态应用;CLIP;Jina;多模态和跨模态应用挑战,解决方案。

2022-11-18 17:37:03 858

原创 跨模态神经搜索实践VCED Jina入门

Jina介绍、基本概念、DocArray、文本、图像、视频处理、Executor、Flow相关使用

2022-11-16 19:52:42 360

原创 跨模态神经搜索实践VCED 环境准备

安装WSL2、Ubuntu、VSCode、安装miniconda、docker desktop、docker换源、ubuntu换源等

2022-11-14 22:45:27 802

原创 PyTorch的生态和模型部署

主要讲解了PyTorch的生态(torchvision, torchvideo, torchtext,分别对应图片、视频和文本),及其相关使用,然后介绍了使用ONNX完成PyTorch的模型部署,其流程为转换torch模型为ONNX格式、验证模型是否可用、使用ONNX Runtime进行模型推理。

2022-09-25 23:48:19 1998

原创 PyTorch可视化

使用PyTorch可视化网络结构(torchinfo)、以CNN为例讲解了卷积核可视化、特征图可视化、CNN CAM可视化(pytorch-grad-cam),同时以FlashTorch为例讲解了快速使用CNN的三种可视化,最后讲解了TensorBoard可视化模型的训练过程,包括模型结构、图像、连续变量、参数分布的可视化

2022-09-23 23:36:16 1138

原创 PyTorch模型进阶技巧

讲解PyTorch自定义损失函数(基于函数、基于类)、动态调整学习率(PyTorch官方scheduler,自定义调整策略)、模型预训练及模型微调(基于torchvision.models, timm)、半精度训练(使用float16)、数据增强(imgaug)、使用argparse设置超参数

2022-09-21 23:49:40 447

原创 PyTorch模型定义和相关使用

主要介绍PyTorch模型定义的方式(Sequential,ModuleList、ModuleDict)及它们的优缺点,然后介绍如何基于模块(模型块,通常是事先定义好的多个层组成的部分)快速搭建大型复杂网络,接着介绍如何修改已有的模型(修改模型输出,添加额外输入,添加额外输出),最后介绍模型的保存和读取(结合单卡和多卡介绍)

2022-09-18 22:35:49 871

原创 PyTorch的组件和实战

深度学习和机器学习的流程及对比,深度学习的特点,Pytorch中的基本配置、数据读入、模型构建、模型初始化、损失函数、训练和评估、可视化和Pytorch优化器,最后结合FashionMNIST时装分类进行实战

2022-09-16 22:00:22 358

原创 PyTorch的安装及基本知识

PyTorch的介绍、安装、配合Anaconda、Jupyter使用,Tensor的相关操作、Autograd的原理和计算示例、GPU并行计算的相关操作和常见的并行方法

2022-09-13 15:21:14 631 2

原创 计算之魂 关于排序的讨论

选择排序、插入排序、堆排序、桶排序、快速排序的算法分析及思考,删除算法勿庸官的优化接着结合混合排序,讲解了Timsort(python、java、android内置)和内省排序(stl库)最后分析了排序算法时间复杂度的上界,完成了计算之魂的1.4思考题...

2022-08-21 16:04:58 360

原创 计算之魂 寻找最好的算法

计算之魂,以总和最大区间问题为例,讲解时间复杂度的分析,尽可能找出最优的算法

2022-08-20 21:28:37 272

原创 计算之魂算法复杂度的相关概念

算法的规范化和量化度量、大数和数量级的概念

2022-08-19 17:16:32 158

原创 动手学数据分析 数据建模和模型评估

在对数据进行处理和初步的可视化分析之后,我们就可以使用数据来获取想要的信息。而对数据的分析第一步就是建模,建模完成之后还需要评估我们的模型是否可靠。这里使用的建模库是sklearn,其中包含机器学习的很多算法,对应的模型算法选择路径可以参考下图:首先需要将数据集划分为训练集和测试集,这里使用的是sklearn.model_selection.train_test_split方法,可以通过jupyter的查看方法的文档。这里需要注意在切割数据集默认是使用随机选取,需要根据实际情况进行判定。在sklearn中,

2022-06-24 00:10:21 539

原创 动手学数据分析 数据可视化

通常数据可视化,可以帮助我们寻找一些异常值(过大或过小的值)、进行数据转换(数据标准化)、判断可使用的模型等。这里主要介绍matplotlib和seaborn导入:import matplotlib.pyplot as plt在jupyter notebook中使用需要使用%matplotlib inline,在IPython中使用%matplotlibmatplotlib的图像都是基于Figure对象,但是我们的图像是基于subplot进行绘制的,使用fig.add_subplot对象返回的是AxesSu

2022-06-21 01:11:11 59

原创 动手学数据分析 数据重构

主要是针对数据进行重构和分析,其中包括数据的合并、连接、数据分组和聚合运算对应方法:concat、join、append、merge、groupby、sum、max、mean等

2022-06-19 01:41:14 255

原创 动手学数据分析 数据清洗及特征处理

通过使用pandas对数据进行数据清洗,其中包括数据的缺失值处理(NA)和重复值处理;接着使用pandas对数据进行特征处理,主要使用离散化/文本变量转换/字符串操作的相关方法

2022-06-17 00:23:19 82

原创 李宏毅机器学习 卷积神经网络

卷积神经网络介绍卷积神经网络一般用来针对影像进行处理。为什么需要卷积神经网络(Convolutional Neural Networks, CNN)呢,因为对于任意一个模型,如果使用全连接前馈网络,也就是使用深度神经网络DNN,那么我们会需要大量的参数。而使用CNN,可以简化neural network的架构,把某些weight用不上的,一开始就过滤掉。整体来讲,就是利用power-knowledge把原来fully connect layer中一些参数拿掉就成了CNN。small region

2022-05-29 00:10:58 604

原创 李宏毅机器学习 神经网络设计的技巧

神经网络设计的技巧局部极小值与鞍点介绍1.local minimalocal minima没有办法可以解决2.saddle pointcritical point:gradient为0的点鞍点saddle point:gradient为0的点,但不是local minima的地方L(θ)L(\theta)L(θ)在θ=θ′\theta = \theta'θ=θ′附近的函数值可以表示如下(泰勒展开),其中的ggg为梯度(一次微分),H(Hessian矩阵)是二次微分:L(θ)≈L(θ′)+(

2022-05-26 00:04:18 104

原创 李宏毅机器学习 深度学习介绍

深度学习深度学习的发展趋势回顾一下deep learning的历史:1958: Perceptron (linear model)1969: Perceptron has limitation1980s: Multi-layer perceptronDo not have significant difference from DNN today1986: BackpropagationUsually more than 3 hidden layers is not helpful

2022-05-22 23:36:59 113

原创 李宏毅机器学习 误差和梯度下降

误差和梯度下降误差一次模型的方差就比较小的,也就是是比较集中,离散程度较小。而5次模型的方差就比较大,同理散布比较广,离散程度较大。所以用比较简单的模型,方差是比较小的(就像射击的时候每次的时候,每次射击的设置都集中在一个比较小的区域内)。如果用了复杂的模型,方差就很大,散布比较开。这也是因为简单的模型受到不同训练集的影响是比较小的。这里没办法知道真正的 \hat{f}f^​,所以假设图中的那条黑色曲线为真正的 \hat{f}f^​结果可视化,一次平均的 \bar{f}​没有5

2022-05-20 22:21:24 105

原创 李宏毅机器学习 回归Regression

回归(Regression)回归的应用:股市预测:Stock Market Forecast,输入前面的股市行情,输出明天的结果自动驾驶:Self-driving car,输入一些场景,输出方向盘角度推荐系统:Recommendation,使用者A购买商品B的可能性预测宝可梦的攻击值:Estimating the Combat Power(CP) of a pokemon after evolution,输入宝可梦的所有属性(进化前的CP值、物种Bulbasaur、血量HP、重量Weight、高

2022-05-18 21:49:40 168

原创 机器学习西瓜书&南瓜书 支持向量机

机器学习西瓜书&南瓜书 支持向量机1. 间隔与支持向量给定训练样本集D=(x1,y1),(x2,y2),...,(xm,ym),yi∈−1,+1D={(\boldsymbol{x}_1, y_1), (\boldsymbol{x}_2, y_2), ..., (\boldsymbol{x}_m, y_m)}, y_i \in {-1, +1}D=(x1​,y1​),(x2​,y2​),...,(xm​,ym​),yi​∈−1,+1,分类学习最基本的想法就是基于训练集D在样本空间中找到一个划分超平

2022-03-31 22:53:00 1320

原创 机器学习西瓜书&南瓜书 神经网络

机器学习西瓜书&南瓜书 神经网络1. 神经元模型神经网络:由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实事件物体所做出的交互反应。神经网络最基本的成分是神经元neuron模型,即定义中的“简单单元”,接下来以M-P神经元模型为例讲解:神经元接收来自n个其他神经元传递的输入信号,这些输入信号通过带权重的连接(connection)进行传递,神经元接收到的总输入值将与神经元的阈值进行比较,然后通过“激活函数”(activation function,也称响应

2022-03-27 22:41:39 1115

原创 机器学习西瓜书&南瓜书 决策树

机器学习西瓜书&南瓜书 决策树1. 基本流程决策树是一类常见的机器学习方法。以二分类为例,希望从给定训练集学得一个模型用以对新示例进行分类。决策树在决策过程中提出的每个判定问题都是对某个属性的“测试”,每个测试的结果或是导出最终结论,或是导出进一步的判定问题,其考虑范围是在上次决策结果的限定范围之内。决策树学习的目的是为了产生一颗泛化能力强,即处理未见示例能力强的决策树,及基本流程遵循简单且直观的“分而治之”策略,如下图:在决策树基本算法中,有三种情况会导致递归返回:当前结点包含的样本

2022-03-24 23:43:17 889

原创 机器学习西瓜书&南瓜书 线性模型

机器学习西瓜书&南瓜书 线性模型1. 基本形式给定由d个属性描述的示例x=(x1;x2;...xd)x=(x_1;x_2;...x_d)x=(x1​;x2​;...xd​),其中xix_ixi​是x在第i个属性上的取值,线性模型(linear model)试图学得一个通过属性的线性组合来进行预测的函数,即:f(x)=ω1x1+ω2x2+...+ωdxd+bf(x) = \omega_1x_1 + \omega_2x_2 + ... + \omega_dx_d + bf(x)=ω1​x1​+

2022-03-21 23:17:49 1326

原创 机器学习西瓜书&南瓜书 绪论&模型评估与选择

机器学习西瓜书&南瓜书 绪论&模型评估与选择绪论基本概念计算机科学是研究关于“算法”的学问,机器学习是研究关于“学习算法”的学问,在计算机上从数据中产生“模型”的算法。数据集:对应数据的集合。示例(instance):数据集中的每条记录都成为实例或样本(sample),如果把示例中的每个属性都是单独的左边,可以把一个示例称为一个特征向量(feature vector)属性(attribute):事件或对象在某方便的表现或性质,也称特征(feature)属性值(attribute

2022-03-15 22:16:12 1196

原创 Leetcode刷题12-哈希表

哈希表基础知识1.简介哈希表:也叫散列表。是根据关键字和值(Key-Value)直接进行访问的数据结构。也就是说,它通过关键字key和一个映射函数Hash(key)计算出对应的值value,然后把键值对映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做哈希函数(散列函数),用于存放记录的数组叫做哈希表(散列表)。哈希表的关键思想是使用哈希函数,将键key和值value映射到对应表的某个区块中。可以将算法思想分为两个部分:向哈希表中插入一个关键字:哈希函数决定该关键字的对应值应该存放

2022-03-08 21:29:48 156

原创 Leetcode刷题11-分治

分治基础知识分治也是一种编程思想,而不是具体的算法,因此这里介绍一些使用了分治思想的算法。归并排序题目解析将有序数组转换为二叉搜索树1.题目描述题目链接2.解析思路及代码分治的思想:将数组分为两部分,中间节点是根节点,根节点的左子树和右子树继续使用函数递归构建。 public TreeNode sortedArrayToBST(int[] nums) { return helper(nums, 0, nums.length - 1); } p

2022-03-06 21:39:49 7406

原创 Leetcode刷题10-动态规划

动态规划基础知识动态规划是一种思想,因此这里主要讲解动态规划相关的习题及应用。区间调度问题1.无权区间调度问题对于该问题,{b, e, h}是最大互相兼容的任务集合,这里需要使用贪心算法。贪心算法:总是做出当前最优的选择,并不总能得到最优解,但是它是最简单最容易实现的算法。无权区间调度问题贪心算法:先将任务以某种顺序排序,再按顺序挑选互相兼容的任务。对于该问题,需要按照结束时间排序,时间复杂度是O(nlogn)2.带权区间调度问题动态规划四步骤:确定状态:先按任务结束时间排序,定

2022-03-05 22:24:21 790

原创 Leetcode刷题09-排序

冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序、计数排序、希尔排序、桶排序、基数排序基本思想和原理、代码实现、相关习题

2022-03-03 17:17:17 8864

原创 Leetcode刷题08-搜索

搜索基础知识1.简介#mermaid-svg-JkIDWhg4euSXqe8b {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-JkIDWhg4euSXqe8b .error-icon{fill:#552222;}#mermaid-svg-JkIDWhg4euSXqe8b .error-text{fill:#552222;stroke:#552222;}#mermai

2022-02-28 18:19:08 173

原创 Leetcode刷题07-双指针

双指针基础知识1.介绍双指针是一种思想或一种技巧,并不是特别具体的算法。具体就是用两个变量动态存储两个结点,方便我们进行一些操作。通常用在线性的数据结构中。特别是链表类的题目,经常需要用到两个或多个指针配合来记忆链表上的节点,完成某些操作。2.分类常见的双指针方式:同速指针:链表上两个指针,一个先出发,另一个后出发并以相同的速度跟随。求链表的逆:通过临时指针让双指针同步前行求链表倒数第k个元素:先让第一个指针前进k步,然后两个指针同样的速度前进,第一个指针走到尽头,则后面的指针为倒数

2022-02-26 20:35:46 429

原创 Leetcode刷题06-位运算

位运算的概念、性质、应用以及位运算的相关习题按位与、按位非、按位取反、异或、异或的性质

2022-02-25 18:08:10 8132

原创 Leetcode刷题05-树

树的定义、DFS、BFS、递归、栈、相关习题及python、java实现

2022-02-23 19:49:19 248

原创 Leetcode刷题04-字符串

字符串基础知识、模式匹配、KMP、暴力算法、字符串习题、递归

2022-02-21 18:59:57 1778

原创 Leetcode刷题03-栈

栈的基本知识,栈的手工实现、栈的基本应用、栈相关习题

2022-02-18 17:18:20 247

原创 Leetcode刷题02-链表操作

链表的相关操作,包括链表定义、带头结点和不带头结点的单链表、单链表创建、单链表删除元素、插入元素以及习题

2022-02-16 20:03:53 136

原创 Leetcode刷题01-数组

Leetcode阿里云天池刷题第一天,含数组操作、双指针,最优算法使用Java和python实现

2022-02-15 21:53:13 227

算符优先文法处理判断算术表达式的正确性

算符优先文法处理判断算术表达式源代码、说明文档、输入输出详细说明及截图

2021-06-13

编译原理词法分析源代码及详细说明文档

包括源代码、输入文件和输入输出源代码分析

2021-06-13

第七届蓝桥杯大赛个人赛省赛(软件类)真题.zip

本资源如题,是第七届蓝桥杯大赛的真题,一共包括C语言组A、B、C组,Java语言A、B组,对大家了解和参加算法竞赛很有帮助,蓝桥杯的含金量也挺高的

2020-05-23

Windows相关项目以及WindowsAPI

本资源包括一些常用的一共30个windows相关项目,可用来做Windows课程设计的参考资料,同时包括了WindowsAPI参考大全,是CHM格式,查看方便

2020-05-23

模拟DOS环境的Dir命令

本Java源代码是关于模拟DOS环境下的Dir命令,具有和dir命令相关的功能,同时代码简单明了,可以根据实际情况进行扩充源代码,目前包含以下功能:切换目录、显示目录情况、删除和改名等

2020-05-23

Java记事本程序源代码

Java记事本源代码,详细,功能完整,包括文件、编辑、帮助等功能,还有工具栏,详细功能与windows记事本类似,代码注释详细,简单明了

2020-05-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除