算法人生(16):从“K均值 C均值”看“为人处事之道”

现代生活中,经常会听到一个词“双标”,通常用来描述某人对人对己采用了不同的标准,当然生活中会出现这样的情况,个人处于“利己”的思维来“双标”, 但“双标”可能还有另外一个原因,就是这个人是懂得“变通”的人。我们从K均值 & C均值两种聚类算法中可窥见一些思路。

K均值(K-means)和C均值(C-means,也称为模糊C均值,Fuzzy C-Means, FCM)是两种常见的聚类算法,以下简单介绍下这两种方法,已经熟知的小伙伴可略过。

K-means算法是一种无监督学习方法,它的目标是将数据集划分为K个不重叠的子集(簇),使得每个数据点到其所属簇中心(质心)的平方距离之和最小。这个算法假设簇是凸的,并且每个数据点只属于一个簇

大致步骤为:

  1. 初始化:随机选择K个数据点作为初始质心。

  2. 分配:将每个数据点分配给最近的质心所在的簇。

  3. 更新质心:重新计算每个簇的质心,通常为该簇内所有数据点的均值。

  4. 重复:重复步骤2和3直到质心不再发生显著变化或达到预定的迭代次数。

C-means 是K-means的一种扩展,它允许数据点以不同程度(隶属度)属于不同的簇。每个数据点对所有簇都有一个隶属度,介于0和1之间,表示它属于该簇的程度。

大致步骤为:

  1. 初始化:为每个簇随机选择一个中心,并为所有数据点赋予初始的隶属度向量,通常为均匀分布或随机初始化。

  2. 更新隶属度:根据当前质心,计算每个数据点到各个簇中心的距离,并据此更新每个数据点的隶属度,使类内误差平方和最小化,同时保证所有簇对每个点的隶属度之和为1。

  3. 更新质心:根据新的隶属度向量,重新计算每个簇的中心,作为所有数据点的加权平均,权重是数据点对该簇的隶属度。

  4. 重复:重复步骤2和3,直到质心的变化小于某个阈值或达到迭代上限。

总的来说,

  • K均值:是一种硬聚类方法,即每个数据点被划分到一个且仅一个聚类中。聚类的归属是明确无误的。适合于聚类边界明确、聚类间隔较大的数据集。这个算法较为简单直接,计算效率高,但对于复杂或模糊边界的数据集灵活性较低。

  • C均值:是一种软聚类方法,允许数据点以一定的隶属度或概率属于多个聚类。这意味着数据点可以同时属于多个聚类,且对每个聚类有一个隶属度分数。更适用于数据点可能属于多个类别、聚类边界模糊或重叠的情况。但它的计算复杂度高于K-means,因为需要迭代更新所有数据点的隶属度。而且,它的参数选择(如隶属度的隶属度因子m)对结果影响较大,且不易确定最佳值

那在“双标”的场景下,可能这个人是出于“对人对己两套标准”,也可能是他把这件事归属到了多个类别下(如A和B两个类别),某个场景可能A类别的隶属度高于B类别,而某个同类型的场景B类别又高于了A类别,也会给人一种双标的“错觉”。想知道“双标”的原因到底是属于哪一类,主要是看场景,这里就要考验每个人应对不同场景下的“应变力”了。这里分享个佛经中的小故事:

古代有个君王去找佛陀说,他的国家正在面临外来军队的威胁,但是他们国家的人都深受佛陀众弟子的教导,不愿sha生,自然就没有什么战斗力。但如果士兵们都这样,这个国家只能被侵略了,百姓会被欺负。这个国王很困惑,因为他也深受佛陀的教导,觉得很两难,不知道该如何抉择。佛陀的回答很快就让他解了困惑,回去安排士兵保护家园。佛陀回答的大意是,如果sha念是出于自己的私利自然不行,但是如果sha是万不得已,是为了保护他人那就不一样了,如果有能力保护,却没有保护,眼看着同胞被欺负那也是另外一种sha。于是佛陀下令他的僧侣不能再继续对这个国家的士兵讲法,从而保证士兵们面对敌人时的战斗力,避免他们用错了“执”,好心办了坏事。这里佛陀说的意思是就是要“变通”,如果不分场景,死守某个词,某段话,就会陷入“法执”,被文字束缚住了思维。人家常说,没有佛经,看不到佛法,但是还有后面一句,佛经里没有佛法。佛经是看到佛法的路,但佛法不在佛经里,看了佛经后还要靠“实践”才可能看到佛法。

