机器学习得到的那个模型究竟是什么东西? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
abcbuzhiming
V2EX    机器学习

机器学习得到的那个模型究竟是什么东西?

  •  
  •   abcbuzhiming 2022-06-13 13:34:48 +08:00 3336 次点击
    这是一个创建于 1224 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我有两个疑问:

    1.机器学习得到那个 [模型] 究竟是什么东西?有说它是一个函数的,还有说它就是一个向量的,众说纷纭

    2.为了训练这个模型,需要大量计算器并行运算,所以 GPU 非常适合这个工作。但是在使用这个模型的时候。是哪一部分在计算呢?我了解到有些模型现在居然可以直接部署在手机上,这显然和桌面 GPU 有巨大的性能差距。也就是说,使用模型时的计算量是远远低于训练时的。这是为什么呢
    15 条回复    2023-11-27 11:47:49 +08:00
    rming
        1
    rming  
       2022-06-13 13:42:00 +08:00
    1. 逻辑代码和参数(保存模型也可以选择只保存参数,下次跑的时候,加载逻辑代码,读取保存的参数)
    2. 学习过程就是计算最优参数,需要多次重复计算评估(通过计算训练集的损失率和准确率)
    找个教程系统的学习下就知道了,机器学习新手,不对请指正
    MingHime
        2
    MingHime  
       2022-06-13 14:32:37 +08:00   1
    y=kx ,k (狗头)
    neteroster
        3
    neteroster  
       2022-06-13 14:37:43 +08:00
    ufan0
        4
    ufan0  
       2022-06-13 15:06:52 +08:00
    宏观上看就是暴力数学归纳,哈哈哈
    LxExExl
        5
    LxExExl  
       2022-06-13 15:09:58 +08:00
    二楼正解,就是 y=ax+b ,1 是求 a 和 b ,2 是给 x 算 y 。部署在哪里取决于要算多少个 x 。
    zzgo88
        6
    zzgo88  
       2022-06-13 15:18:37 +08:00   1
    1. 模型可理解为一个函数,给他一个输入(例如一张图片),他会给你一个输出(例如图片的标签或分类),这个函数可以由向量及其他一些数据(如模型架构)表示,例如 3 层 CNN 为架构,但是有无数个 3 层 cnn ,里面有很多参数,都是向量。所有向量都确定后可确定唯一的一个模型或函数。例子,函数 y=wx+b ,x 是输入 y 是输出,wx+b 就是这个函数 /模型的架构(一个负责放缩的参数 w 和一个负责 bias 的 b ),wb 就是参数,在 w ,b 不确定的情况下,y=wx+b 有无数个选择,但如果指定 w 和 b 的值,那么 y=wx+b 就是一个确定的模型或函数。

    2. 模型的训练阶段可理解为从一堆函数中,根据一定的目标(即损失函数)及数据,选择你认为最好的函数。训练过程是一个逐渐获取最终结果的过程(俗称炼丹),包含多个迭代,其中每个迭代包括正向传播(计算损失)以及反向传播(计算梯度)两个阶段,每个阶段通常表示为矩阵乘来提升计算速度;这里使用 gpu 计算。

    而在这个模型的使用阶段(称为推断或 inference ),相比于训练阶段只需要一个迭代,并且只需要正向传播一次,因此在不需要训练模型的时候(比如部署在你手机上),计算量远远小于训练。例子,模型训练后得到 y=2x+1 ,给定一个输入 x=2 ,只需要计算一次 2*2+1 即可。
    agagega
        7
    agagega  
       2022-06-13 15:18:53 +08:00
    最最最简单的情况:

    一个班的学生考试成绩出了,但公布的分数被老师改过。现在你有一批原始分数和改后的分数,你可以把这批分数遍历一遍,算出这些学生实际分数和公开分数差值的平均值。现在你有另外一些学生的公开分数,通过前面的平均数,你可以估计这些学生的实际分数。

    在这个情景里,那个差值平均数就是模型,训练模型就需要遍历数据集计算,而使用模型只需要在新数据上加上这个平均数就好了,所以计算量小很多。这样好理解了吧?
    xilou31
        8
    xilou31  
       2022-06-13 16:11:26 +08:00
    函数和向量应该都是答案。

    用函数表示就是 y = kx+b 。训练过程就是找出这个 k 和 b 。而使用就是把 x 代入,得出 y 。

    用向量表示就是,训练过程就是找出[k,b]向量,使用就是使用[x]向量与[k,b]向量进行向量相乘,得出[y]向量。
    xilou31
        9
    xilou31  
       2022-06-13 16:12:58 +08:00
    说错了那个向量乘法应该是矩阵乘法。
    GrayXu
        10
    GrayXu  
       2022-06-13 19:43:37 +08:00
    1 前面答完了。
    2 训练需要大量计算的一个点是因为进行了**多次**迭代计算优化,包括前向和反向。对于使用者来说,只有**一次**前向计算过程。不过直接部署在移动终端上还有对 memory 的占用问题,这就是做量化、蒸馏等策略来压缩模型(参数)大小的地方。
    ttgo
        11
    ttgo  
       2022-06-13 19:49:50 +08:00
    y=ax+b 没有包含非线性!可能会出现些许误导。
    afutureus
        12
    afutureus  
       2022-06-14 01:39:40 +08:00 via iPhone
    概率空间的一个解。
    xidianwubo12138
        13
    xidianwubo12138  
       2022-07-15 15:06:23 +08:00
    一个大字典
    Yuhyeong
        14
    Yuhyeong  
       2022-10-18 21:47:27 +08:00
    1.最抽象的答案是:y=kx+b
    因为实际上存的就是极多个权重,共同构成一个“函数”。说白就是存储了一堆“k”,你可以设想多少个"k"(假设为 float32 )才能占用到 GB 级别

    2.因为很多不同结构的模型也可以得到一样的输出
    比如,y=k1x+b, 存在一个函数使 k1 在某个区间恒为 1 ,则可以将"k1"直接等价为 1 ,这样就可以一定程度上减少空间占用,迁移到其他平台。
    isSamle
        15
    isSamle  
       2023-11-27 11:47:49 +08:00
    数学模型吧,本质上可能是个 N 元 N 次方程组
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2819 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 13:17 PVG 21:17 LAX 06:17 JFK 09:17
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86