社交网络分析3:社交网络隐私攻击、保护的基本概念和方法 + 去匿名化技术 + 推理攻击技术 + k-匿名 + 基于聚类的隐私保护算法

社交网络分析3:社交网络隐私攻击、保护的基本概念和方法 + 去匿名化技术 + 推理攻击技术 + k-匿名 + 基于聚类的隐私保护算法

  • 写在最前面
  • 社交网络隐私泄露
    • 用户数据暴露的途径
    • 复杂行为的隐私风险
    • 技术发展带来的隐私挑战
    • 经济利益与数据售卖
    • 防范措施
  • 社交网络 用户数据隐私
  • 社交网络隐私攻击
    • 基于背景知识的攻击
    • 节点及节点间关系识别攻击
    • 隶属关系攻击
    • 概率攻击
  • 隐私保护研究现状
    • 社交网络用户隐私攻击研究现状
    • 社交网络去匿名化技术
      • 基于种子的去匿名化
      • 基于非种子的去匿名化
      • 社交网络去匿名化技术的发展
    • 社交网络推理攻击技术
      • 推理攻击案例
      • 推理攻击技术的发展
  • 社交网络用户隐私保护研究现状
    • 社交网络匿名化技术
      • k度匿名化
      • k邻域匿名化
      • k同构匿名化
      • 时变图的k匿名化
      • 基于图嵌入的匿名化
    • 社交网络反推理攻击技术
      • 阻止推理攻击的策略
  • 常见的匿名化隐私保护模型
    • k-匿名
    • 改进的k-匿名模型
    • k-匿名模型的挑战
    • k-匿名:示例与攻击方法
      • k-匿名示例
      • k-匿名攻击方法
  • 基于聚类的隐私保护算法
    • 主要思想与工作流程
    • 问题描述
    • 问题建模
  • 基于聚类的社交网络隐私保护算法设计
    • 算法设计概述
    • 初始种子节点优化算法
    • 隐私保护力度自适应
  • 提纲问题
    • 1. 列举几条社交网络隐私泄露的几个案例。
    • 2. 不同的应用场景对隐私的定义不同,社交网络数据中,哪些属性可能称为网络中的隐私信息?
    • 3. 针对社交网络隐私攻击的方法有哪些?简要地进行说明。
    • 4. 什么是社交网络匿名化技术?简要地介绍一下 k-匿名以及针对这种方法的攻击方式。

写在最前面

《社交网络分析》课程由鲁宏伟老师授课,其教学方式不仅严谨负责,还充满幽默与个人见解。这个方向对我而言也尤其有吸引力,怀着极大的兴趣选修了这门课程。

三、社交网络隐私保护
主要结合PPT第三章:社交网络隐私保护
本章简要介绍社交网络隐私攻击和保护的基本概念和方法


请添加图片描述

欢迎阅读社交网络系列博客之《社交网络分析3(下)》。通过本篇博客,希望能提供一个较为全面的视角,以理解社交网络中的隐私保护问题、方法,以及这些领域的最新技术发展。

社交网络,作为现代互联网时代的一个重要组成部分,不仅为我们提供了互相交流和分享的平台,也成为了大数据和情感分析的宝贵资源。然而,随着社交网络的日益普及和数据量的爆炸式增长,用户隐私保护成为了一个不可忽视的问题。本篇博客将从多个角度剖析社交网络中的隐私泄露问题,探讨其背后的原因、可能的攻击方式以及对策。

  • 社交网络隐私泄露

在这个数字化时代,社交网络隐私泄露已经成为一个全球性问题。用户数据的暴露途径有多种,包括但不限于个人资料的直接泄露、复杂行为的隐私风险、技术发展带来的挑战,以及经济利益驱动下的数据售卖等。了解这些泄露途径,有助于我们更好地采取有效的防范措施。

  • 社交网络用户数据隐私

