【最后203篇系列】010 关于矩阵的一点思考

说明

今天拿起一本矩阵的书又翻了翻,毕竟AI搞到最后还得是数学。

我是感觉自己高数始终有点学的迷迷糊糊的,就打算这一年慢慢把矩阵部分扫一遍,毕竟这快肯定是实打实有用的。其他高级部分就等我发财之后再说了,哈哈。

内容

今天看了点点矩阵乘法的基本概念,这个点我以前就一直在思考,因为并不仅仅是计算,而是为什么有这样的计算。我记得以前还看过一个国外的科普视频,大约讲了一个班级的学生出门玩坐公交啥的,然后用矩阵就可以方便的计算各种费用。

关键点是在于:矩阵这种格式究竟是为什么场景设计的?

先说个抽象点的。

我先画了个图,其实稍微有点不对(结果矩阵的第一个元素应该是第一行乘以第一列),不过大概想表达个意思:矩阵乘法应该想象成一个机关,或者说算子,或者说开关,都行。就是一个可以想象的,很具体的动作。

在这里插入图片描述
这里豆包稍微解读了一下,是这个意思。
在这里插入图片描述
我觉得可以这么想象,矩阵就像一个铡刀:

  • 1 底座(矩阵1): m x n
  • 2 直立的铡刀(矩阵2): n x p

咔嚓一下,铡刀90度旋转切下来,这个过程中,对齐的部分积压为一个元素值。以下面的矩阵为例,A是基座,B要想象横过来,然后A的第一行[1,2,3]是紧贴B的最底下的一行[2,4,6],这两个向量等长,意味着铡刀的长和基座是对齐的。B旋转下来时,[1,2,3]和[2,4,6]挤压(内积),变成了28。旋转完成时,剩下的结果,就是一片新的"板材"。这样可以有一个比较形象的类比,比较好记。
在这里插入图片描述

再说个具体点的应用,这个应该也是MLR概念的一部分。

逻辑回归的公式,大概这样
在这里插入图片描述
我以前更习惯用β那套符号,b也就是β0。

逻辑回归有一个比较经典的问题:变量选择。假设我们生成了1000个x,那么选哪些才最好呢?

如果按照解析思维,就算什么重要性,相关性啥的,嗯,反正我不太想回忆那个。其实一个更简单的思路,就是–试试呗。

暴力破解不太可能,也不经济,1000个特征的组合数还是比较吓人的。

在这里插入图片描述
我随便跑了一些
在这里插入图片描述
所以暴力法一定不太对,那么用遗传算法就可以 x1-x1000,每个变量的选择都可以认为是0,1 Mask的;但是遗传算法也会产生很大的计算量,那么怎么加速呢? 矩阵。

假设A矩阵是参数,B矩阵是变量选择。那么A矩阵应该是 n X 1000的矩阵,那么第一行就是w0,与某一组x挤压(内积)后就得到了一个y‘。

所以A矩阵的n行,代表了n种可能的参数。

我们把B矩阵横过来,此时的形状是p X 1000,那么p是什么呢? p可以是遗传算法生成的种群。

假设我们可以对A的参数可能性进行优化(梯度),那么每一次计算都可以将多种可能性一次性计算出来,然后评估。C矩阵则是评估矩阵。

一种可能的情况是,我们先定住A,然后让B进行遗传进化;然后我们再定住B,让A进行迭代。每次计算完毕后,我们通过评估C来看结果是怎样的。

在这里插入图片描述

如果是1000X1000的矩阵,大约是4MB显存,我们完全可以扩大10倍,例如A矩阵是 1万 x 1千,B矩阵是 1千X1万,这两者的显存大约80MB。然后假设计算的瞬间显存会翻倍,那么是160MB峰值,C矩阵是1万X1万,大约是400MB。总共不到1个G的显存,所有的消费级显卡都可以很容易计算。

关于有多快,这个大模型很打官腔:
在这里插入图片描述
然后我追问了一下:
在这里插入图片描述
嗯,然后我实测了了一下,简单的结论是处理一次是秒级,大部分时间是损耗在从内存搬到显存上的。

3060TI,第一次计算 0.5秒
在这里插入图片描述

再次计算14.8毫秒。所以还是很符合理论估计的。
在这里插入图片描述
再用4060ti试一下:机器配置稍微好一点,0.3秒

