深入浅出 算法 森林
小波去噪算法的简易实现及其扩展(小波锐化、高斯拉普拉斯金字塔去噪及锐化)之一。
早年就接触过小波的概念,那个时候看什么小波十讲这类的,看的可真谓云里雾里,一大堆数学公式,头大的要死。做去噪的时候也看很多人说小波去噪算法效果不错,最近定心的去研究了下GIMP里的小波分解插件,有一些心得,一起分享给大家。 ......
小波去噪算法的简易实现及其扩展(小波锐化、高斯拉普拉斯金字塔去噪及锐化)之二。
GIMP的小波分解只是偏重于实现,但是其效率还是很慢,本文简单的提出了其加速算法。同时对于如何使用小波分解后的数据,通过小波去噪和小波锐化两个过程予以了说明,另外,基于小波去噪的这些过程也可以使用拉普拉斯金字塔来实现。 ......
【深入职场两茫茫,不思量自迷茫】技术流浪,职场漂泊
最近《流浪地球》火了,剧情或多或少大家都知道,其实我们每个人的也都是有类似的经历:为了生存,发展,或者梦想(现在谈梦想似乎是一个奢侈且遥远的事情),不断的辗转,当自己心中的太阳还没有找到的时候,就难以找到照亮自己的道路 ......
特定领域知识图谱融合方案:文本匹配算法(Simnet、Simcse、Diffcse)
本项目主要围绕着特定领域知识图谱(Domain-specific KnowledgeGraph:DKG)融合方案:文本匹配算法、知识融合学术界方案、知识融合业界落地方案、算法测评KG生产质量保障讲解了文本匹配算法的综述,从经典的传统模型到孪生神经网络“双塔模型”再到预训练模型以及有监督无监督联合模型... ......
遗传算法求TSP问题
一、实验内容及目的 本实验以遗传算法为研究对象,分析了遗传算法的选择、交叉、变异过程,采用遗传算法设计并实现了商旅问题求解,解决了商旅问题求解最合适的路径,达到用遗传算法迭代求解的目的。选择、交叉、变异各实现了两种,如交叉有顺序交叉和部分交叉。 二、实验环境 Windows10 开发环境Python ......
深入解读.NET MAUI音乐播放器项目(一):概述与架构
为什么想起来这个项目了呢?这是一个Windows Phone 8的老项目,2014年用作为兴趣写了个叫“番茄播放器”的App,顺便提高编程技能。这个项目的架构历经多次迁移,从WP8到UWP再到Xamarin.Forms。去年底随着MAUI的正式发布,又尝试把它迁移到MAUI上来。 ......
算法学习笔记(16): 组合数学基础
组合数学基础 本文部分运用到了生成函数的知识 如果直接食用本文结论,请忽略下列链接。 生成函数参考博客:普通型生成函数 - Ricky2007 - 博客园 我认为讲的不错 组合数学非常有用!我们先从一点点简单的性质开始 简单原理 加法原理 这非常简单,我们举一个例子即可:考虑我有 $5$ 个红苹果和 ......
MATLAB实现随机森林(RF)回归与自变量影响程度分析
本文介绍基于MATLAB,利用随机森林(RF)算法实现回归预测,以及自变量重要性排序的操作。 本文分为两部分,首先是对代码进行分段、详细讲解,方便大家理解;随后是完整代码,方便大家自行尝试。另外,关于基于MATLAB的神经网络(ANN)代码与详细解释,我们将在后期博客中介绍。 1 分解代码 1.1 ......
基于遗传算法的地图四色原理绘图上色的Python代码
本文介绍利用Python语言,实现基于遗传算法(GA)的地图四色原理着色操作。 1 任务需求 首先,我们来明确一下本文所需实现的需求。 现有一个由多个小图斑组成的矢量图层,如下图所示。 我们需要找到一种由4种颜色组成的配色方案,对该矢量图层各图斑进行着色,使得各相邻小图斑间的颜色不一致,如下图所示。 ......
《深入理解Java虚拟机》第三章读书笔记(一)——垃圾回收算法
参考书籍《深入理解java虚拟机》周志明著 系列文章目录和关于我 本文主要介绍垃圾回收理论知识 1.jvm哪些区域需要进行垃圾回收 虚拟机栈,本地方法栈,程序计数器都是线程私有的,随线程而生,随线程而灭。其中栈中的栈帧随着方法的进入和退出而有条不紊的执行出栈和入栈操作,每一个栈帧需要分配内存基本上在 ......
《深入理解Java虚拟机》第三章读书笔记(二)——HotSpot垃圾回收算法实现(OopMap,安全点安全区域,卡表,写屏障,三色标记算法)
系列文章目录和关于我 前面《深入理解Java虚拟机》第三章读书笔记(一)——垃圾回收算法我们学习了垃圾回收算法理论知识,下面我们关注下HotSpot垃圾回收算法的实现,分为以下几部分 对象是垃圾的判断依据 GC Roots 是如何高效扫描的 如何解决跨代引用对象的垃圾回收问题 如何降低垃圾回收STW ......
《深入理解Java虚拟机》第三章读书笔记(三)——经典垃圾回收器
系列文章目录和关于我 一丶概述 上图展示了 经典的垃圾回收器,其中Serial,ParNew,Parallel Scavenge(图中的Parallel) 作用在新生代Serial Old CMS,Parallel Old作用在老年代,这些垃圾回收器颜色相同表示通常搭配使用。G1,ZGC,Shena ......
前端算法之二分查找
在数组中查找指定元素,如果存在就返回它的位置,如果不存在,就返回-1。 这是一道非常经典的算法题,考的就是二分查找算法,首先分析二分查找的思路: 假设一个数组为 [3,5,19,22,25,33,45,47,57,66,71,78](已经从小到大排好序),要求找出数值80的位置,如图: ps: g ......
Git入门图文教程(1.5W字40图)🔥🔥--深入浅出、图文并茂
Git是当前最先进、最主流的分布式版本控制系统,免费、开源!核心能力就是版本控制。本文深入浅出、图文并茂的展示了Git的入门系列教程。 ......
Dijkstra算法详解(朴素算法+堆优化)
定义 Dijkstra(读音:/'daɪkstrə/)算法,是用来求解一个边带权图中从某个顶点出发到达其余各个顶点的最短距离的算法。(为表达简便,下文中“起点(源点)到某个顶点的距离”简称为“某个顶点的距离”) 限制条件:各个边的权不能为负。 原理 假设s,v1,v2,...,vn(以下简称P1)为 ......
分布式协议与算法-Raft算法
本文总结自:极客时间韩健老师的分布式协议与算法实战课程。 大家都知道,Raft算法属于Multi-Paxos算法,它是在Multi-Paxos思想的基础上,做了一些简化和限制。关于Paxos算法,博主在之前的文章有过总结,大家可以从这里跳转:分布式协议与算法-Paxos算法 关于Raft算法相关的开 ......
初探富文本之CRDT协同算法
初探富文本之CRDT协同算法 CRDT的英文全称是Conflict-free Replicated Data Type,最初是由协同文本编辑和移动计算而发展的,现在还被用作在线聊天系统、音频分发平台等等。当前CRDT算法在富文本编辑器领域的协同依旧是典型的场景,常用于作为实现文档协同的底层算法,支持 ......
SOFAJRaft源码阅读(肆)-Netty时间轮算法的实践
SOFAJRaft的定时任务调度器是基于Netty来实现的,所以本文将会基于Netty时间轮算法,然后再结合SOFAJRaft源码进行分析。 @Author:Akai-yuan @更新时间:2023/1/29 1.HashedWheelTimer概览 一个时间轮算法的组成成分图: 一个基于Netty ......
C#开发PACS医学影像三维重建(十四):基于能量模型算法将曲面牙床展开至二维平面
在医学影像领域中,将三维重建中的人体组织展开平铺至二维,用来研判病灶和制定治疗方案的重要手段之一, 它能够将立体曲面所包含的信息更为直观的展示到二维平面上,常用的情景包括: 牙床全景图、平铺血管、骨骼二维化展开(肋骨平铺)。 众所周知,人体牙床正常情况下是有弧度的,无论是从俯视位还是冠状位观察都是不 ......
[数据结构] 树、二叉树、森林的转换
#树 ##树的表示方法 ###双亲表示法 用一组地址连续的存储单元来存放树中的各个节点,每一个节点中有一个数据域和一个指针域,数据域用来存储树中该节点本身的值;另一个指针域用来存储该节点的双亲节点在存储结构中的位置信息。 采用双亲链表存储方式实现查找一个指定节点的双亲节点比较方便,但难以实现查找一个 ......
从历代GC算法角度刨析ZGC
作者:京东科技 文涛 前言 本文所有介绍仅限于HotSpot虚拟机, 本文先介绍了垃圾回收的必要手段,基于这些手段讲解了历代垃圾回收算法是如何工作的, 每一种算法不会讲的特别详细,只为读者从算法角度理解工作原理,从而引出ZGC,方便读者循序渐进地了解。 GC 是 Garbage Collection ......
【数据结构和算法】Trie树简介及应用详解
Trie树,即字典树,又称单词查找树或键树,是一种树形结构,典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。 ......
Fabric2.x中Raft共识算法核心数据结构
一、共识算法可插拔的代码体现Chain接口 Hyperledger Fabric的共识算法是可插拔的,在代码上体现为Chain接口,所有不同的共识算法均可根据Chain接口进行具体实现,目前fabric支持solo、kafka、raft、sbft等共识算法。Chain接口的代码在fabric/ord ......
图解 Andrew 算法求凸包
前言 Andrew 算法可以在 $O(n\log n)$ 的时间复杂度通过单调栈分别求出散点的上凸壳和下凸壳,来求出平面上一些点的凸包。 看懂这篇博客,大家需要掌握: 基础计算几何知识 单调栈 本文中的向量恕不加 $\overrightarrow{}$ 符号。 凸多边形是指所有内角大小都在 $[0, ......
RSA非对称加密算法浅析
说起加密算法,大的分类上,常规区分通常会区分为对称加密与非对称加密两种,两种算法都各有优缺点。然而互联网发展到今天,应用更广的还是非对称加密的方式,而非对称加密中,RSA又首当其中,被广泛运用到各类应用中。本人作为一个标准的Javer,一直对RSA细节没有深入探究,本文算是对该算法的一个浅析,其中涉 ......
用Java写一个分布式缓存——缓存淘汰算法
前言 之前也用过一些缓存中间件,框架,也想着自己是不是也能用Java写一个出来,于是就有了这个想法,打算在写的过程中同步进行总结。 源码:weloe/Java-Distributed-Cache (github.com) 本篇代码: Java-Distributed-Cache/src/main/j ......
梯度下降算法 Gradient Descent
梯度下降算法 Gradient Descent 梯度下降算法是一种被广泛使用的优化算法。在读论文的时候碰到了一种参数优化问题: 在函数$F$中有若干参数是不确定的,已知$n$组训练数据,期望找到一组参数使得残差平方和最小。通俗一点地讲就是,选择最合适的参数,使得函数的预测值与真实值最相符。 $${ ......
特定领域知识图谱(Domain-specific KnowledgeGraph:DKG)融合方案:技术知识前置【一】-文本匹配算法、知识融合学术界方案、知识融合业界落地方案、算法测评KG生产质量保障
特定领域知识图谱(Domain-specific KnowledgeGraph:DKG)融合方案:技术知识前置【一】-文本匹配算法、知识融合学术界方案、知识融合业界落地方案、算法测评KG生产质量保障 0.前言 本项目主要围绕着特定领域知识图谱(Domain-specific KnowledgeGra ......
【深入浅出 Yarn 架构与实现】4-4 RM 管理 Application
在 YARN 中,Application 是指应用程序,它可能启动多个运行实例,每个运行实例由 —个 ApplicationMaster 与一组该 ApplicationMaster 启动的任务组成,它拥有名称、队列、优先级等属性,是一个比较宽泛的概念,可以是一个 MepReduce 作业、一个 D... ......
算法竞赛向 C++ Standard Library 使用速查
本文旨在对算法竞赛所需 C++ Standard Library 做一个全面而相对严谨的总结。 全文主要参考以下文档: Containers library - cppreference.com C++ 标准库简介 - OI Wiki 如有能力,阅读原文可获得更深入的了解。 1 STL 算法 均在 ......