尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

借助 AI 从 0 到 1 搭建图像对比服务(三):CLIP 特征提取——AI 帮我落地一个我压根没碰过的模型

借助 AI 从 0 到 1 搭建图像对比服务(三):CLIP 特征提取——AI 帮我落地一个我压根没碰过的模型 借助 AI 从 0 到 1 搭建图像对比服务三CLIP 特征提取——AI 帮我落地一个我压根没碰过的模型一、场景怎么让机器看懂一张图上一篇方案定下来了四只眼睛的骨架有了。这一篇开始我们进入第一只眼睛——让机器像人一样看懂图判断两张图内容像不像。这步要用到的东西叫 CLIP。说实话这词我之前只在网上扫过几眼从没碰过更别提落地了。但这次我心里有底因为我打算用前面说过的AI话术先让 AI 把它讲成人话再让它给代码我自己验收。这一整篇就是这个过程的实录。二、先让 AI 把 CLIP 讲成人话我没急着让它写代码第一句话是问这是啥、为啥能比图。我要做图像相似度对比你建议用 CLIP。 但你先别写代码。先用人话给我讲清楚 1. CLIP 到底是个啥它怎么做到看懂图的 2. 为什么它能判断两张图像不像 3. 我这个场景中文、工业图该用哪个版本 我要先听懂再动手。AI 给我的解释我翻译一下大意CLIP 干的事就是把图变成一串数字。同一张图不管你怎么旋转、缩放只要内容没变变出来的数字就接近。两张图内容像不像比这两串数字离得近不近就行——离得近就是像离得远就是不像。它还补了一句关键的话这串数字代表的是内容的意思不是像素长什么样。所以一只猫的图和一张猫的简笔画数字也会比较近——因为意思都是猫。这正是我想要的我要比的是内容像不像不是像素一模一样。我把这段话复述给自己听——“把图变成一串代表意思的数字比数字远近”通了。这就是第一关先把原理验收过再往下走。关于版本它建议用 ChineseCLIP中文版的 CLIP因为我的场景是中文工业图中文版对中文场景理解更准。我采纳了。三、给 AI 的指令让它一步步落地原理过了我开始让它落地。但我不让它一次吐一坨而是逼它一步步来每步先说在干啥现在落地 CLIP 特征提取。约束 - 用 ChineseCLIPModelScope 的 - 每一步先讲你要干啥、为啥这么干再给代码 - 图片输入是网址不是本地文件 分这几步给我 1. 加载模型 2. 把图预处理成模型能吃的样子 3. 提取特征那串数字 4. 算两张图的相似度你看我又是先把规矩砸给它讲清楚每步在干啥、用哪个版本、输入是网址。这就是约束前置。四、AI 的产出 我的验收四个步骤AI 按四步给了东西我一步一步验收。其中有两个地方我卡过正好拿出来讲。第 1 步加载模型这步没太多花样就是把 ChineseCLIP 的模型本体和处理器加载进来。处理器是干啥的AI 说模型只认它自己习惯的输入格式处理器就是负责把图翻译成模型能吃的样子。第 2 步图片预处理这步它干了三件事先检查图能不能用质量校验烂图直接报错再把图缩放到模型要的尺寸Resize最后交给处理器转成模型要的格式。第 3 步提取特征这步就是真正把图变成一串数字那一下调用模型的一个方法get_image_features拿到那串数字。第 4 步算相似度这里我卡过这一步 AI 给我抛了个我不懂的东西归一化。它说算相似度之前要先把那串数字归一化一下。我第一次见这词没敢直接用。我让它讲等等归一化是啥为什么要这一步不归一化会怎样先讲人话。AI 给的解释大意是每张图变出来的那串数字长短可能不一样。如果不归一化你比的不是方向像不像而是谁的数字长这不公平。归一化就是把每串数字都拉成一样长这样比的就是方向方向近才是真的像。我拿个比喻复述给自己听两根箭头比它们指的方向像不像得先把它们都拉成一样长再比不然长的那根永远占便宜。通了。这就是第二个关键点遇到不懂的词立刻停下来让它讲人话复述通了再继续。我没跳过归一化直接用要是跳了后面相似度算出来不对我都不知道哪儿出的问题。五、踩的坑相似度到底用哪个算法算这里还有一个坑。算两串数字离得多近AI 一开始给了三种算法让我选余弦相似度cosine、欧氏距离L2、点积dot。我又不懂这三个该选哪个。我让它给我讲区别这三种相似度算法在我的场景里该选哪个为什么 分别讲一下它们在比什么、有啥区别。别只给结论。AI 给的解释大意是cosine 比的是方向L2 比的是绝对距离dot 既受方向影响也受长度影响。我的场景已经归一化了长度都一样了那 dot 和 cosine 就等价了L2 也能用但归一化后 cosine 更直观、范围固定在 -1 到 1。最后我让它默认用 cosine同时把三种都留着万一以后要换。这个决策不是我拍脑袋是听完解释后做的判断。六、小结AI 在陌生技术落地上的能力到这一篇结束CLIP 这块跑通了。我对 AI 在落地陌生技术这个环节的能力心里有数了它特别会把黑话讲成人话归一化、相似度算法这些词它都能用比喻讲明白。这是我用它最值钱的一招——遇到不懂的词立刻停下来让它讲不要跳。它不会替你判断该选哪个三种相似度算法它会列给你但选哪个它只能给建议决定得你来。你得听完解释自己做主。你得愿意反向审它每一步它讲完我都复述给自己听通了才往下走。这一步偷懒后面全是雷。说白了CLIP 这块从头到尾我没写过任何代码但我全程都懂在干嘛。这就是上一章说的那句话落地了AI 把门槛从我得先学会写降到了我得能判断对不对。七、下篇预告CLIP 这只眼睛能看内容像不像了。下一篇我们进第二只眼睛——照片的出生证EXIF。
返回列表