在这里插入图片描述
第二次 13.7毫秒。所以4060ti在计算力上没啥提升,显存16G还是方便很多的。
在这里插入图片描述
然后是4090,机器是租用的额,cpu配置稍微弱了点,6核12线程的。
在这里插入图片描述
再算一次就厉害了。
在这里插入图片描述

未来的架构,有可能是直接写显存的(现在豆包的架构已经这么改了),所以这类型的计算,非常具有可行性。

假设我们在进行遗传算法,每次迭代大约1-2秒,这个速度已经很快了,应该可以在很短的时间,比如10分钟左右,找到一组合适解。这种方法最大的好处就是通用,不必将道理。设计好评估的方法就可以了,除了roc,auc之类的,可能同时考虑aic或者bic,不管怎么样,给到一套合理的评估方法就行了。这个本身也是模型验收必然要做的。

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

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

相关文章

(动态规划 最长递增的子序列)leetcode 300

这道题我第一眼反应就是暴力,但是暴力的话就是n*n-1*n-2*...n-(n-1) 也就是O(n^n)dfs做绝对超时 贪心也不行,这里是子序列,要考虑在ni的范围内考虑多种路线取最优,所以用动态规划 如何用动态规划呢? 答:…

本地大模型编程实战(26)用langgraph实现基于SQL数据构建的问答系统(5)

本文将将扩展上一篇文章完成的 langgraph 链,继续使用基于 langgraph 链 ,对结构化数据库 SQlite 进行查询的方法。该系统建立以后,我们不需要掌握专业的 SQL 技能,可以用自然语言询问有关数据库中数据的问题并返回答案。主要完善…

Linux---共享内存

1.ipcs命令 IPC机制是一个让人烦恼的问题:编写错误的程序或因为某些原因而执行失败的程序将把它的IPC资源(如消息队列中的数据)遗留在系统里,并且这些资源在程序结束后很长时间让然在系统中游荡,这导致对程序的新调用…

RAG 阿里云

RAG-阿里云Spring AI Alibaba官网官网 RAG-阿里云Spring AI Alibaba官网官网 AI应用跑起来,取消一下航班的操作666

M4 Mac mini运行DeepSeek-R1模型

前言 最近DeepSeek大模型很火,实际工作中也有使用,很多人觉得需要很好的显卡才能跑起来,至少显存需要很高,但实际上一般的核显机器也能跑起来,只不过内存要求要大,对于个人而言,实际上Mac M芯片…

【Cadence射频仿真学习笔记】2.4GHz低噪放LNA仿真设计

课程分为3个部分, 一、LNA结构与噪声优化方法 噪声优化的方法是:限定功耗的噪声和功率同时匹配噪声匹配和功率匹配一般不会同时达到, 对于PCSNIM结构的噪声分析,我们只需要了解与哪些参数有关优化思路是:1.信号源阻抗…

机器学习:线性回归,梯度下降,多元线性回归

线性回归模型 (Linear Regression Model) 梯度下降算法 (Gradient Descent Algorithm) 的数学公式 多元线性回归(Multiple Linear Regression)

C++22——哈希

目录 1.unordered_map的文档介绍 2.unordered_set的文档介绍 3.底层结构 3.1哈希的概念 3.2哈希冲突 3.3哈希函数 3.4哈希冲突解决 3.4.1闭散列 3.4.2开散列 1.unordered_map的文档介绍 unordered_map在线文档说明 unordered_map是存储<key&#xff0c;value>键值…

Docker 搭建 Gitlab 服务器 (完整详细版)

参考 Docker 搭建 Gitlab 服务器 (完整详细版)_docker gitlab-CSDN博客 Docker 安装 (完整详细版)_docker安装-CSDN博客 Docker 日常命令大全(完整详细版)_docker命令-CSDN博客 1、Gitlab镜像 # 查找Gitlab镜像 docker search gitlab # 拉取Gitlab镜像 docker pull gitlab/g…

如何杀死僵尸进程?没有那个进程?

在题主跑代码的时候遇到了这样一种很奇怪的问题&#xff1a; 可以看到显卡0没有跑任何程序但是还是被占据着大量显存&#xff0c;这种进程称为“僵尸进程”&#xff0c;并且当我想kill它的时候&#xff0c;出现下面这种情况&#xff1a; 查过各种资料&#xff0c;最后我的解决…