社交网络中的用户数据隐私问题涉及多个方面。我们将讨论社交网络隐私攻击的各种形式,如基于背景知识的攻击、节点及节点间关系识别攻击,以及隶属关系攻击和概率攻击等。此外,我们还将探讨目前的隐私保护研究现状,以及社交网络匿名化技术的应用和其面临的挑战。

社交网络隐私泄露

社交网络是现代生活的一个重要组成部分,但它们也可能成为个人隐私泄露的温床。本文探讨了社交网络中隐私泄露的主要方式及其潜在风险,并提出了相应的防范措施。

用户数据暴露的途径

  1. 个人资料页面:用户的性别、年龄、联系方式等基本信息可能被直接展示。
  2. 地理位置信息:用户通过打卡等行为可能无意中透露自己的实时位置。
  3. 社交圈分析:通过分析用户的好友连接,攻击者可以推测用户所在的社群,并进一步推理出敏感信息。

复杂行为的隐私风险

  • 跨平台行为关联:用户在不同平台的行为可能被关联分析,例如,将某用户在微博上的个人资料与其在知乎上的发言关联起来,从而揭露更多个人信息。

技术发展带来的隐私挑战

  1. 图神经网络:这一先进技术能够有效分析社交网络的图结构数据,从而提高对用户隐私的威胁。
  2. 多模态信息融合技术:通过融合用户在不同平台的行为数据,攻击者能对复杂的多元异构数据进行有针对性的分析。
  3. 机器学习在数据分析中的应用:这可能成为攻击者利用社交网络数据进行隐私攻击的工具。

经济利益与数据售卖

  • 社交网络服务商可能出于盈利目的,将用户数据售卖给第三方机构。比如,Facebook在未告知用户的情况下,将8700万用户的私人数据售卖给了剑桥大学。

防范措施

  • 提高用户隐私意识:用户应意识到自己在社交网络上分享的信息可能带来的风险。
  • 加强法律法规建设:需要更有效的法律法规来保护个人数据不被滥用。
  • 社交平台技术改进:服务提供商应采取技术措施,保障用户数据的安全。

社交网络 用户数据隐私

 社交网络隐私保护中,隐私是研究和保护的对象,在确定隐私保护方案之前,需要对研究的隐私进行定义,确定研究方向和目标。
 不同的隐私目标可能产生不同的问题定义,并因此导致不同的隐私保护方法。在关系数据库的隐私保护中,表中的属性分为非敏感属性和敏感属性两种。敏感属性中的值对个人来说是私有的,也就是所提到的隐私。
 同样在社交网络数据中,网络中节点存在性、属性等信息都可能成为需要保护的对象,以下列举了可能成为网络中隐私的属性。

在社交网络数据中,可能被视为隐私的属性包括:

  1. 顶点存在性和属性:社交网络中的个体是否存在及其属性,如顶点的度等,可被认为是个人隐私。

  2. 敏感顶点标签:社交网络中个体的某些标签属性,如上班时间、上班路线等,这些敏感标签属性被认为是隐私。

  3. 链接关系:社交网络中顶点间的边代表社会个体之间的关系,这种链接关系可能是需要保护的隐私。

  4. 敏感边标签:个体间的边所具有的属性,被视为标签。这些敏感边标签的值有时也被认为是研究的目标。

  5. 图形参数:诸如中间性、接近度、中心性、路径长度、可达性等,表示节点与社交网络的关系或在网络中的地位,可被视为敏感信息或隐私。

  6. 链接权重:在社交网络中,边的权重可以表示个体间的关系亲密度,如朋友之间的亲密度,甚至通信量,这也可视为一种隐私。

这些属性反映了社交网络数据中隐私保护的多维性和复杂性。

社交网络隐私攻击

社交网络隐私攻击是一种利用用户在社交网络上发布的信息进行的攻击。本文将介绍两种主要的攻击方式:基于背景知识的攻击和节点及节点间关系的识别攻击。

