新闻详情

新闻详情

首页 / 资讯中心 / 详情

猫狗检测数据集实战:4300张YOLO宠物识别训练全攻略

发布时间:2026/9/30 10:04:32来源:尧图网络
猫狗检测数据集实战:4300张YOLO宠物识别训练全攻略
说实话一开始接触这套“猫狗检测数据集 | 4300张YOLO宠物识别数据集”的时候我其实是带着点怀疑的。之前做过几个目标检测项目数据集动辄上万张4300张能折腾出什么效果但真正跑完一轮训练、部署到实际场景之后我发现这个规模的数据集在宠物识别方向上反而有一种“刚刚好”的微妙平衡——不会大到让你在数据清洗上耗费太多时间也不会小到让YOLO完全学不到东西。这篇文章我就围绕这套数据集把YOLO宠物识别的数据标注、训练配置、模型评估和踩坑经验完整拆开讲清楚给正在做猫狗检测、宠物识别相关需求的朋友一份可以直接参考的实战笔记。1. 思路拆解为什么宠物识别必须落到目标检测上1.1 从分类到检测宠物识别场景的真实痛点很多刚接触宠物识别的朋友第一个想法是“我直接用图像分类不就行了判断一张图里是猫还是狗”。这个思路在最简单的场景下是成立的比如你拿一张干净的正脸图丢给ResNet它确实能告诉你这是猫还是狗。但等你真正把相机架在喂食器前面、宠物自动门旁边、或者猫狗医院的候诊区问题就立刻暴露了宠物不是“一张图一个人”它们会来回走动、会重叠、会背对镜头、体型大小差距极大。分类模型只能输出一个全局结果它根本回答不了“画面里到底有几个人”和“这几只宠物分别出现在什么位置”这两个关键问题。这个时候就必须上目标检测。目标检测做的事是“定位”加“分类”双任务先用一个边界框bounding box把画面里的每个目标框出来再对框内的目标做类别判断。哪怕画面里同时出现两只猫和一只狗检测模型也能把它们分别标记出来。这个能力在实际项目里是刚需自动喂食器要知道猫在食盆附近才出粮宠物医院的分诊系统需要统计画面里的动物数量流浪动物监测设备需要知道猫狗的活动范围和时段。没有位置信息的“识别”在这些场景里基本等于没有识别。所以这套猫狗检测数据集的价值不在于它教会模型“猫长什么样”而在于它给模型提供了“猫在哪里、狗在哪里”的监督信号。4300张带框标注的图像配合YOLO这种单阶段检测网络就能训练出一个具备定位能力的宠物识别模型这才是它和普通图像分类数据集本质上的区别。1.2 4300张数据集的构成与设计思路拿到数据先别急着训练第一步是弄清楚数据集到底长什么样。我手里的这套猫狗检测数据集一共4300张图像类别是标准的cat和dog两类。从分布上看猫和狗的样本量基本均衡没有出现某一类占80%导致模型严重偏科的情况。图像来源覆盖了几个典型场景室内家庭环境沙发、地板、猫爬架、户外场景草地、街道、公园、多宠物同框、部分遮挡状态以及不同光照条件下的画面。这种场景多样性比单纯堆数量重要得多。在划分上我按约8:1:1的比例拆成了训练集、验证集和测试集相当于训练集约3450张验证集约430张测试集约420张。这里有一个经验验证集和测试集一定要从不同场景的图像里抽样而不是简单随机切分。比如家里拍摄的猫、户外拍摄的猫、黑暗环境下的猫三类场景在三个集合里都应该有覆盖。否则测试集跟训练集长得太像mAP结果会虚高一到真实环境就露馅。那4300张到底够不够要分情况说。如果你是做“宠物在画面里占主体、光线正常”的常规场景这个量级配合预训练权重完全够用。YOLO系列本身就带着在COCO上预训练过的权重你在这个基础上做微调fine-tune模型对通用物体特征的提取能力已经很强宠物识别只需要在顶层特征上做一些适配。但如果你是做“从10米外的监控画面里识别一只巴掌大的小猫”那4300张就明显不够需要做切片、放大和针对性增强。这个我们放到常见问题部分再展开。1.3 为什么选YOLO而不选Faster R-CNN或SSD数据集定了之后模型选型是个绕不开的问题。现在目标检测的生态里主流选择无非是YOLO系列、Faster R-CNN为代表的二阶段检测器以及SSD这种早期单阶段方案。我在这套数据集上最终选了YOLOv8理由很直接也很务实。第一是速度。宠物识别大量部署在边缘设备上比如树莓派接摄像头、Jetson Nano、甚至是手机端。Faster R-CNN的检测精度确实曾经有优势但它的两阶段结构先区域提议再逐框分类导致推理速度很难在低算力设备上跑起来一帧画面动辄几百毫秒做实时监控根本吃不消。YOLO主打单阶段检测一次前向传播直接输出边界框和类别速度和精度的平衡点对边缘部署友好得多。第二是生态。YOLO从v5到v8社区积累了大量教程、预训练权重和部署工具链。遇到问题搜一下就有解决方案训练脚本、ONNX导出、TensorRT加速都有成熟路径。Faster R-CNN在MMDetection里也能做但配置复杂度相对高对新手和半路出家的开发者并不友好。SSD则是另一个方向的问题它的设计理念比较早对小目标检测能力偏弱而且近年来的更新迭代基本停滞。做宠物识别场景SSD并不占优势所以就我个人而言在猫狗检测这个需求上YOLOv8是目前最省心的方案。2. 数据准备YOLO标注格式与质量控制2.1 一张图和一个txt的对应关系YOLO的训练格式不算复杂但细节上容易出错先把它彻底讲明白。YOLO的数据标注不是用一个JSON文件挂在整张图上而是遵循“一张图像对应一个同名txt文件”的原则。假设一张图叫0001.jpg那么它的标签就是同目录下的0001.txt注意是.txt不是其他扩展名。txt文件里每一行代表一个目标框一共5个数格式是class_id x_center y_center width height其中class_id是类别编号从0开始我这套数据集里0代表cat1代表dog。后面四个数全都是归一化坐标归一化到0到1之间。x_center是目标中心点的横坐标占图片宽度的比例y_center是中心点的纵坐标占图片高度的比例width和height是边界框的宽度和高度占图片宽度的比例和占图片高度的比例。举个例子一张分辨率是1920×1080的图片一只猫的目标框左上角在(480, 270)右下角在(960, 810)那这个框的中心点就是((480960)/2, (270810)/2) (720, 540)宽高分别是480和540。归一化后就是0 0.375 0.5 0.25 0.5为什么要做归一化因为模型在训练时输入图像会被resize到固定尺寸比如640×640归一化后的坐标不会因为图像缩放而改变相对位置关系这也是YOLO训练能够接受不同输入分辨率的基础。如果直接填像素坐标一旦图像缩放标注就全部错位这也是不少新手训练效果差的第一大原因。2.2 目录结构images/labels与train/val/test划分标注文件准备好之后还需要按固定的目录结构把数据组织好。YOLOv8的标准数据目录组织方式如下cat-dog-dataset/ ├── images/ │ ├── train/ │ ├── val/ │ └── test/ └── labels/ ├── train/ ├── val/ └── test/images目录下放原始图像labels目录下放对应的txt标注文件两个目录里的文件名必须一一对应。我用下面这个Python脚本按8:1:1比例随机划分数据集同时保证图像和标签文件成对移动import os import random from pathlib import Path IMG_DIR Path(images_raw) # 原始图像目录 LBL_DIR Path(labels_raw) # 原始标签目录与图像同名txt OUT_IMG Path(dataset/images) OUT_LBL Path(dataset/labels) for split in [train, val, test]: (OUT_IMG / split).mkdir(parentsTrue, exist_okTrue) (OUT_LBL / split).mkdir(parentsTrue, exist_okTrue) images sorted(IMG_DIR.glob(*.jpg)) random.seed(42) random.shuffle(images) n len(images) train_end int(n * 0.8) val_end int(n * 0.9) splits { train: images[:train_end], val: images[train_end:val_end], test: images[val_end:], } for split, im_list in splits.items(): for img in im_list: lbl LBL_DIR / (img.stem .txt) if not lbl.exists(): print(f[Warning] missing label: {img.name}) continue os.rename(img, OUT_IMG / split / img.name) os.rename(lbl, OUT_LBL / split / lbl.name) print(ftrain{len(splits[train])} val{len(splits[val])} test{len(splits[test])})这里我特别设置random.seed(42)保证每次运行得到相同的划分结果方便复现实验。另外脚本会在标签缺失时打出警告避免把没有标注的图像混进训练集。2.3 标注质量检查清单标注文件不是生成完就万事大吉质量检查是区分“能用”和“好用”的关键一步。4300张图说起来不多但逐张人工检查也不现实我的做法是用一段脚本做自动初筛再抽检一部分重点确认。检查点主要有这么几个空标签文件txt文件存在但里面一行都没有这种文件会让训练时损失计算出现异常发现后直接删除对应的图像和txt。坐标越界归一化坐标按理说应该在0到1之间出现大于1或者小于0的值多半是标注工具导出时出了bug这类坏标注会让模型学到错误的边界。类别编号越界比如明明只有0和1两个类别txt里却出现了2这会导致训练直接报错或类别错乱。宽高为0边界框宽度或高度是0通常是标注时误操作拉出来的点属于无效框。大量重复图像有些数据集制作时会混入连拍截图画面几乎一样的图重复出现会让验证集和训练集严重重叠导致评估虚高。我整理了一个简单的检查脚本片段可以直接复用from pathlib import Path def validate_labels(lbl_dir: Path): bad [] for lbl in lbl_dir.glob(*.txt): lines [l.strip() for l in lbl.read_text().splitlines() if l.strip()] if not lines: bad.append((lbl.name, empty)) continue for i, line in enumerate(lines): parts line.split() if len(parts) ! 5: bad.append((lbl.name, fline {i}: not 5 fields)) continue cls, xc, yc, w, h parts try: cls int(cls) xc, yc, w, h float(xc), float(yc), float(w), float(h) except ValueError: bad.append((lbl.name, fline {i}: not float)) continue if not (0 cls 2): bad.append((lbl.name, fline {i}: bad class)) if not (0 xc 1 and 0 yc 1 and 0 w 1 and 0 h 1): bad.append((lbl.name, fline {i}: out of range)) return bad检查出的可疑文件优先用LabelImg或Roboflow之类工具打开确认修掉真问题而不是直接删。数据集的构建过程里“剔坏”和“修坏”是两码事直接删会减少有效样本能修的一定要修。3. 实操过程用YOLOv8跑通猫狗检测训练3.1 环境准备与依赖安装环境配置这一步其实没什么玄学就是一个坑版本要对应。我这套方案用的是Python 3.10 PyTorch 2.x Ultralytics YOLOv8。如果电脑有NVIDIA显卡先装好CUDA和cuDNN然后在虚拟环境里执行pip install ultralytics torch torchvision --index-url https://download.pytorch.org/whl/cu118没有GPU也可以跑YOLOv8s在CPU上训练会慢很多但并非不能跑。我建议至少有一个支持CUDA的显卡显存8G起步否则batch size会受限直接影响训练稳定性。安装完成后用yolo --version验证一下。这里有个经验不要图省事直接用pip install ultralytics装最新版不带版本锁定。因为YOLOv8迭代很快不同版本之间API可能有细微变动如果你后面要复现别人的教程版本不一致会导致参数对不上。建议安装时锁定一个具体版本比如pip install ultralytics8.1.0这样后续查问题、跑实验都能保证环境可复现。3.2 编写数据集配置文件与模型选型YOLOv8用yaml文件描述数据集信息内容非常简洁。我的是这样写的# catdog.yaml path: /home/user/cat-dog-dataset train: images/train val: images/val test: images/test nc: 2 names: [cat, dog]path是数据集根目录的绝对路径train和val是相对于根目录的训练和验证图像目录nc是类别数names列表要和标注文件里的class_id一一对应。写完之后用yolo detect train datacatdog.yaml ...指定这个文件就行。模型选型上YOLOv8提供n/s/m/l/x几个规模版本简单解释一下区别模型版本参数量推理速度相对精度相对适用场景YOLOv8n约320万最快最低边缘设备、实时性优先YOLOv8s约1110万快中低常规边缘部署YOLOv8m约2590万中等中高服务器端实时检测YOLOv8l/x4360万/6820万慢高离线分析、高精度需求对猫狗检测这种相对简单的任务我建议从YOLOv8s起步。v8n虽然更快但对小目标的敏感度偏低宠物在画面比较远的时候容易漏检v8m以上在4300张的小数据集上容易过拟合而且推理速度对边缘设备的压力更大。YOLOv8s是精度和速度的平衡点最适合作为第一版基线。3.3 训练参数详解与训练命令数据集和配置文件都准备好之后训练命令其实很短yolo detect train \ modelyolov8s.pt \ datacatdog.yaml \ epochs100 \ imgsz640 \ batch16 \ lr00.01 \ patience20 \ projectruns/detect \ namecatdog_v8s我逐个解释一下这些参数因为它们直接影响训练效果。modelyolov8s.pt表示加载COCO预训练权重。这个细节很关键——从零训练和微调收敛速度差距极大。预训练权重让模型已经知道“边缘、纹理、物体形状”这些通用特征我们只需要在宠物特征上做适配通常几十个epoch就能看到不错的收敛。epochs100是训练轮数。4300张图片不算多100轮足够。配合patience20开启早停机制如果连续20轮验证集mAP没有提升训练会自动终止节省时间。imgsz640是输入分辨率。YOLOv8在推理时会缩放图像到640×640训练时也会以这个分辨率作为基准做多尺度训练。想提升小目标检测能力可以把imgsz提到960或1280但显存占用和训练时间会显著增加。batch16是批次大小。很多人会忽略它对训练稳定性的影响实际上batch太小比如2、4会让BNBatch Normalization层的统计量剧烈抖动导致训练loss曲线像心电图——这个问题我们后面专门说。lr00.01是初始学习率。配合COSINE学习率调度器YOLOv8默认能在训练后期把学习率降下来让模型收敛得更稳。执行完命令后训练日志会实时打印每一轮的box_loss、cls_loss、dfl_loss和验证集的mAP50等指标。正常情况下你会看到loss逐步下降mAP逐步上升到某个拐点后趋于平稳。如果训练过程中mAP50震荡剧烈且不上升通常说明数据有问题或者超参数设置不合理不要盲目等待100轮跑完先停下来排查。3.4 训练结果评估训练结束后YOLOv8会在runs/detect/catdog_v8s/下生成一系列评估文件包括混淆矩阵、PR曲线、F1曲线、验证集预测可视化图等。这些文件不是给你看的装饰品它们信息量极大。首先要看的是results.png里的验证集mAP曲线。我在这套数据集上训练YOLOv8s最终结果大致是mAP50在0.95左右mAP50-95在0.82左右。这个水平是什么概念呢mAP50衡量的是“预测框与真实框的IoU大于0.5算命中”时的平均精度0.95说明绝大部分宠物都被正确定位并分类了mAP50-95把IoU阈值从0.5到0.95逐步提高后求平均它更严格也更能反映框的定位精度。如果你的mAP50-95明显偏低而mAP50很高说明模型能找到目标但框得太松需要关注标注质量或调高定位权重。其次是混淆矩阵confusion_matrix.png。在二分类宠物检测里这张图应该显示cat和dog两类的高对角响应同时背景列应该很低。如果看到某个类别大量被误检成背景说明该类样本的特征没有被充分学习优先检查该类别的样本量、遮挡情况和标注完整性。我还会做一件事——挑几张测试集图片手动跑一次预测看看框的贴合度yolo predict \ modelruns/detect/catdog_v8s/weights/best.pt \ source/path/to/your/test_images \ conf0.25conf0.25是置信度阈值低于这个阈值的框会被过滤。这个值在实际部署中需要按场景调误报代价高就调高一点漏检代价高就调低一点。在宠物自动喂食器场景里我通常用0.3左右比较稳。4. 常见问题与排查技巧实录4.1 猫狗重叠时漏检怎么办宠物同框是非常常见的场景两只猫在沙发里挤成一团、猫狗在同一个画面里追逐打闹检测器经常只输出一个框甚至漏掉其中一只。原因有两层一是模型在NMS非极大值抑制阶段会把两个高度重叠的框判定为同一个目标只保留置信度高的那个二是训练数据里重叠场景的样本太少模型没见过“两只猫叠在一起长什么样”。解决办法第一个是标注质量的修正。重叠目标在标注时边界框相互遮挡是正常的但一定要保证每个可见的目标都有框不能因为遮挡就忽略那只露出半个头的猫。第二个是数据增强YOLOv8的mosaic增强会随机拼接4张图一定程度上能模拟拥挤场景但针对性不够。更直接的做法是找一些多宠物同框的图单独补充进训练集并适当调低NMS的IoU阈值默认iou0.5或0.7让两个重叠度稍高的框更容易被同时保留。如果只是推理阶段漏检可以考虑降低置信度阈值。漏检一只猫比把它误检成狗代价更高的时候conf从0.25降到0.15也是值得的代价是背景误检会多一点。4.2 小目标远处宠物检测效果差摄像头装在房间里拍摄大多数时候宠物离镜头很近目标框很大。一旦把场景延伸到院子里、楼道里宠物在画面里的尺寸就会骤缩到几十个像素甚至更小检测难度直线上升。YOLOv8本身对小目标的敏感度就一般4300张数据里大量是大尺寸目标模型很容易对大目标过拟合。我踩过最明显的坑就是直接在640分辨率上训练“看远处宠物”的模型结果mAP看着还行但实际部署中隔了3米就检测不到。后来做了两步调整。第一步是把训练分辨率从640提到960相当于把远处的小目标在输入层面放大模型能获得更多细节。第二步是对训练数据做切片tiling把大图切成若干小块让小目标在切块里变成“大目标”再训练模型。切片的思路跟SAHISlicing Aided Hyper Inference类似推理时也把大图切片后再合并结果。说实话如果小目标场景是你的核心需求4300张是不够的优先补充不同距离下的宠物样本让模型见过“远处的猫”到底是什么样子。4.3 训练不收敛或BN崩溃训练过程中最让人抓狂的情况是loss不降反升或者直接变成NaN。这里面有一个高频原因就是Batch Size太小导致Batch Normalization崩掉。YOLOv8默认开启了BN层BN的统计量依赖batch内样本的均值和方差。如果batch size只有1或者2统计量波动极端loss曲线就会剧烈震荡严重时梯度爆炸loss变成NaN。我的排查顺序是先看batch size是否小于8。如果小于8要么加大batch要么关闭BN但YOLOv8里关闭BN比较复杂一般不推荐要么降低输入分辨率来腾出显存把batch加上去。其次是看学习率是否过大。lr00.01是默认值在大多数情况适用但如果数据集很小、batch又小这个学习率偏大可以尝试降到0.001。另外有一个细节预训练权重的BN统计量是针对COCO大类别学习的微调时如果新数据集类别数少、背景差异大前几个epoch的loss波动是正常的给模型一点时间适应别一看到loss上涨就慌。4.4 过拟合与泛化差的交界小数据集最大的敌人就是过拟合。训练集loss一路下降验证集loss却在某个epoch后开始回升这就是教科书式的过拟合信号。我在这套数据集上把epochs拉到200跑过一次结果150轮之后验证集的mAP不再提高训练集却几乎完美拟合这就是典型的浪费时间。推荐做法是开着patience让它自己停同时把训练集的数据增强打开。YOLOv8默认启用了mosaic、random_perspective、hsv增强、flip等这些增强能在不增加数据量的情况下大幅扩充样本多样性。如果过拟合依然严重可以把mosaic1.0保持mosaic对收敛很有帮助但训练后期会干扰小目标可以考虑在最后10轮关掉再适当增大weight_decay默认0.0005可以调到0.001来抑制权重过大。更有效的一招是收集少量真实场景数据加入训练集哪怕只有一两百张对泛化能力的提升都远大于强行做数据增强。模型见过和你部署环境相似的样本比什么都管用。4.5 常见问题速查表把这节的问题整理成速查表方便对照排查现象可能原因优先处理方式mAP高但实际漏检多训练集与测试集场景重叠度高补充真实场景样本降低conf阈值猫狗重叠只出一个框NMS抑制、遮挡样本不足检查重叠标注、增加重叠样本、调低iou阈值小目标全部漏检训练分辨率低、小目标样本少提高imgsz到960、使用切片训练检测loss震荡不收敛batch过小、lr过大提高batch到16以上lr降至0.001验证集loss回弹过拟合提前停止、增强数据增强、加大weight_decay预测结果错把猫当狗相似角度特征混淆、标注错误检查混淆矩阵对应类别、清洗标注5. 从数据集到落地的扩展思考5.1 模型导出与轻量化部署训练完的模型是PyTorch权重实际部署前必须做转换。最常见的是导出ONNX然后根据硬件选择运行时。YOLOv8导出非常简单yolo export modelruns/detect/catdog_v8s/weights/best.pt formatonnx opset12导出后再用ONNX Runtime推理或者进一步转成TensorRT的engine格式在NVIDIA显卡上加速。如果目标是树莓派、Jetson Nano这类低算力设备推荐导出成TensorRT的FP16精度推理速度能比Python直接跑PyTorch快好几倍。我自己的经验是部署时不要直接拿best.pt而是先看它和last.pt在测试集上的差别。YOLOv8在断点续训时last.pt是最后一个epoch的权重best.pt是验证集表现最好的权重。在验证集上最好不等于在实际场景中最好我习惯在导出前多跑几个真实场景测试再决定用哪个权重。5.2 宠物识别后续还能做什么4300张的猫狗检测数据集只是一个起点它最大的价值是可以当作“数据基座”在上面延伸出更多方向。比如把类别从cat/dog改成品种级别——把“猫”细分为英短、美短、橘猫、布偶等就变成一个更细粒度的宠物品种识别项目可以用来做宠物走失寻回或医院分诊。也可以通过检测到的宠物区域进一步裁剪出目标图像喂给分类网络做行为分析——宠物是在睡觉、活动还是异常静止这对接入智能监控系统很有意义。在数据层面这套标注同样可以迁移到多模态方向。检测框本身提供了位置监督下一步可以结合音频做猫叫、狗叫的声学识别再和视觉检测结果做交叉验证判断是哪只宠物在叫。做这些扩展时已有的检测模型可以承担前端定位任务后续模型专注在框内做二次分析整个链条的能力边界一下就打开了。这也是我喜欢拿一套质量可靠的小数据集做起步的原因它不会让你陷入无休止的数据工程而是能快速验证想法、跑通链路后续再按需扩充数据。最后再分享一个我个人的习惯每次训练都会在最开始就把随机种子固定好把所有参数记在一个markdown文件里包括数据划分的seed、训练命令、验证集mAP、测试集实测结果。新数据集、新场景迭代到后面你会发现这些记录比任何文档都有价值也是你能快速复制训练流程、精确对比不同版本效果不被玄学干扰的关键。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

