sheng的学习笔记-AI-半监督学习

AI目录:sheng的学习笔记-AI目录-CSDN博客

基础知识

什么是半监督学习

我们在丰收季节来到瓜田,满地都是西瓜,瓜农抱来三四个瓜说这都是好瓜,然后再指着地里的五六个瓜说这些还不好,还需再生长若干天。基于这些信息,我们能否构建一个模型,用于判别地里的哪些瓜是已该采摘的好瓜?显然,可将瓜农告诉我们的好瓜、不好的瓜分别作为正例和反例来训练一个分类器

但如果瓜农无法提供大量的好瓜/不好的瓜 的标记,那就需要根据已经提供的少量标记,来学习大量未标记的数据

让学习器不依赖外界交互、自动地利用未标记样本来提升学习性能,就是半监督学习(semi-supervised learning)。

半监督使用场景

半监督学习的现实需求非常强烈,因为在现实应用中往往能容易地收集到大量未标记样本,而获取“标记”却需耗费人力、物力。​“有标记数据少,未标记数据多”这个现象在互联网应用中更明显,

例如,在进行计算机辅助医学影像分析时,可以从医院获得大量医学影像,但若希望医学专家把影像中的病灶全都标识出来则是不现实的。

例如在进行网页推荐时需请用户标记出感兴趣的网页,但很少有用户愿花很多时间来提供标记,因此,有标记网页样本少,但互联网上存在无数网页可作为未标记样本来使用。

未标记样本的分布与已标记样本的分布的关联做出假设

要利用未标记样本,必然要做一些将未标记样本所揭示的数据分布信息与类别标记相联系的假设

聚类假设

最常见的是“聚类假设”(cluster assumption),即假设数据存在簇结构,同一个簇的样本属于同一个类别,由于待预测样本与正例样本通过未标记样本的“撮合”聚在一起,与相对分离的反例样本相比,待判别样本更可能属于正类

 流形假设

另一种常见的假设是“流形假设”(manifold assumption),即假设数据分布在一个流形结构上,邻近的样本拥有相似的输出值。​“

邻近”程度常用“相似”程度来刻画,因此,流形假设可看作聚类假设的推广,但流形假设对输出值没有限制,因此比聚类假设的适用范围更广,可用于更多类型的学习任务。事实上,无论聚类假设还是流形假设,其本质都是“相似的样本拥有相似的输出”这个基本假设。

纯(pure)半监督学习和直推学习(transductive learning)

纯(pure)半监督学习

假定训练数据中的未标记样本并非待预测的数据,是基于“开放世界”假设,希望学得模型能适用于训练过程中未观察到的数据

直推学习(transductive learning)

假定学习过程中所考虑的未标记样本恰是待预测数据,学习的目的就是在这些未标记样本上获得最优泛化性能,基于“封闭世界”假设,仅试图对学习过程中观察到的未标记数据进行预测

参考文章:

统计学习 - 12.半监督学习 - 《AI算法工程师手册》 - 书栈网 · BookStack

 书:机器学习(号称西瓜书)

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

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

相关文章

【Qt CMake】Qt5Widgets.dll:-1: error: LNK1107: 文件无效或损坏: 无法在 0x308 处读取

项目场景: CMake 编译QT 工程 编译报错 E:\tool\Qt5.15.2\5.15.2\msvc2019_64\bin\Qt5Widgets.dll👎 error: LNK1107: 文件无效或损坏: 无法在 0x308 处读取 问题描述 Cmkae 报错: E:\tool\Qt5.15.2\5.15.2\msvc2019_64\bin\Qt5Widgets.dll…

Linux 数据结构 链表