从0开始的IMX6ULL学习篇——裸机篇之分析粗略IMX6ULL与架构

目录 简单的说一下Cortex-A7架构 讨论ARMv7a-cortex系列的运行模式 寄存器 后言 让我们到NXP的官网上扫一眼。 i.MX 6ULL应用处理器_Arm Cortex-A7单核&#xff0c;频率为900 MHz | NXP 半导体 我们先看CPU Platform&#xff0c;这个是我们的核心。 这里我们的芯片是基于Ar…

从UNIX到Linux:操作系统进化史与开源革命

从UNIX到Linux&#xff1a;操作系统进化史与开源革命 一、操作系统&#xff1a;数字世界的基石 1.1 什么是操作系统&#xff1f; 操作系统&#xff08;OS&#xff09;是计算机系统的核心管理者&#xff0c;承担着三大核心使命&#xff1a; 硬件指挥官&#xff1a;直接管理C…

风控算法技术图谱和学习路径

风控算法技术图谱和学习路径可以从以下几个方面进行详细阐述: 一、风控算法技术图谱 基础知识与理论框架 风控算法技术的核心在于数据处理、特征工程、模型构建及优化。基础知识包括统计学、机器学习、深度学习、图算法等。例如,基于Python的智能风控书籍详细介绍了信贷风控…

Word 插入图片会到文字底下解决方案

一、现象描述 正常情况下&#xff0c;我们插入图片都是这样的。 但有时突然会这样&#xff0c;插入的图片陷于文字底部。 二、网上解决方案 网上有教程说&#xff0c;修改图片布局选项&#xff0c;从嵌入型改成上下型环绕。改完之后确实有用&#xff0c;但是需要手动拖动图片…

NO.22十六届蓝桥杯备战|一维数组|七道练习|冒泡排序(C++)

B2093 查找特定的值 - 洛谷 题⽬要求下标是从0开始的&#xff0c;和数组的下标是吻合的&#xff0c;存放数据应该从下标0开始n的取值范围是1~10000数组中存放的值的绝对值不超10000&#xff0c;说明int类型就⾜够了找到了输出下标&#xff0c;找不到要输出-1&#xff0c;这⼀点…

SQL server2022的详细安装流程以及简单使用

鉴于SQL Server2008R2版本过于老旧&#xff0c;本文主要讲述如何安装SQL Server 2022。 本文主要详细介绍SQL server2022的详细安装流程以及简单使用&#xff0c;以《数据库系统概论&#xff08;第5版&#xff09;》的第79页—第80页为例&#xff0c;详细介绍如何使用SQL serv…

泰勒公式详解与应用

前言 本文隶属于专栏《机器学习数学通关指南》&#xff0c;该专栏为笔者原创&#xff0c;引用请注明来源&#xff0c;不足和错误之处请在评论区帮忙指出&#xff0c;谢谢&#xff01; 本专栏目录结构和参考文献请见《机器学习数学通关指南》 正文 &#x1f4dd; 一句话总结 泰…

Spring Data JPA 中的分页实现:从 BasePage 到 Pageable

文章目录 Spring Data JPA 中的分页实现&#xff1a;从 BasePage 到 Pageable背景&#xff1a;为什么需要分页&#xff1f;认识 BasePage 类深入 toPageable() 方法1. 处理页码和页面大小2. 处理排序方向3. 处理排序字段4. 生成 Pageable 对象 实战&#xff1a;如何使用 BasePa…

Android SystemUI开发(一)

frameworks/base/packages/SystemUI/src/com/android/systemui/SystemUI.java frameworks/base/packages/SystemUI/src/com/android/systemui/SystemUIService.java 关键文件 SystemUI 关键服务 简介 Dependency.class&#xff1a;处理系统依赖关系&#xff0c;提供资源或服…

Python----Python爬虫(多线程,多进程,协程爬虫)

注意&#xff1a; 该代码爬取小说不久或许会失效&#xff0c;有时候该网站会被封禁&#xff0c;代码只供参考&#xff0c;不同小说不同网址会有差异 神印王座II皓月当空最新章节_神印王座II皓月当空全文免费阅读-笔趣阁 一、多线程爬虫 1.1、单线程爬虫的问题 爬虫通常被认为…