基于背景知识的攻击

  • 背景知识定义:这些是单独使用时不足以识别目标用户的信息,但当与其他信息结合时,可能用于推断用户的敏感信息。
  • 攻击过程:攻击者首先获取目标个体的准标识符属性或其他信息,然后收集社交网络中的相关数据,并对自己的背景知识进行建模。这两部分信息的结合可能用于推断出用户的敏感信息或识别网络中的目标用户。
  • 背景知识的重要性:背景知识,通常是一些准标识符,对于进行隐私攻击至关重要。

节点及节点间关系识别攻击

  • 攻击方法:攻击者通过建模已有的背景知识,在社交网络中识别目标节点或者节点间的真实社交关系。
  • 节点属性类型
    • 描述性属性:节点个体所具备的一些描述性信息,如个人特征。
    • 结构属性:由于存在于整个社交网络中而产生的属性,如网络图形结构的特征。
  • 攻击实施:攻击者根据这些属性信息在社交网络中寻找匹配的节点进行识别。同时,他们也可能利用数据集的链接攻击来获取目标节点的敏感属性。
  • 隐私保护:在发布数据时,应避免直接发布可以识别节点的信息,如身份证号等敏感数据。

隶属关系攻击

社交网络中的隶属关系攻击利用个体在网络中的社会联系,如朋友、校友、同事等,进行隐私侵犯。

  • 社交网络的社会联系:个体通过与身边的朋友、校友、同事或其他具有共同特征的人建立联系,选择加入特定的社团组织或参与小组活动。
  • 实例分析:如在微博,用户可根据关注的事件和人物选择相关话题,或在粉丝群共享演唱会照片或视频。
  • 隐私风险:兴趣活动小组在提供便利的同时,可能引发安全问题。个体在同一小组中具有相似属性的概率较高,这可能被攻击者利用来破解敏感信息。
  • 攻击手段:隶属关系识别攻击是指攻击者推断目标节点个体是否属于某小组或具有某公共属性。

概率攻击

概率攻击是一种具有不确定性的隐私侵犯手段。

  • 攻击定义:在已发布的数据集中,攻击者使用概率方法识别个体的敏感属性和信息,而非准确识别特定目标节点。
  • 可能性分析:社交网络中节点的存在性和节点间关系的存在性可通过概率攻击得到推测。
  • 攻击实例:即使在为保护隐私而隐藏某些节点间关系的社交网络数据集中,攻击者仍可利用已有的背景知识进行概率攻击,推测目标节点间的特定关系是否存在。

隐私保护研究现状

本节将从两个方面综述社交网络用户隐私攻击方法和社交网络隐私保护机制的国内外研究现状。

社交网络用户隐私攻击研究现状

社交网络的攻击通常可以分为两类:身份攻击和属性攻击。

  • 身份攻击:旨在确认社交网络数据中用户的身份。
  • 属性攻击:旨在根据发布的社交网络数据预测用户的敏感属性,如性取向、政治倾向等。
  • 主要技术:社交网络去匿名化技术和推理攻击技术是这两种攻击的主流技术。

社交网络去匿名化技术

  • 数据匿名化操作:在发布含敏感信息的数据前,数据拥有者通常会进行匿名化操作,例如删除用户名、电话号码等身份信息,并修改社交网络的拓扑结构。
  • 匿名图:经过处理的社交网络图数据被称为匿名图。
  • 攻击者的行为:通过购买或黑客攻击等手段获取含用户身份信息的辅助图。

基于种子的去匿名化

  • 技术假设:攻击者知晓匿名图中部分用户在辅助图中的对应点,使用这些点作为种子。
  • 技术应用实例
    • Korula采用传播算法进行匿名化。
    • Chiasserini等人运用引导渗流理论和图分割技术设计去匿名化算法。

基于非种子的去匿名化

  • 技术假设:攻击者不直接知道种子对,但利用除拓扑信息之外的其他信息间接获得种子对。
  • 技术应用实例
    • Backstrom等人假设攻击者能生成伪装账号与匿名图中的节点连接,然后识别这些伪装账号所连接的子图。
    • Narayanan提出的启发式传播算法基于已知的种子对实现全图去匿名化。