HTTP协议在局域网自建Rocky9.2 yum源:repodata到客户端接入 2026/9/30 10:44:47

HTTP协议在局域网自建Rocky9.2 yum源:repodata到客户端接入

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
分布式锁与乐观锁:从Redis主从丢锁到库存超卖兜底方案 2026/9/30 10:44:47

分布式锁与乐观锁:从Redis主从丢锁到库存超卖兜底方案

1. 从一次线上超卖说起:分布式锁不是数据安全的万能钥匙做秒杀系统那一年,我踩过一个特别典型的坑:Redis分布式锁加了,流量也扛住了,但线上还是出现了超卖。一开始我怀疑是库存扣减并发写错了,后来查日志、…

阅读更多 →
Java Web学生成绩管理系统实战部署指南 2026/9/30 10:44:47

Java Web学生成绩管理系统实战部署指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
基于SpringBoot+Vue的工会管理系统毕业设计全流程指南 2026/9/30 10:44:47

基于SpringBoot+Vue的工会管理系统毕业设计全流程指南

每年到这个节点,实验室里的空气都开始变得焦灼。大三的同学盯着学院发下来的毕业设计选题表,左滑右滑,表情和刷相亲软件差不多:一半觉得"这也太简单了",另一半觉得"这题能行吗"。尤其是"XX管…

阅读更多 →
Mapbox快速上手:理解矢量瓦片与自定义样式,构建你的第一张交互地图 2026/9/30 10:44:47

Mapbox快速上手:理解矢量瓦片与自定义样式,构建你的第一张交互地图

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
MiniCPM5 2B 开源 这次 2B 真挤进了 4B 赛道 2026/9/30 10:44:40

MiniCPM5 2B 开源 这次 2B 真挤进了 4B 赛道

仓库修复比单题编程麻烦得多。模型要读 issue 和报错日志,在目录里找到相关文件,理解函数之间的调用关系,写完补丁还要跑测试。任何一步偏离目标,后面的操作都会跟着出错。MiniCPM5-2B 在 SWE-bench Verified 上修复了 46.4% 的测…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