机器学习:DBSCAN算法(效果比K-means好)

基本概念

核心对象:以点为圆心半径为r的圆,如果圈里面的样本点大于给定的阈值(minPts),那么这个点就叫做核心点

直接密度可达:点p在q为圆心的圆内

密度可达:

p1与p2直接密度可达,p2与p3直接密度可达,所以p1与p3被称为密度可达

边界点:

以p1为核心点的圈含p2,p2自己为核心点也有对应圈,并且圈内有点p3,同样p3也有以p3为核心点的圈,并且有点p4,这说明点p1,p2,p3是可以发展下去的点(我认为可以理解成以之前圈住点为圆心画圈不断圈住新的点)

但是p4就不行了,因为以p4为核心点的圈内没有其他样本点或者说样本点的个数少于规定的阈值MinPts,没有继续“发展”下去

工作流程

算法

需要输入的数据

参数D:输入数据集

参数:指定半径

MinPts:密度阈值

如何选择参数,基本上都是不断尝试

优势和劣势

可视化展示

Visualizing DBSCAN Clustering

Gaussian Mixture

如下图所示,调大半径epsilon之后,离群点就变小了

如果想用DESCAN算法找离群点,可以考虑将半径调小

Smiley Face

Packed Circles

但对于这种密集区域此时,DBSCAN分类就不如K-means

半径小了,就出现分类很多的情况;半径大了,就出现分类只有一两个的情况,还不如直接K-means直接给定分类的类别

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/183089.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[node]Node.js多线程

[node]Node.js多线程 Node.js 多进程exec()使用语法示例 spawn()使用语法示例 fork()使用语法示例 Node.js 多进程 Node.js 是以单线程的模式运行的,但它使用的是事件驱动来处理并发,这样有助于我们在多核 cpu 的系统上创建多个子进程,从而提…

记录创建粒子的轻量级JavaScript库——particles.js(可用于登录等背景显示)

文章目录 前言一、下载particles.js二、引入particles.js并使用三、配置数据说明如有启发,可点赞收藏哟~ 前言 本文记录使用创建粒子的轻量级JavaScript库 particles.js 可用于登录等背景显示 一、下载particles.js 先下载particles.js库,放在项目libs…

msyql迁移到mongodb

关系型数据库迁移到mongodb的理由 高并发需求,关系型数据库不容易扩展 快速迭代 灵活的json模式 大数据量需求 应用迁移难度: 关系型到关系 oracle-》mysql oracle -》 postgresql 关系到文档- oracle -》 mongodb 需要考虑: 总体架构&#…

vue3实现元素拖拽移动功能

效果图 实现拖拽移动 首先我们给需要实现功能的元素加一个draggable"true"让元素能够被拖拽 先来认识两个搭配draggable属性一起使用的事件——ondragstart和ondragend,它们的定义分别为: ①. ondragstart 事件在用户开始拖动元素或选择的文…

如何使用录屏软件在电脑录制PDF文件

我有一个PDF文件,想用录屏软件将它录制下来并添加上详细的注释,然后发给客户看,请问应该如何录制呢?有没有推荐的录屏软件呢? 不用担心,本文将会详细的为您讲解如何使用录屏软件在电脑端录制PDF文件&#…

PTA 哈利波特的考试

哈利波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是haha,将老鼠变成鱼的魔咒是hehe等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如ahah可以将老鼠变成猫。另外&…

从0到1搭建kafka集群

准备服务器 3台服务器对应3个node,分别如下: node1:192.168.1.101 node2:192.168.1.102 node3:192.168.1.103 下载安装包 下载zookeeper https://dlcdn.apache.org/zookeeper/ 下载kafka https://kafka.apache.org/downloads 安装步骤 zookeeper…

使用MechanicalSoup库的爬虫程序

1. 首先,我们需要导入MechanicalSoup库和requests库,这两个库都是Python中爬虫常用的库。 2. 接着,我们要设置一个代理服务器,使用proxy_host和proxy_port参数来指定。 3. 使用requests.get方法来获取网页的HTML代码。 4. 使用Bea…

内存函数​(memcpy、memmove、memset、memcmp)