那从以上“变通”这个角度看,生活中,你喜欢c均值的思维还是k均值的思维呢?笔者的想法还是看“场景”,在此举例一二,大家可各自发散!

K均值适合的场景

  • 决策明确性要求高的场合:在需要快速明确决策的商业或紧急情况下,K均值的思维方式可以迅速将问题和解决方案进行明确分类,加快决策过程,如危机管理、紧急响应等。

  • 法律或规则严格的场景:某些原则性的或没有容错的事情,只有0次或N次的,K均值的硬聚类思维有助于确保规则得到严格遵守,避免模糊地带的产生。

C均值适合的场景

  1. 多元文化环境:在多元文化的工作或生活环境中,人们来自不同的背景,拥有不同的价值观和行为习惯。C均值的思维方式可以帮助个体理解并接纳不同文化之间的交叉和重叠,促进更好的跨文化交流和合作。

  2. 多任务工作环境:在需要同时处理多个项目或任务的工作环境中,C均值思维方式帮助个体在各个项目间平衡精力和资源,优化总体工作效率。

以上只是抛砖引玉,总体来说,如果能保持对“原则”的深刻认知,同时又抱有“变通”的思维,就能在明白“知识层面”的道理后,根据场景变通去应用出来,才能更加拥有“应用层面”的智慧。用“手”指“月”,要人看的是“月”,不是指向“月”的“手”,文字或词汇是想让人明白某个道理,但如果执着于某段文字,不知道根据这个道理的意思,分场景来“变通”,就会失了焦点,过犹而不及了。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

DETR类型检测网络实验2---优化测试

