当前位置: 首页 > article >正文

从CPU龟速到GPU起飞:Ollama调用CUDA加速本地大模型实战

1. 从龟速到崩溃我的本地大模型初体验那天晚上我盯着屏幕上那个缓慢蠕动的进度条感觉时间都凝固了。事情是这样的我好不容易在本地电脑上部署了一个AI翻译工具想让它帮我处理一篇8页的科技论文。工具跑起来了模型也加载了但那个速度简直让人绝望。我泡了杯咖啡回来它才翻译了不到半页我刷了半小时手机进度堪忧最后整整40多分钟它才吭哧吭哧地完成这份“简单”的工作。这哪是AI啊这分明是老牛拉破车。作为一个有点经验的开发者我的第一反应就是“这不对劲”。本地模型再慢也不至于慢到这个地步。我顺手打开了任务管理器想看看资源占用情况。好家伙CPU那一栏直接飙到了100%红色的柱状图拉满了而旁边的GPU那个我花了不少钱买的独立显卡却安静得像在睡觉占用率几乎为0。问题一下子就清晰了这个叫Ollama的工具它压根就没调用我的GPU全靠CPU在那里硬算。这就好比你要运一车货明明有辆大卡车GPU停在车库你却非要用小推车CPU一趟一趟地搬效率能高才怪。这种纯CPU运行模式对于大语言模型这种计算密集型任务来说简直是灾难。模型的所有参数、每一层神经网络的计算都需要海量的矩阵运算。CPU虽然核心多擅长处理复杂的逻辑分支任务但面对这种简单粗暴但量级巨大的并行计算它的“宽车道”优势就没了反而暴露出单个核心算力有限的短板。而GPU天生就是为并行计算设计的拥有成千上万个更精简、更专注的计算核心处理矩阵乘法这类操作时就像一支训练有素的军队可以同时完成大量相同的工作效率呈指数级提升。不激活GPU就等于让模型自断一臂在泥泞中跋涉。所以我下定决心必须把这个“小推车”换成“大卡车”。目标很明确让Ollama调用CUDA把计算任务丢给GPU实现从“龟速”到“起飞”的转变。这个过程就是一个典型的问题排查与技术攻坚实战接下来我就把每一步的踩坑和填坑经历详细分享给你。2. 战前侦察确认你的显卡“有资格参战”在动手改装“卡车”之前你得先确认你的“卡车”是不是真的能拉货。不是所有显卡都能跑AI模型的这里有两个关键指标需要核查显卡型号本身是否支持CUDA计算以及它的计算能力是否达标。2.1 查看显卡型号与计算能力第一步先找到你的显卡型号。在Windows系统上很简单在“此电脑”上右键选择“管理”然后进入“设备管理器”展开“显示适配器”你就能看到你的显卡型号了。比如我的是“NVIDIA Quadro T1000”。记下这个型号。接下来我们需要知道这个显卡的“算力”也就是CUDA Compute Capability。这个值通常是一个小数点后一位的数字比如5.0、6.1、7.5等等。它代表了显卡硬件支持CUDA计算的能力等级。对于运行大多数主流的大语言模型尤其是7B参数及以上的算力最好不低于5.0。算力越高代表显卡架构越新能效和性能通常也越好。怎么查最权威的方法是去NVIDIA的官方网站查询对应显卡型号的计算能力。当然网上也有很多热心网友整理的表格。你可以搜索“NVIDIA GPU Compute Capability表”来快速查找。比如我的Quadro T1000对应的算力是7.5这完全足够甚至算是不错的水平。如果你的显卡是很老的型号查出来算力低于5.0那可能就无法很好地支持较新的CUDA版本和AI框架体验会大打折扣甚至无法运行。2.2 检查现有CUDA驱动版本确认显卡硬件达标后我们来看看软件环境。你需要检查系统里已经安装的NVIDIA显卡驱动版本以及它支持的CUDA版本。这里要用到一个非常重要的命令行工具nvidia-smi。打开你的命令行终端CMD或PowerShell直接输入nvidia-smi然后按回车。如果你看到了一个表格显示了显卡名称、温度、风扇转速、性能状态以及最关键的一行“CUDA Version: xx.x”那么恭喜你的驱动安装正常并且这个“CUDA Version”指的是你的驱动最高支持的CUDA运行时版本。比如我最初看到的是“CUDA Version: 10.1”。但是很多朋友在这一步可能会遇到一个经典的错误nvidia-smi 不是内部或外部命令也不是可运行的程序或批处理文件。别慌这99%是因为系统环境变量Path里没有包含nvidia-smi.exe这个程序的路径。它通常位于C:\Program Files\NVIDIA Corporation\NVSMI目录下。解决方法有两种临时解决直接打开文件资源管理器进入上述路径然后在上方的地址栏里输入“cmd”并按回车就会在当前目录打开命令行窗口此时再输入nvidia-smi就能成功执行。一劳永逸将C:\Program Files\NVIDIA Corporation\NVSMI这个路径添加到系统的环境变量Path中。具体步骤是系统设置 - 关于 - 高级系统设置 - 环境变量在“系统变量”里找到“Path”编辑新建一条把上面的路径粘贴进去即可。添加后需要重启命令行窗口才能生效。顺利执行nvidia-smi后记下显示的CUDA版本号比如10.1。这为我们下一步选择安装哪个版本的CUDA Toolkit提供了重要参考。3. 装备升级安装匹配的CUDA Toolkit看到nvidia-smi显示的CUDA版本比如10.1你可能会想“是不是我已经装了CUDA可以直接用了” 这里有一个非常重要的概念区分nvidia-smi显示的是驱动支持的CUDA最高版本而不是你已经安装的CUDA开发工具包CUDA Toolkit。通俗地讲显卡驱动就像卡车的“驾驶证”它规定了这辆车最高能开多快支持到CUDA 10.1。而CUDA Toolkit则是这辆卡车的“发动机改装套件”和“货运操作手册”里面包含了编译器nvcc、库文件等真正用于开发的工具。你光有驾驶证没有改装套件还是没法让卡车GPU去干专门的货运计算工作。所以我们需要单独安装CUDA Toolkit。3.1 下载正确版本的CUDA Toolkit打开NVIDIA官方的CUDA Toolkit归档页面。在这里你可以找到所有历史版本的CUDA Toolkit。为了最大程度保证兼容性我建议选择和你的驱动所支持版本相同或稍低的CUDA Toolkit版本。例如我的驱动显示支持10.1那么我就去下载CUDA Toolkit 10.1或者10.0。选择对应的操作系统Windows、架构通常是x86_64和安装类型推荐选择exe [local]本地安装包。下载完成后你会得到一个体积不小的安装程序。3.2 自定义安装与避坑指南运行安装程序当出现安装选项时强烈建议选择“自定义”安装。在组件选择页面你会看到很多选项。对于大多数只需要跑Ollama模型的用户来说为了节省空间和避免冲突可以取消勾选以下几项Visual Studio Integration除非你确定要用Visual Studio进行CUDA C开发否则不需要。Nsight Systems和Nsight Compute这是NVIDIA的性能分析工具对于初步使用来说非必需。其他组件特别是CUDA Runtime、开发库、驱动程序组件如果版本比现有驱动新可以选择不安装用现有的保持默认即可。然后一路下一步完成安装。这里有个常见的疑惑网上很多教程说安装CUDA Toolkit前需要先安装特定版本的Visual Studio。根据我的实测以及很多网友的反馈如果你不进行CUDA C原生开发仅仅是为了运行Ollama、PyTorch等框架那么完全不需要安装Visual Studio。我的电脑上就没有装VSCUDA Toolkit安装和后续使用都完全正常。这可以帮你省去一个非常庞大的软件安装过程。安装完成后我们需要验证CUDA Toolkit是否安装成功。再次打开命令行终端输入nvcc -V这个命令是调用CUDA的编译器来查看版本。如果安装成功你会看到类似“Cuda compilation tools, release 10.1, V10.1.105”这样的信息其中包含了详细的版本号。如果提示“不是内部或外部命令”请检查安装过程或者尝试重启电脑并确保安装CUDA Toolkit后其bin目录例如C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin已经被添加到了系统环境变量Path中安装程序通常会自动添加。4. 终极一击让Ollama认领你的GPU好了硬件确认了驱动和CUDA开发包也都装好了是不是打开Ollama就能自动加速了我一开始也是这么想的但现实给了我一盆冷水。我兴冲冲地重新运行我的翻译工具然后打开任务管理器——GPU使用率依然纹丝不动CPU再次满载。这说明Ollama并没有自动切换到GPU模式。经过一番研究和排查我发现了原因Ollama在首次安装和启动时会检测系统环境。如果当时检测不到可用的CUDA环境比如之前没装CUDA Toolkit它就会以“仅CPU”的模式完成初始化。之后即使你装好了CUDA它也不会自动改变这个运行模式。解决方法简单粗暴但极其有效重新安装Ollama。完全卸载现有Ollama。不仅仅是卸载程序最好也清理一下用户目录下的相关文件夹例如在Windows上C:\Users\你的用户名\.ollama。这样可以确保没有旧的配置残留。从Ollama官网下载最新版本的安装包重新安装。安装过程中安装程序会再次检测系统环境。此时因为CUDA Toolkit已经就绪它就能正确识别到可用的GPU并在内部配置为使用CUDA加速。安装完成后我们不需要做任何特殊配置。直接像以前一样通过命令行拉取并运行模型即可。为了验证GPU是否真的被调用我们可以使用Ollama自带的命令来查看模型运行状态。打开一个新的命令行窗口在运行你的AI应用比如翻译工具的同时执行ollama ps或者更直接地查看任务管理器中的“性能”选项卡选择你的GPU通常是GPU 0观察其“利用率”和“专用GPU内存”是否在模型运行时显著上升。当你看到GPU从“岁月静好”变成“努力干活”而CPU的负担大幅下降时那种感觉就像给老爷车换上了火箭发动机。5. 性能飞跃从理论到实践的震撼对比理论说得再多不如实际数据有说服力。让我来给你看看激活GPU前后性能到底有多大差距。激活GPU前纯CPU模式任务翻译一篇8页的科技论文PDFMathTranslate工具 Ollama Qwen2.5:7B模型。耗时约40-45分钟。资源占用CPU持续100%GPU利用率0%-1%。推算以此速度处理一份500页的报告预计需要(500 / 8) * 40 ≈ 2500分钟超过40个小时。激活GPU后CUDA加速模式任务翻译一份502页的科技报告同样的工具和模型。耗时总耗时约16小时即967分钟。资源占用CPU压力显著降低根据任务波动GPU利用率持续在高位70%-95%专用GPU内存被大量占用。性能提升对比纯CPU模式下推算的2500分钟实际耗时缩短了约60%这不仅仅是快了一点点而是将一件原本需要“跑一整天加一夜”才能完成的任务变成了“晚上开始第二天下午就能看完结果”的高效工作。这个对比非常直观。967分钟对比2500分钟这节省下来的1500多分钟就是GPU并行计算威力最直接的体现。你可能会问为什么不是几十倍的提升因为模型的运行并不仅仅是GPU计算还包括数据的前后处理读PDF、分词、文本拼接等、内存与显存之间的数据交换I/O这些环节仍然需要CPU参与并且可能成为瓶颈。但对于模型推理这个最耗时的核心部分GPU已经承担了绝大部分工作。6. 深度优化与常见问题排雷成功上车只是第一步想让这辆“卡车”跑得更稳、更快还需要一些调优和注意事项。6.1 模型参数与显存管理GPU加速虽好但显存GPU Memory是有限的宝贵资源。当你运行ollama run qwen2.5:7b时这个7B参数的模型会被加载到显存中。模型参数本身就会占用大量空间此外模型在计算时产生的中间变量激活值以及你输入的文本上下文也会消耗显存。如果你的任务因为显存不足OOM而失败可以尝试以下方法选择更小的模型例如从7B模型切换到3B或1.5B的版本。使用量化模型Ollama支持很多量化版本的模型如qwen2.5:7b-q4_K_M。量化通过降低模型权重的数值精度例如从32位浮点数降到4位整数来大幅减少模型体积和显存占用对生成质量的影响通常很小是性价比极高的选择。在拉取模型时直接指定量化版本即可。调整上下文长度通过--num-ctx参数限制模型一次处理的文本长度例如--num-ctx 2048。更短的上下文占用显存更少。6.2 多模型并发与性能监控Ollama可以同时服务多个模型实例。但请注意它们会共享同一块GPU的显存和计算资源。如果你需要同时运行多个AI应用务必监控显存使用情况避免爆显存。nvidia-smi命令可以实时查看显存占用。此外温度Temperature和重复惩罚Repeat Penalty等采样参数主要影响生成文本的质量和多样性对推理速度影响不大。速度的核心还是取决于模型大小、显卡算力和显存带宽。6.3 你可能遇到的“坑”与解决方案安装CUDA Toolkit后nvcc -V成功但Ollama仍用CPU这几乎可以肯定是Ollama缓存了旧的“仅CPU”配置。最彻底的解决方案就是卸载重装Ollama如前所述。运行模型时提示CUDA错误或版本不匹配这通常是因为你的PyTorch如果你的应用底层用了PyTorch或Ollama内置的推理库编译时所针对的CUDA版本与你系统安装的CUDA Toolkit版本不一致。确保你使用的AI框架或工具与系统CUDA版本兼容。对于Ollama来说使用官方版本通常能自动适配。显存足够却报OOM有时可能是内存碎片或软件冲突。尝试重启电脑或者关闭其他占用GPU的应用程序如游戏、视频渲染软件。性能提升不明显首先确认GPU确实被高占用。如果GPU占用率不高可能是任务本身不是计算密集型例如简单的文本I/O或者遇到了CPU端的数据预处理瓶颈。对于翻译、摘要这类任务GPU加速效果应该是非常显著的。折腾完这一整套看着原本需要漫长时间等待的任务现在飞速完成那种成就感是实实在在的。本地大模型的门槛很大程度上就卡在计算资源上。一次正确的环境配置就能把体验从“不可用”提升到“高效可用”。这个过程里最关键的其实就是耐心和细心确认显卡能力、安装对的驱动和工具包、最后让应用框架正确识别到GPU。希望我的这份踩坑实录能帮你顺利发动GPU这台“引擎”让你本地的AI应用真正飞起来。