社交网络去匿名化技术的发展

  • 无种子去匿名化:研究人员提出的新技术,仅依赖辅助图的拓扑信息,例如Pedarsani等人的基于贝叶斯方法的匹配技术。
  • 结构信息外的辅助信息:利用社区信息、属性信息、知识图谱等增强去匿名化效果的方法。

社交网络推理攻击技术

社交网络推理攻击技术基于社交网络中丰富的用户信息,攻击者通过分析公开数据来推理出用户的隐私信息。

推理攻击案例

  • 政治倾向推理:例如,通过分析用户的社交网络好友,攻击者可以推测该用户的政治倾向。
  • 性取向预测:Jerigan通过分析Facebook用户数据,训练了一个逻辑回归分类器来预测用户的性取向。
  • 地理位置推理:Liu设计了一个两阶段模型来整合用户的连接信息和社交网络行为记录,用于预测用户所居住的城市。
  • 政治倾向预测模型:Lindmood提出了一个改进的朴素贝叶斯模型,用于根据用户属性和连接信息预测用户的政治倾向。

推理攻击技术的发展

  • 粗糙集理论应用:Cai等人基于粗糙集理论,提出了利用非敏感属性和好友关系进行敏感属性预测的方法。
  • 对非社交网络用户的攻击:CarCia的研究表明,即使某人不是社交网络的用户,攻击者也可以利用其在现实生活中的联系人的社交网络公开信息进行推理攻击。
  • 机器学习在推理攻击中的应用:图嵌入向量作为社交网络信息表征,在网络分析任务中被广泛应用。Ellers等人提出了针对图嵌入数据的攻击模型,该模型能够推理出被删除的敏感账号及其邻居节点。

社交网络用户隐私保护研究现状

近年来,为了保护社交网络用户的隐私,学术界展开了大量研究。这些研究主要分为两类:抵抗身份认证攻击的匿名化技术和阻止敏感属性攻击的反推理攻击技术。

社交网络匿名化技术

k度匿名化

  • 定义与方法:Liu等人定义了k度匿名化,即确保图中任何点至少有k-1个其他点与其度数相同。他们提出的两阶段k度匿名化方案先匿名化图的度序列,再生成结构相似的图数据。

k邻域匿名化

  • 概念与构造:Zhou等人提出了k邻域匿名化,针对攻击者可能知道目标节点与邻居之间的子图。该方法通过编码用户的单跳邻域节点,分组相似邻域的用户,并对每组进行匿名化处理。

k同构匿名化

  • 定义与实施:Cheng等人提出了k同构匿名化方法,通过将图分为k个同构的子图来实现匿名化。

时变图的k匿名化

  • 研究与算法:Rossi等人探讨了时变图的k匿名问题,并提出了相关算法。

基于图嵌入的匿名化

  • 改进机制:Zhang等人针对现有匿名化机制的弱点,提出了基于图嵌入技术生成更难被识别的假边。

社交网络反推理攻击技术

阻止推理攻击的策略

  • 属性和边的调整:Cain等人通过移除或添加噪声到与隐私属性相关性强的属性和边来阻止攻击。
  • 数据清洗策略:He等人通过解决最优化问题寻找数据清洗策略,实现数据效用和隐私的平衡。
  • 对抗学习噪声生成:Jia设计了一个基于对抗学习的噪声生成机制,用于添加噪声抵御推理攻击,但其研究未涉及对边数据添加噪声。

常见的匿名化隐私保护模型

本章将讨论k-匿名及其衍生模型,这些模型是隐私保护领域内的重要成果。