补全reference_point Anchor-DETR提出用预定义的参考点生成query_pos; DBA-DETR提出预定义参考信息由(x,y)增至(x,y,w,h) 那么在3D检测任务中是否可以把预定义参考信息补全为(x,y,z,l,w,h,sint,cost),而query_pos都是使用xy两个维度(因为是bev网络). (这种方法在Sparse-DETR中…

CMakeLists.txt语法规则:部分常用命令说明一

一. 简介 前一篇文章简单介绍了CMakeLists.txt 简单的语法。文章如下: CMakeLists.txt 简单的语法介绍-CSDN博客 接下来对 CMakeLists.txt语法规则进行具体的学习。本文具体学习 CMakeLists.txt语法规则中常用的命令。 二. CMakeLists.txt语法规则:…

探索LLM在广告领域的应用——大语言模型的新商业模式和新个性化广告的潜力

概述 在网络搜索引擎的领域中,广告不仅仅是一个补充元素,而是构成了数字体验的核心部分。随着互联网经济的蓬勃发展,广告市场的规模已经达到了数万亿美元,并且还在持续扩张。广告的经济价值不断上升,它已经成为支撑大…

C++初阶之模板初阶

一、泛型编程 如何实现一个通用的交换函数呢? void Swap(int& left, int& right) {int temp left;left right;right temp; } void Swap(double& left, double& right) {double temp left;left right;right temp; } void Swap(char& left,…

spring boot3多模块项目工程搭建-上(团队开发模板)

⛰️个人主页: 蒾酒 🔥系列专栏:《spring boot实战》 目录 写在前面 多模块结构优缺点 模块介绍 Common 模块: API 模块: Web 模块: Service 模块: DAO 模块: 搭建步骤 1.创建 父…

JavaWeb_请求响应_简单参数实体参数

一、SpringBoot方式接收携带简单参数的请求 简单参数:参数名与形参变量名相同,定义形参即可接收参数。并且在接收过程中,会进行自动的类型转换。 启动应用程序后,在postman中进行测试: 请求成功,响应回了O…

Flask教程3:jinja2模板引擎

文章目录 模板的导入与使用 模板的导入与使用 Flask通过render_template来实现模板的渲染,要使用这个方法,我们需要导入from flask import rander_template,模板中注释需放在{# #}中 模板的第一个参数为指定的模板文件名称,如自定…

微信小程序生成二维码加密(CryptoJS4.0加密PHP8.0解密)AES方式加密

1、小程序创建 crypto-js.js和crypto.js两个文件(点击文件即可) 2、小程序js页面引入 var crypto require(../../utils/crypto.js);//注意路径是否正确3、使用 let data {id: that.data.id,name: dx}console.log(JSON.stringify(data))console.log(&…

【论文阅读】Learning Texture Transformer Network for Image Super-Resolution

Learning Texture Transformer Network for Image Super-Resolution 论文地址Abstract1. 简介2.相关工作2.1单图像超分辨率2.2 Reference-based Image Super-Resolution 3. 方法3.1. Texture TransformerLearnable Texture Extractor 可学习的纹理提取器。Relevance Embedding.…

【八股】AQS,ReentrantLock实现原理

AQS 概念 AQS 的全称是 AbstractQueuedSynchronized (抽象队列同步器),在java.util.concurrent.locks包下面。 AQS是一个抽象类,主要用来构建锁和同步器,比如ReentrantLock, Semaphore, CountDownLatch,里…

Leetcode—163. 缺失的区间【简单】Plus

2024每日刷题&#xff08;126&#xff09; Leetcode—163. 缺失的区间 实现代码 class Solution { public:vector<vector<int>> findMissingRanges(vector<int>& nums, int lower, int upper) {int n nums.size();vector<vector<int>> an…

基于遗传优化模糊控制器的水箱水位控制系统simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 模糊控制器原理 4.2 遗传算法原理 4.3 遗传优化模糊控制器的工作流程 5.完整工程文件 1.课题概述 基于遗传优化模糊控制器的水箱水位控制系统simulink建模与仿真。对比模糊控制器和基于遗传优化的…

Python基础详解一

一&#xff0c;print打印 print("hello word") print(hello word) 双引号和单引号都可以 二&#xff0c;数据类型 Python中常用的有6种值的类型 输出类型信息 print(type(11)) print(type("22")) print(type(22.2)) <class int> <class str&…

飞书API(7):MySQL 入库通用版本

一、引入 在上一篇介绍了如何使用 pandas 处理飞书接口返回的数据&#xff0c;并将处理好的数据入库。最终的代码拓展性太差&#xff0c;本篇来探讨下如何使得上一篇的最终代码拓展性更好&#xff01;为什么上一篇的代码拓展性太差呢&#xff1f;我总结了几点&#xff1a; 列…

深入理解 Java 并发:AbstractQueuedSynchronizer 源码分析

序言 在多线程编程中&#xff0c;同步机制是保障线程安全和协调线程之间操作顺序的重要手段。AQS 作为 Java 中同步机制的基础框架&#xff0c;为开发者提供了一个灵活且高效的同步工具。本文将通过对 AQS 源码的分析&#xff0c;解读 AQS 的核心实现原理&#xff0c;并深入探…

wireshark的安装使用及相关UDP、TCP、 ARP

初步了解&#xff1a; 进入wireshark后如图&#xff1a; 从图中可以看到很多网络连接在操作的时候我们需要监测哪些 我们可以直接在本地的运行框中输入ipconfig来查看 如图&#xff1a; 从以上图片中我们可以清楚地看到哪些网络连接已经连接的我们只需要按需监测他们即可 但…

【LinuxC语言】信号集与sigprocmask

文章目录 前言一、信号集1.1 操作信号集相关的函数1.2 信号屏蔽字1.3 sigprocmask1.4 示例代码 总结 前言 在Linux C编程中&#xff0c;信号是一种重要的进程间通信机制&#xff0c;用于通知进程发生了特定的事件。然而&#xff0c;程序在执行过程中可能会收到各种各样的信号&…

银河麒麟桌面版开机后网络无法自动链接 麒麟系统开机没有连接ens33

1.每次虚拟机开机启动麒麟操作系统&#xff0c;都要输入账号&#xff0c;密码。 进入点击这个ens33 内网才连接 2. 如何开机就脸上呢&#xff1f; 2.1. 进入 cd /etc/sysconfig/network-scripts 2.2 修改参数 onbootyes 改为yes 2.3 重启即可 a. 直接重启机器查看是否正常&…

软件工程习题答案2024最新版

习题一答案 一、选择题 软件的主要特性是(A B C)。 A) **无形 **B) 高成本 C) **包括程序和文档 ** D) 可独立构成计算机系统 软件工程三要素是(B)。 A) 技术、方法和工具 B) 方法、工具和过程 C) 方法、对象和类 D) 过程、模型、方法 包含风险分析的软件工程模型是(A)…

Reactor模型详解

目录 1.概述 2.Single Reactor 3.muduo库的Multiple Reactors模型如下 1.概述 维基百科对Reactor模型的解释 The reactor design pattern is an event handling pattern for handling service requests delivered concurrently to a service handler by one or more inputs.…