目录 一、memcpy的使用和实现 使用: 模拟实现: 二、memmove 使用和模拟实现 模拟实现: 2.1难点: 覆盖拷贝所在的问题 memset的使用 memcmp的函数的使用​ 一、memcpy的使用和实现 memcpy 拷贝的就是不重叠的内存。 参数…

网站被攻击了该怎么办?如何恢复网站,如何避免网站被攻击?

小德今天先带大家了解一下网站攻击的类型有哪些,以下简单跟各位分析一下: 网站攻击一般分为3类,分别为ARP欺骗攻击、CC攻击、DDOS流量攻击。 一、先说ARP欺骗攻击 如果要发起ARP欺骗攻击,首先要与网站为同一个机房、同一个IP段、同一个VLAN的服务器的…

Linux(fork+exec创建进程)

1.进程创建 内核设计与实现43页; 执行了3次ps -f ,ps -f的父进程的ID(PPID)都是一样的,即bash. 实际上Linux上这个bash就是不断的复制自身,然后把复制出来的用exec替换成想要执行的程序(比如ps); 运行ps,发现ps是bash的一个子进程;原因就是bash把自己复制一份,然后替换成ps;…

linux logrotate日志轮询设置案例二

1.编辑/etc/logrotate.conf文件,添加如下配置,并保存 /var/log/ztj.log {missingokdaily create 644 root root sharedscriptspostrotateif [ -f /var/run/syslogd.pid ];then/bin/kill -HUP $(/bin/cat /var/run/syslogd.pid) >/dev/null 2>…

Python----高阶函数

高阶函数:把函数作为参数传入,这样的函数称为高阶函数,高阶函数是函数式编程的体现。函数式编程就是指这种高度抽象的编程范式。 高阶函数的由来 在Python中,abs()函数可以完成对数字求绝对值计算。 ① 正数的绝对值是它本身 ②…

竞赛选题 题目:基于深度学习的中文对话问答机器人

文章目录 0 简介1 项目架构2 项目的主要过程2.1 数据清洗、预处理2.2 分桶2.3 训练 3 项目的整体结构4 重要的API4.1 LSTM cells部分:4.2 损失函数:4.3 搭建seq2seq框架:4.4 测试部分:4.5 评价NLP测试效果:4.6 梯度截断…

dbeaver连接amabri-hbase

目录 尝试过程 解决之道 总结 尝试过程 注意此章节为记录试错过程,无需跟随操作,仅作试错记录。真正操作方法请看“解决之道”章节 环境ambari安装的hbase2.1.6 使用apche phoenix默认驱动配置 备注:Apache Phoenix 是一个开源的、基于…

RocketMq批量拉取消息失败处理

Consumer的MessageListenerConcurrently监听接口的consumeMessage()方法的第一个参数为消息列 表,但默认情况下每次只能消费一条消息。若要使其一次可以消费多条消息,则可以通过修改 Consumer的consumeMessageBatchMaxSize属性来指定。不过,该…

pytorch 多卡并行训练

目录 设置参数: 训练时参数: 调用命令: 设置参数: import argparseparser argparse.ArgumentParser()parser.add_argument(--batch_size, typeint, default64, helpBatch size for training)parser.add_argument(--local_rank…

MySQL多表查询:原理、技巧与实践

一、简介 在MySQL数据库中,多表查询是一种非常实用的技术,它允许用户在一个查询中跨多个表检索数据。通过将来自不同表的数据组合起来,我们可以得到更全面、更准确的结果。多表查询在处理复杂业务逻辑或数据关联紧密的系统中具有重要意义。本…

Python edge-tts库全部声音模型一览表

下面是edge-tts的声音模型,zh-CN为中文语音模型 Name: af-ZA-AdriNeural Gender: Female Name: af-ZA-WillemNeural Gender: Male Name: am-ET-AmehaNeural Gender: Male Name: am-ET-MekdesNeural Gender: Female Name: ar-AE-FatimaNeural Gender: Female N…

fastadmin 如何引入自己的js

在需要的界面中&#xff1a;如何实例说明&#xff1a; 中<script> function zhuruJs(url) { let temp document.createElement( script ); temp.setAttribute( type, text/javascript" );temp.src urL; document.head . appendChild(temp); zhuruJs(location…