相关文章:

从CPU龟速到GPU起飞:Ollama调用CUDA加速本地大模型实战

1. 从龟速到崩溃:我的本地大模型初体验 那天晚上,我盯着屏幕上那个缓慢蠕动的进度条,感觉时间都凝固了。事情是这样的,我好不容易在本地电脑上部署了一个AI翻译工具,想让它帮我处理一篇8页的科技论文。工具跑起来了&am…...

SG-TCP-Profibus (M) ModbusTCP 转 Profibus DP 网关:工业双协议无缝互联的高效解决方案

在工业自动化系统集成与升级中,ModbusTCP 与 Profibus DP 两大主流工业协议的设备互通,是产线组网、设备联动的核心痛点。SG-TCP-Profibus (M) ModbusTCP 转 Profibus DP 网关专为工业现场跨协议通信设计,以数据映射式工作实现两大协议的双向…...

SG-TCP-COE-210 Modbus TCP 转 CANOpen 网关:跨协议工业通信的无缝互联方案

在工业自动化系统组网中,Modbus TCP 与 CANOpen 两大协议的设备互通,是产线集成、设备联动的常见痛点。SG-TCP-COE-210 Modbus TCP 转 CANOpen 协议网关,专为工业现场跨协议通信设计,在 Modbus TCP 侧为从站、CANOpen 侧为主站&am…...