k-匿名

  • 起源故事:k-匿名模型源自美国马萨诸塞州90年代的一起用户隐私泄露事件。Sweeney成功破解了匿名化的医疗数据,发现仅用性别、出生日期和邮编三元组就可以识别87%的美国人。

  • 模型定义:由Samarati和Sweeney于2002年提出。k-匿名要求发布的数据中每条记录都与至少其他k-1条记录不可区分。

  • 效果与局限性:k-匿名化的数据使攻击者无法确切判断个人信息,但k值的增加会降低数据的可用性。Machanavajjhala等人指出,k-匿名未对敏感属性进行约束,可能导致隐私泄露。

改进的k-匿名模型

  • l-多样性:为防止一致性攻击,l-diversity确保任一等价类中的敏感属性至少有l个不同的值。

  • t-接近性:在l-diversity基础上,要求所有等价类中敏感属性的分布接近该属性的全局分布。

  • (a, k)-匿名:在k-匿名的基础上,保证每个等价类中与任意敏感属性值相关的记录百分比不高于a。

k-匿名模型的挑战

  • 不断演进:尽管上述模型在提高隐私保护方面做出了改进,但仍存在缺陷,且随着新攻击方法的出现,传统的隐私保护模型面临着不断的挑战。

  • 假设的局限性:这些模型基于对攻击者的背景知识和攻击模型的假设,而这些假设在现实中并不总是成立。

  • 差分隐私:直到差分隐私的出现,这些隐私保护模型的根本问题才得到较好的解决。

k-匿名:示例与攻击方法

k-匿名是一种重要的数据匿名化方法。以下是k-匿名的示例以及潜在的攻击方法。

k-匿名示例

  • 公开属性分类

    • 标识符:唯一标识个体的信息,如姓名、地址、电话等,需要在公开数据时删除。
    • 准标识符:非唯一但有助于数据管理的标识,如邮编、年龄、生日等。
    • 敏感数据:研究人员关注的数据,如购买偏好、薪水等。
  • k-匿名模型:确保每个等价类中,指定的标识符或准标识符属性值至少包含k个记录,从而保护个人隐私。

  • 实施方法

    • 删除对应的数据列,用*号代替。
    • 使用概括法使数据无法区分,如将年龄转换为年龄段。

k-匿名攻击方法

  1. 未排序匹配攻击

    • 攻击者通过比对数据记录和原始记录的顺序,猜测匿名化记录的归属。
    • 防御方式:打乱公开数据的原始顺序。
  2. 同质化攻击

    • 如果k-匿名组内的敏感属性值相同,攻击者可以轻易获取信息。
  3. 背景知识攻击

    • 即使敏感属性在k-匿名组内不相同,攻击者可以利用已有的背景知识进行推断。
  4. 补充数据攻击

    • 如果同一份数据被不同方式的k-匿名处理后多次公开,攻击者可以通过数据关联推测用户信息。

基于聚类的隐私保护算法

基于聚类的隐私保护算法在社交网络数据的处理上发挥着关键作用。以下是该算法的主要思想、工作流程和问题描述。

主要思想与工作流程

  • 聚类处理:对社交网络的节点根据节点间的综合距离进行聚类,形成多个超点。超点内部细节被隐匿,超点间的连接则简化为单条边。

  • 关键步骤

    1. 结构与属性信息的概化:为更好地抵御背景知识攻击,综合考虑结构信息和属性信息计算节点间距离。
    2. 聚类算法优化:针对社交网络特点,优化初始种子节点的选取,提高聚类质量,减少信息损失。
    3. 隐私保护力度自适应算法:根据每个节点对隐私保护力度的需求差异,使用不同的保护力度,减少信息损失的同时提高数据安全性。

问题描述

  • 宏观数据准确性:社交网络分析需要保证数据宏观上的准确性,局部信息的不准确性不应影响宏观特性的研究。

  • 现有算法局限性

    1. 基于子图k匿名模型:该模型假设攻击者以社交网络中的子图为背景知识进行攻击。然而,现实中攻击者获取的背景知识内容更为丰富和复杂。
    2. 隐私保护力度问题:大多数算法对所有节点使用相同的隐私保护力度,忽视了不同节点的隐私需求差异。