1.段错误调试方法: 1.按照网上的方法配置Ubuntu,允许生成core文件 2.重新编译代码并加入-g选项(允许进行GDB调试) 3.ulimit -c unlimited 不限制core文件的生成的大小 4.执行代码,复现段错误,产生包含出错信息的core文件(检查cor…

Android UI绘制原理:UI的绘制流程是怎么样呢?为什么子线程不能刷新UI呢?讲解大体的流程是怎么样的

目录: 一、 为什么要学习android UI绘制原理呢?对我们有什么帮助? 1.解决复杂布局问题:了解UI绘制原理可以帮助我们更好地理解和解决布局问题,比如使用自定义View、优化布局层级等。 2.知道何时触发布局(…

redis面试(二十五)CountDownLatch实现

CountDownLatch最基本的原理,就是用来阻塞线程的,java本身也有CountDownLatch,用多线程处理分批处理多数据的时候很有用 基本的逻辑就是,同时开多个子线程,然后主线程进入等待,只有当其他子线程全都结束之…

JAVA后端框架【spring】--超详解

什么是spring? spring是一个轻量级的ioc和Aop的一站式java开发框架,简化企业级开发 轻量级:框架体积小(核心模块) IOC IOC:inversion of control 控制反转 把创建对象的控制权反转给spring框架 AOP Aop:面向切面编程 将程…

pnpm 查看库的所有版本

1、最近在做图布局的时候,发现默认版本是beta版 2、那么我们如何来查看远程库中有什么版本可以安装呢? 3、使用命令: pnpm view antv/layout versions pnpm view 这里替换成要查看的库名 versions

Android APP 常见概念与 adb 命令

adb 的概念 adb 即 Android Debug Bridge 。在窗口输入 adb 即可显示帮助文档。adb 实际上就是在后台开启一个 server,会接收 adb 的命令然后帮助管理,控制,查看设备的状态、信息等,是开发、测试 Android 相关程序的最常用手段。…

Jenkins安装使用详解,jenkins实现企业级CICD流程

文章目录 一、资料1、官方文档 二、环境准备1、安装jdk172、安装maven3、安装git4、安装gitlab5、准备我们的springboot项目6、安装jenkins7、安装docker8、安装k8s(可选,部署节点)9、安装Harbor10、准备带有jdk环境的基础镜像 三、jenkins实…

addroutes和next()导致的页面无法跳转问题,如登录之后无法跳转到首页,无法重定向,使用next(to)

版本 vue router 3 问题说明 登录成功后,想重定向到/index,执行router.push之后进入beforeEach; 由于第一次访问,判断用户信息为空,需要异步拉取用户的权限等信息, 获得响应后,使用addRoutes批…

harbor部署+docker-compose

harbor部署 harbor介绍 Harbor 是一个开源的企业级容器镜像仓库,用于存储和分发 Docker 镜像及其他容器格式的镜像。 Harbor 提供了一个集中化的存储库,方便团队成员共享和管理容器镜像。你可以将构建好的镜像推送到 Harbor 仓库中,其他成…

用python启动nacos和redis

import subprocess import tkinter as tk from tkinter import ttk, messagebox from subprocess import Popen, run, PIPE# 启动Nacos的函数 def start_nacos():startup_cmd_path rD:\environment\code-software\nacos-server-1.4.1\nacos\bin\startup.cmd# 异步启动NacosPop…

Python 和 PyCharm 安装(傻瓜式)

为什么要安装Python? 当我们写 python 代码的时候,需要有环境的支持,才可以运行代码。而 python 的安装支持了两个主要部分,分别是解释器和标准库。当我们安装完成,就可以使用python里面的标准库来写代码,而…

Nginx - 反向代理、缓存详解

概述 本篇博客对配置Nginx的第二篇,主要介绍Nginx设置反向代理、缓存、和负载均衡三个知识点,在之前的生产实践中遇到的问题进行归纳和总结,分享出来,以方便同学们有更好的成长。 Nginx 核心参数配置 在写Nginx反向代理时&…

Kafka的Offset(偏移量)详解

Kafka的Offset详解 1、生产者Offset2、消费者Offset2.1、消费者2.2、生产者2.3、实体类对象2.4、JSON工具类2.5、项目配置文件2.6、测试类2.7、测试2.8、总结 1、生产者Offset 2、消费者Offset 2.1、消费者 package com.power.consumer;import org.apache.kafka.clients.consu…

nexus 清理 docker 镜像

下载配置 nexus-cli 看网上文档都用如下地址,但现在已经不能下载: wget https://s3.eu-west-2.amazonaws.com/nexus-cli/1.0.0-beta/linux/nexus-cli chmod x nexus-cli 在 github 上下载: wget https://github.com/heyonggs/nexus-cli/r…

跟李沐学AI:转置卷积

定义 卷积不会增大输入的高宽,通常卷积层后高宽不变或减半。转置卷积则可以用来增大输入的宽高。 转置卷积是一种卷积,它将输入和核进行了重新排列,通常用作上采用。 如果卷积将输入从变为,同样超参数的情况下,转置…

Java中三大容器类(List、Set、Map)详解

三大容器介绍 名称结构特点常见实现类List(列表)由有序的元素序列组成,可以包含重复元素可以通过索引访问元素,插入的顺序与遍历顺序一致ArrayList、LinkedList、VectorMap(映射)由键值对(Key-Value)组成的…

SpringBoot项目中mybatis执行sql很慢的排查改造过程(Interceptor插件、fetchSize、隐式转换等)

刚入职公司,就发现公司项目跑sql特别慢,差不多一万条数据插入到数据库要5秒以上(没有听错,就是这个速度),查询修改删除也是特别慢。直到22年年底实在是受不了了,我就去排查了一下。 用的是Oracl…

OpenCV小练习:身份证号码识别

目标:针对一张身份证照片,把身份证号码识别出来(转成数字或字符串)。 实现思路:需要将目标拆分成两个子任务:(1) 把身份证号码区域从整张图片中检测/裁剪出来;(2) 将图片中的数字转化成文字。第…

Ubuntu 22.04上稳定安装与配置搜狗输入法详细教程

摘要:本教程详细介绍了如何在Ubuntu 22.04上安装和配置搜狗输入法,每个步骤详细配图。由于在Ubuntu 24.04上存在兼容性问题,建议用户继续使用稳定的22.04版本。教程涵盖了从更新系统源、安装fcitx输入法框架,到下载和配置搜狗输入…