SG-HF40-IOL IO-Link 高频工业 RFID 读写器:工业自动化的智能识别核心

在工业 4.0 浪潮下,自动化生产线、智能物流、资产管理等场景对物品的自动识别、数据实时交互提出了更高要求。SG-HF40-IOL IO-Link 协议高频工业 RFID 读写器凭借工业级的硬件设计、灵活的工作模式、稳定的通信能力,成为破解工业现场智能识别难题的优质解…...

SG_HART_Mod HART 转 Modbus 网关:工业协议转换的高效解决方案

在工业自动化系统搭建与升级过程中,HART 协议智能仪表与 Modbus 控制系统的互联互通,是实现设备数据采集、远程监控的关键环节。但因协议不兼容形成的 “通信壁垒”,往往成为工业现场数据流转的痛点。SG_HART_Mod HART 转 Modbus 网关凭借专业…...

约束优化求解利器:从罚函数到乘子法的演进与实践

1. 约束优化:当你的目标遇到了“条条框框” 大家好,我是老张,在AI和算法这行摸爬滚打了十几年,今天想和大家聊聊一个听起来有点“硬核”,但实际上无处不在的技术话题——约束优化。咱们先别被名字吓到,我保…...

告别Visual Studio:在VSCode中搭建MSVC+CMake一体化C++开发与调试环境