问题建模

  • 属性泛化定义:在匿名化社交网络中,对簇内各节点的所有属性值进行泛化处理,用更广泛的值取代具体值。

  • 泛化过程

    • 数据类型区分:数值型(如年龄、收入)和非数值型数据需采用不同的泛化方法。
    • 数值型数据泛化:用数值范围代替具体数值,以减少信息损失。

基于聚类的社交网络隐私保护算法设计

基于聚类的社交网络隐私保护算法是一个重要的隐私保护工具,特别是在处理大规模社交网络数据时。以下是算法设计的关键环节和思路。

算法设计概述

  • 基于k-means聚类算法:此算法利用k-means聚类方法对社交网络节点进行聚类,生成若干超点。
  • 聚类过程
    1. 初始聚类:选择具有代表性的种子节点,将未分配的节点根据最近的簇进行聚类,直至所有节点分配完毕。
    2. 再分配:对初次聚类后的图进行再分配,确保所有节点满足其隐私保护需求。
    3. 匿名化操作:对所有超级节点进行匿名处理。

初始种子节点优化算法

  • k-means算法的特点:对初始聚类中心敏感,需结合社交网络特点进行优化。
  • 聚类系数和密度:结合局部聚类系数和用户节点密度,选取具有较高聚集程度的节点作为初始中心。
  • 选择方法:对点集进行排序基于聚集密度,选择最大或相距较远的节点作为初始中心,以提高聚类效果。

隐私保护力度自适应

  • 核心点和非核心点:根据节点的隐私保护需求,将节点分为核心点(需要高隐私保护)和非核心点(需求较低)。
  • 保护力度的调整:高隐私保护力度的节点增加安全性,而对低隐私需求的节点减少信息损失,提高数据有效性。
  • 核心节点判断:根据节点周围的节点密度和初次聚类情况判断节点是否为核心节点。

提纲问题

1. 列举几条社交网络隐私泄露的几个案例。

几个社交网络隐私泄露的案例包括:

  1. 分享原图暴露地址:一位市民分享了玉渊潭游览的照片到微博,导致其地理位置被闺蜜发现。

  2. 朋友圈信息泄露实验:通过微信摇一摇功能加的陌生人,从其朋友圈迅速获得大量个人信息。

  3. 随意发图暴露地址被性侵:在辽宁,一位23岁女孩张迪的微信相册被犯罪嫌疑人利用,导致其被害。

  4. 明星自拍中的瞳孔倒影泄露地理位置:日本女明星松冈笑南的自拍照中的瞳孔倒影被粉丝用来定位她的位置。

  5. 电视综艺节目《超脑少年团》中,通过一张航拍照片解锁了具体的地址和航班信息。

这些案例反映了社交网络上的个人信息如何被他人利用,从而引发严重的隐私泄露和安全风险。

2. 不同的应用场景对隐私的定义不同,社交网络数据中,哪些属性可能称为网络中的隐私信息?

在社交网络数据中,可能被视为隐私的属性包括:

  1. 顶点存在性和属性:社交网络中的个体是否存在及其属性,如顶点的度等,可被认为是个人隐私。

  2. 敏感顶点标签:社交网络中个体的某些标签属性,如上班时间、上班路线等,这些敏感标签属性被认为是隐私。

  3. 链接关系:社交网络中顶点间的边代表社会个体之间的关系,这种链接关系可能是需要保护的隐私。

  4. 敏感边标签:个体间的边所具有的属性,被视为标签。这些敏感边标签的值有时也被认为是研究的目标。

  5. 图形参数:诸如中间性、接近度、中心性、路径长度、可达性等,表示节点与社交网络的关系或在网络中的地位,可被视为敏感信息或隐私。

  6. 链接权重:在社交网络中,边的权重可以表示个体间的关系亲密度,如朋友之间的亲密度,甚至通信量,这也可视为一种隐私。

这些属性反映了社交网络数据中隐私保护的多维性和复杂性。