1. 为什么我要从Visual Studio“搬家”到VSCode? 干了这么多年C开发,Visual Studio(VS)一直是我的主力“重型武器”。它功能强大,开箱即用,特别是对MSVC编译器和Windows平台的支持,可以说是亲儿…...

【实战指南】Arduino驱动土壤湿度传感器:从基础读取到智能灌溉

1. 从零开始:为什么你需要一个自动灌溉系统? 嘿,朋友们,我是老陈,一个在智能硬件和自动化领域折腾了十多年的“老创客”。今天我们不聊那些高大上的概念,就聊聊一个特别实际的问题:你养的花花草…...

Charge Pump Design: From Fundamentals to Advanced Applications in Modern Electronics

1. 电荷泵到底是什么?从“水桶接力”说起 如果你玩过水桶接力的游戏,那理解电荷泵就成功了一半。想象一下,你有两个水桶(电容)和一个水泵(开关)。第一个水桶从低处的水井(输入电源&a…...

STM32F4实战:从零搭建轻量级人脸识别门禁

1. 为什么选择STM32F4做你的第一个AI门禁? 大家好,我是老张,一个在嵌入式领域摸爬滚打了十多年的工程师。这些年,我见过太多朋友对AI、人脸识别这些“高大上”的技术望而却步,总觉得那是需要强大电脑或者昂贵开发板才能…...

CentOS7环境下Hive的完整部署与MySQL元数据配置实战

1. 环境准备:从零开始的基石搭建 大家好,我是老张,在数据平台这块摸爬滚打了十来年,今天咱们来聊聊怎么在CentOS7上把Hive给稳稳当当地装起来,并且把它的“大脑”——元数据,从自带的那个不太给力的Derby数…...

2.4G无线音频传输模块:高保真与低延迟的完美结合

1. 无线音频的“高速公路”:为什么是2.4G? 如果你最近在挑选无线麦克风、游戏耳机或者想给家里的音响系统“剪掉尾巴”,那你一定绕不开“2.4G”这个关键词。它听起来像个技术参数,但其实,它更像是一条为声音数据专门修…...

SystemC实战:深入解析sc_event与sc_event_finder在时序建模中的关键差异

1. 从一次仿真报错说起:为什么我的时钟敏感事件挂了? 最近在做一个RTL模块的SystemC建模,场景挺典型的,就是一个带有时钟输入的模块,需要在时钟上升沿触发一个SC_METHOD。我像往常一样,在模块的构造函数里写…...

VsCode高效编码:一键生成文件头部与函数注释的终极指南

1. 为什么你需要一个“注释生成器”? 我猜很多朋友刚开始写代码的时候,都和我一样,觉得注释这东西,可有可无。心里想着:“代码逻辑这么清晰,我自己看得懂不就行了?” 直到后来,我加入…...

on-chip-bus(二):DDR时序优化实战:如何利用多Bank与突发传输提升带宽?

1. 从“堵车”到“高速路”:理解DDR带宽瓶颈的本质 如果你玩过一些大型3D游戏,或者处理过超高清的视频素材,肯定对“卡顿”和“加载慢”深恶痛绝。很多时候,这口“锅”不能全甩给CPU或GPU,内存的“吞吐”能力——也就是…...

【机器学习】SAE稀疏自编码器:解码大模型黑箱的密钥

1. 大模型的黑箱困境与SAE的破局思路 不知道你有没有过这样的感觉,现在的大语言模型,比如GPT-4、Claude这些,能力是强得离谱,但总让人觉得心里没底。你问它一个问题,它给你一个精彩的回答,但你完全不知道这…...

Cesium三角网构建实战:从数据采集到Primitive渲染的性能优化

1. 从“点”到“面”:为什么三角网是三维地形的基石 大家好,我是老张,在三维GIS和可视化领域摸爬滚打了十来年,经手过不少智慧城市和数字孪生的项目。今天想和大家深入聊聊在Cesium里构建三角网这件事,尤其是怎么把它做…...

深入解析 TenantLineHandler:MyBatis Plus 多租户数据隔离实战指南

1. 多租户数据隔离:为什么你需要 TenantLineHandler? 如果你正在开发一个SaaS(软件即服务)应用,或者任何一个需要为不同客户(比如不同公司、不同部门)提供独立数据视图的系统,那你一…...

Python字符串魔法:黑客语(Leet)加密与解密实战

1. 什么是黑客语(Leet)?从网络文化到Python实战 你可能在一些电影里见过这样的场景:黑客高手在键盘上噼里啪啦一顿敲,屏幕上滚动着像“M4k3 G006l3 Y0ur H0m3p463!”这样的“天书”。这可不是乱码,这就是我…...

HIC测序数据生信分析——第三节,HIC数据挂载实战:ALLHiC与3D-DNA双路径解析

1. 从Hi-C数据到染色体:为什么需要“挂载”? 你好,我是老张,在基因组组装这个行当里摸爬滚打了十来年。今天咱们接着聊Hi-C数据分析的硬核实战部分——数据挂载。你可能已经完成了Hi-C数据的预处理,拿到了一堆比对好的…...

CCS编译报错:DSP2833x_Device.h文件缺失的排查与修复指南

1. 从“找不到头文件”说起:一个嵌入式新手的常见噩梦 如果你刚开始玩德州仪器(TI)的C2000系列DSP,尤其是经典的DSP28335、28334这些芯片,那你大概率绕不开一个开发环境:Code Composer Studio,也…...

【GESP】C++四级考试必备:异常处理机制实战解析

1. 异常处理:从“程序崩溃”到“优雅应对” 写C程序,最怕什么?我猜很多刚入门的朋友都会说:怕程序写着写着突然“崩了”。屏幕上弹出一个你看不懂的错误提示,然后整个程序就退出了,之前输入的数据、计算的结…...

深入解析CAN总线字节序:Motorola与Intel格式的实战对比

1. 从一次数据解析“翻车”说起:为什么字节序这么重要? 大家好,我是老张,在汽车电子和嵌入式领域摸爬滚打了十几年。今天想和大家聊聊一个看似基础,但实际项目中坑了无数工程师的“小”问题——CAN总线的字节序。你可能…...

CES 2026 的 Micro LED 真相:不是在拼亮度,而是在拼谁先把「抗突波」想清楚

在 CES 2026,Micro LED 已经正式走出「概念展示」阶段,开始进入可以卖、客户愿意买,但工程必须非常稳的产品化节奏。从展会讯号来看,方向非常明确:Samsung 展示的是可扩展的超大尺寸 Micro RGB 显示系统,不…...

告别账号切换折磨,让矩阵运营更轻松

做小红书矩阵运营的痛:运营10个、100个账号,每天反复切换登录、输密码,半天时间浪费在无效操作上;私信评论散在各后台,漏回慢回流失客源,还得熬夜守手机,苦不堪言。如果你也被这些问题折磨&…...

numpy.polyfit()与Stats.linregress()在最小二乘拟合中的性能差异与应用场景解析

1. 从“找规律”说起:为什么我们需要最小二乘拟合? 不知道你有没有过这样的经历?手头有一堆数据点,散乱地分布在坐标图上,你隐约觉得它们之间好像存在某种直线关系,但又没法用尺子画出一条完美的线穿过所有…...

从恢复余数法到非恢复余数法:Verilog除法器的核心算法实现与优化

1. 从手算到硬件:为什么除法器这么“难搞”? 很多刚接触数字电路设计的朋友,可能会觉得除法器和加法器、乘法器差不多,不就是个运算嘛,用Verilog写个“/”操作符不就完事了?我刚开始也是这么想的&#xff0…...

FPGA高速通信中Aurora64B/66B协议的性能优化与实战调优

1. 从“能用”到“好用”:Aurora 64B/66B协议性能调优的实战意义 如果你正在用FPGA做高速数据传输,比如板卡之间传图像、雷达数据,或者芯片之间跑海量计算中间结果,那你大概率听说过或者已经用上了Xilinx的Aurora 64B/66B IP核。很…...

微信小程序摇一摇功能实战:利用wx.onAccelerometerChange()实现趣味互动

1. 摇一摇功能,不只是“摇一摇” 说到微信小程序里的“摇一摇”,很多朋友第一反应可能就是微信自带的那个摇一摇找朋友或者摇歌曲的功能。其实,我们自己开发小程序,完全可以利用手机内置的传感器,做出各种各样好玩的“…...

Enhancing ImageNet Classification with Advanced Deep Convolutional Neural Networks

1. 从AlexNet到现代:ImageNet分类的进化之路 十年前,当AlexNet在ImageNet竞赛中一鸣惊人时,很多人可能还没意识到,那扇通往现代计算机视觉的大门被彻底撞开了。我记得当时读到那篇论文,最震撼我的不是它拿了冠军&#…...