3. 针对社交网络隐私攻击的方法有哪些?简要地进行说明。

针对社交网络隐私攻击的主要方法包括:

  1. 基于背景知识的攻击:攻击者结合已发布的社交网络数据和背景知识来识别目标个体和敏感信息。

  2. 节点及节点间关系识别攻击:攻击者利用社交网络中的个体属性信息和结构属性信息进行识别攻击。

  3. 隶属关系攻击:攻击者通过社交网络推断目标节点个体是否属于某小组或具有某公共属性。

  4. 概率攻击:在已发布的数据集中,攻击者利用具有一定概率性的方法识别社会个体的敏感属性和信息。

  5. 社交网络去匿名化技术和推理攻击技术:攻击者通过购买或黑客攻击等方式获得含有用户身份信息和社交网络拓扑的辅助图,然后进行去匿名化攻击或推理攻击,以推测用户的敏感属性。

4. 什么是社交网络匿名化技术?简要地介绍一下 k-匿名以及针对这种方法的攻击方式。

社交网络匿名化技术是指通过对社交网络数据进行处理,以保护用户隐私的一系列方法。其中,k-匿名是一种常见的匿名化技术,其目标是确保任何个体的信息至少与其他k-1个个体的信息相似,以此来阻止个体被识别

然而,k-匿名方法面临着多种攻击方式,例如基于背景知识的攻击,攻击者可以利用额外的信息来区分或识别原本在k-匿名集中无法区分的个体。此外,结构攻击也是一种常见的针对k-匿名的方法,攻击者通过分析社交网络的结构特征来识别目标个体。

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

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

相关文章

力扣刷题-二叉树-路径总和

112 路径总和 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。 说明: 叶子节点是指没有子节点的节点。 示例: 给定如下二叉树,以及目标和 sum 22, 返回 true, 因为…

【漏洞复现】红帆OA iorepsavexml.aspx文件上传漏洞

漏洞描述 广州红帆科技深耕医疗行业20余年,专注医院行政管控,与企业微信、阿里钉钉全方位结合,推出web移动一体化办公解决方案——iOffice20(医微云)。提供行政办公、专业科室应用、决策辅助等信息化工具,采取平台化管理模式,取代医疗机构过往多系统分散式管理,实现医…

C#实现MQTT over WebSocket

如何在网页端实现MQTT消息的发布和订阅? 实现MQTT功能,可以发布和订阅主题通过WebSocket协议将MQTT消息转发给对应的网页端 带着这个实现思路,采用C#控制台程序实现MQTT服务端功能,web端可以直接使用websocket插件与服务端双向通…

力扣刷题-二叉树-二叉树的所有路径

257 二叉树的所有路径 给定一个二叉树,返回所有从根节点到叶子节点的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 思路 参考: https://www.programmercarl.com/0257.%E4%BA%8C%E5%8F%89%E6%A0%91%E7%9A%84%E6%89%80%E6%9C%89%E8%B7%AF%E5%BE…

MNIST内置手写数字数据集的实现

torchvision库 torchivision库是PyTorch中用来处理图像和视频的一个辅助库,接下来我们就会使用torchvision库加载内置的数据集进行分类模型的演示 为了统一数据加载和处理代码,PyTorch提供了两个类用于处理数据加载,他们分别是torch.utils.…

进程通信知识基础【Linux】——下篇

目录 前文 一,命名管道 创建命名管道 1. getline——c库 2. unlink——系统接口 实践代码 common.hpp client.cpp server.cpp Log.cpp 二,共享内存(system V接口) 1. 创建共享内存 shmget接口 2. 删除共享内存 常见…

PMP项目管理 - 相关方管理

系列文章目录 PMP项目管理 - 质量管理 PMP项目管理 - 采购管理 PMP项目管理 - 资源管理 PMP项目管理 - 风险管理 PMP项目管理 - 沟通管理 现在的一切都是为将来的梦想编织翅膀,让梦想在现实中展翅高飞。 Now everything is for the future of dream weaving wing…

【一种用opencv实现高斯曲线拟合的方法】

背景: 项目中需要实现数据的高斯拟合,进而提取数据中标准差,手头只有opencv库,经过资料查找验证,总结该方法。 基础知识: 1、opencv中solve可以实现对矩阵参数的求解; 2、线的拟合就是对多项…

【深度强化学习】确定性策略梯度算法 DDPG

前面讲到如 REINFORCE,Actor-Critic,TRPO,PPO 等算法,它们都是随机性策略梯度算法(Stochastic policy),在广泛的任务上表现良好,因为这类方法鼓励了算法探索,给出的策略是…

探索 Vim:一个强大的文本编辑器

引言: Vim(Vi IMproved)是一款备受推崇的文本编辑器,拥有强大的功能和高度可定制性,提供丰富的编辑和编程体验。本文将探讨 Vim 的基本概念、使用技巧以及为用户带来的独特优势。 简介和发展 1. Vim 的简介和历史 V…

【二分查找】自写二分函数的总结

作者推荐 【动态规划】【广度优先搜索】LeetCode:2617 网格图中最少访问的格子数 本文涉及的基础知识点 二分查找算法合集 自写二分函数 的封装 我暂时只发现两种: 一,在左闭右开的区间寻找最后一个符合条件的元素,我封装成FindEnd函数。…

力扣刷题-二叉树-平衡二叉树

110 平衡二叉树 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 返回 true 。 给定二叉树 [1…

AUTOSAR ComM模块配置以及代码

ComM模块配置以及代码执行流程 1、基本的一个通道的配置列表 ComMNmVariant 概念的个人理解: FULL: 完全按照AUTOSAR NM方式进行调用 LIGHT :设置一个超时时间,在请求停止通信的时候开始计时,超时之后才会进入FULLCOM…

运维实践|采集MySQL数据出现many connection errors

文章目录 问题出现问题分析当前环境问题分析 解决方案1 检查调度事件任务是否开启2 开启调度事件任务3 创建一张日志表4 创建函数存储过程5 创建事件定时器6 开启事件调度任务7 检查核实是否创建 总结 问题出现 最近在做OGG结构化数据采集工作,在数据采集过程中&am…

将博客搬至微信公众号了

一、博客搬家通知 各位码友们好,大家是不是基本很少看 CSDN 了呢?平时开发是不都依靠着 chatGPT 来解决工作中的技术问题了,不过我觉得在工作中的使用场景各式各样的,具体问题还得自己具体去梳理逻辑,再考虑用什么样的…

C语言:求和1+1/2-1/3+1/4-1/5+……-1/99+1/100

#include<stdio.h> int main() {int i 0;double sum 0.0;int flag 1;for (i 1;i < 100;i){sum 1.0 / i * flag;flag -flag;}printf("sum%lf\n", sum);return 0; }

SpringIOC之@Primary

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

力扣刷题-二叉树-找树左下角的值

513 找树左下角的值 给定一个二叉树的 根节点 root&#xff0c;请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 示例 1&#xff1a; 示例 2&#xff1a; 思路 层序遍历 直接层序遍历&#xff0c;因为题目说了是最底层&#xff0c;最左边的值&a…

【数据结构—队列的实现】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言 一、队列 1.1队列的概念及结构 二、队列的实现 2.1头文件的实现—Queue.h 2.2源文件的实现—Queue.c 2.3源文件的测试—test.c 三、测试队列实际数据的展示 3.…

mysql使用st_distance_sphere函数报错Incorrect arguments to st_distance_sphere

前言 最近使用空间点位查询数据时函数报错Incorrect arguments to st_distance_sphere报错。 发现问题 因为之前是没有问题的&#xff0c;所以把问题指向了数据&#xff0c;因为是外部数据&#xff0c;不是通过系统打点获取&#xff0c;发现是因为经纬度反了&#xff0c;loc…