尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Termux 机器学习环境搭建教程:30 分钟在手机上装好 scikit-learn 和 PyTorch
Termux 机器学习环境搭建教程30 分钟在手机上装好 scikit-learn 和 PyTorch【免费下载链接】termux-appTermux - a terminal emulator application for Android OS extendible by variety of packages.项目地址: https://gitcode.com/GitHub_Trending/te/termux-appTermux 是一个运行在 Android 上的终端模拟器兼 Linux 环境。本教程带你在手机上装齐 Python 机器学习全家桶NumPy、scikit-learn、PyTorch 都能直接安装小数据集离线训练也没有问题。全程 30 分钟左右不需要电脑。开始前先确认你的手机能不能跑装环境之前先看一眼硬件。机器学习吃内存内存不够时训练会直接卡死或被系统杀掉。CPU 架构最低要求跑 PyTorch 小模型的建议aarch64arm644GB 内存Android 7.06GB 内存以上Android 10arm32 位2GB 内存不建议多数数值库缺 32 位支持x86 / x86_644GB 内存可用但真机很少见查看自己设备架构uname -m输出aarch64就可以按本文操作。另外提醒一句Android 12 及以上会主动杀后台里进程数过多或占用 CPU 过高的应用Termux 官方 README 里也明确标注了这个限制长时间训练时留意一下手机后台策略。第一步Termux 基础环境搭建升级系统并安装 Python打开 Termux先更新软件源和已装包避免后续装包时报版本冲突pkg update pkg upgrade -y接着装 Python 和编译工具。clang和make是备胎某些科学计算库没有现成 wheel 时pip 会现场编译这时就需要它们。pkg install -y python python-dev clang make git pip install --upgrade pip setuptools wheel为什么要装python-dev它提供头文件缺了它pip install numpy这类会编译的包会在链接阶段失败。验证一下python --version pip --version配置 Termux 的 scikit-learn一次装齐 NumPy 和 SciPy经典机器学习库三件套可以一条命令装完依赖会自动解析pip install --no-cache-dir numpy scipy scikit-learn--no-cache-dir值得保留pip 默认把下载的 wheel 缓存在~/.cache/pip手机存储紧张时能省出几百 MB。装完跑一段最小验证代码不超过 10 行import numpy as np from sklearn.datasets import load_iris from sklearn.linear_model import LogisticRegression X, y load_iris(return_X_yTrue) model LogisticRegression().fit(X[:90], y[:90]) print(np.__version__, model.score(X[90:], y[90:]))能打印出 NumPy 版本号和 0.9 以上的准确率说明经典机器学习这条线已经通了。在 Termux 安装 PyTorch深度学习框架 CPU 版配置PyTorch 是 Termux 上最容易装成功的深度学习框架一条命令pip install --no-cache-dir torch torchvision两个预期要知道手机上没有 CUDAtorch.cuda.is_available()返回False属正常现象所有计算走 CPU。如果提示正在从源码编译而不是下载 wheel大概率是版本不匹配耐心等或者直接换低一个 minor 版本重装比等编译完更省事。验证张量和多线程是否工作import torch print(torch.__version__, torch.get_num_threads()) x torch.randn(4, 4) print(x x)get_num_threads()会告诉你有几个 CPU 核心参与运算。手机上核多但频率低这个数比想象中重要。在手机上离线训练模型内存、进程、存储三个坑训练前把数据放在本地目录不要依赖网络。整个流程按下面这张图走第一个坑是内存。批次大小从 256 开始往下试pip装好的库如果暂时不用del掉引用并及时gc。第二个坑是进程被杀Android 12 上如果训练中途出现Process completed (signal 9)多半是系统干的把 Termux 关掉省电优化再试。第三个坑是存储把外存挂进来放数据集termux-setup-storage ln -s ~/storage/shared/datasets ~/datasets最小训练示例随机数据只是为了验证训练-更新这条链路import torch, torch.nn as nn net nn.Sequential(nn.Linear(20, 32), nn.ReLU(), nn.Linear(32, 1), nn.Sigmoid()) opt torch.optim.Adam(net.parameters(), lr1e-3) for _ in range(50): opt.zero_grad() loss nn.BCELoss()(net(torch.randn(64, 20)), torch.rand(64, 1)) loss.backward(); opt.step() print(loss.item())手机 CPU 上这种规模跑 50 轮只要几秒到几十秒完全够用。Termux 深度学习实战把手机变成推理服务训练完或下载好模型后常见需求是让同一局域网的其他设备来调用。Flask 十几行就能搭起来from flask import Flask, request, jsonify import torch app Flask(__name__) app.post(/predict) def predict(): x torch.tensor(request.json[input], dtypetorch.float32) return jsonify({out: (x * 2).tolist()}) app.run(host0.0.0.0, port5000)pip install --no-cache-dir flask python server.py在 Termux 里用ifconfig找到wlan0的 IP另一台设备同网段访问http://IP:5000/predict即可。注意手机锁屏或省电模式下 Wi-Fi 可能断开测试时保持 Termux 在前台。想把模型塞进 App 而不是走 HTTP可以导出后再转移动端格式traced torch.jit.trace(net, torch.randn(1, 20)) traced.save(net.pt)TorchScript 权重可以进一步转 ONNX再用移动端推理运行时加载这条路线比直接跑 Python 服务更适合量产场景。常见报错与延伸资料现象处理办法pip install卡在 compiling确认pkg install clang make python-dev都装过等编译完或降一个库版本训练中途signal 9Android 12 杀进程关闭 Termux 的省电优化No space left on device清 pip 缓存、数据集挪到~/storage外存端口起不来确认host0.0.0.0且手机与客户端在同一 Wi-Fi延伸资料按用途找Termux 官方文档与 Package Management 页面pkg命令、源维护报错repository is under maintenance的官方解法都在这。termux-packages 仓库的包目录查 NumPy、SciPy、scikit-learn 在 Termux 软件源里的当前版本。PyTorch ExecuTorch 与 ONNX Runtime Mobile 文档手机侧推理部署的正经路线比跑完整 Python 框架更适合真机。scikit-learn 官方 User Guide数据划分、交叉验证的规范做法。本仓库内文档入口docs/en/index.md应用层源码在 app/src/main/java/com/termux/app/排查 Termux 本身行为时可以参考 README.md。最后三件落地建议都有明确收益训练与推理分离小数据集在手机上跑通后导出 TorchScript/ONNX 权重正式推理交给 App 端别在手机上长期跑 Python 服务。用torch.quantization做动态量化线性层为主的网络体积能压到 1/4 左右CPU 推理更快。数据集统一放~/datasets软链指向的外存~/.cache定期清理Termux 内部存储留给模型和日志。【免费下载链接】termux-appTermux - a terminal emulator application for Android OS extendible by variety of packages.项目地址: https://gitcode.com/GitHub_Trending/te/termux-app创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

一条命令用上3400+品牌图标:Simple Icons 开发者完整上手指南

一条命令用上3400+品牌图标:Simple Icons 开发者完整上手指南

一条命令用上3400品牌图标:Simple Icons 开发者完整上手指南 【免费下载链接】simple-icons SVG icons for popular brands 项目地址: https://gitcode.com/GitHub_Trending/si/simple-icons 客户明天要官网「合作伙伴」区的 8 个品牌 logo,你开始…

📅 2026/10/27 16:34:10
Generative AI for Beginners 第13课精讲:如何安全地构建生成式 AI 应用(威胁模型、安全测试与红队实战)

Generative AI for Beginners 第13课精讲:如何安全地构建生成式 AI 应用(威胁模型、安全测试与红队实战)

Generative AI for Beginners 第13课精讲:如何安全地构建生成式 AI 应用(威胁模型、安全测试与红队实战) 【免费下载链接】generative-ai-for-beginners 21 Lessons, Get Started Building with Generative AI 项目地址: https://gitcode.…

📅 2026/10/27 16:34:04
SpringBoot3+Vue3+MySQL全栈实战:构建科普网站完整项目

SpringBoot3+Vue3+MySQL全栈实战:构建科普网站完整项目

很多人学 Java 后端时都有一种感觉:SSM、Spring Boot 的基础用法都看懂了,MySQL 的增删改查也会写,Vue 的组件化开发也练过几个小页面,但一旦面对“做一个完整网站”这样的需求,还是会卡住——不知道项目结构怎么搭&am…

📅 2026/10/19 8:55:20
MORE NEWS

更多资讯

📰

text-to-CAD技术原理与工程落地:从自然语言生成STEP/URDF/DXF

1. 项目概述:当文字真的能“长出”三维模型最近在机械设计、机器人仿真和工业自动化圈子里,越来越多工程师开始问同一个问题:“能不能直接把‘一个直径80mm、高120mm的圆柱体,顶部中心开一个M6螺纹孔’这种描述,一键变…

📰

impeccable CLI:基于PRODUCT.md与WebAuthn的零配置浏览器扩展交付范式

1. “impeccable”不是工具名,而是开发者社区里一个正在成型的CLI文化符号 你最近在终端里敲 npx 命令时,有没有偶然看到过一行带 impeccable 的提示?比如 npx impeccable init ,或者某篇 PRODUCT.md 文档末尾写着“Built …

📰

t3code CLI:Web开发者跨端调试工具(Electron+iOS)

1. 项目概述:t3code 是什么,它解决的到底是什么问题?“t3code”这个名称在当前公开技术生态中并无官方定义——它不是 TypeScript 官方工具链的一部分,不是 Next.js 或 Vercel 推出的标准 CLI,也不属于任何主流开源组织…

📰

OpenMontage:面向AI视频生产的Agent原生编排平台

1. 项目概述:OpenMontage 是什么,它解决的到底是什么问题?OpenMontage 这个名字一出现,很多人第一反应是“这该不会又是另一个视频剪辑软件的开源复刻吧?”——其实恰恰相反。它不是 Premiere 的平替,也不是…

📰

自动排课系统实战:贪心+局部搜索实现课程表算法

简介:自动排课系统是一套面向学校教务人员与教育信息化学习者的课程表生成工具,核心目标是在教师时间冲突、教室资源分配等约束下自动产出合理课表。系统支持设置节数、主课与副科优先级、上午与下午课程数量以及晚自习安排,并借助遗传算法等…

📰

t3code:个人开发工作台的模板、片段与脚本实战

t3code 是我这两年一直在维护的个人开发基建项目,名字听起来像一个开源框架,其实它特别朴素。当时我刚换到一台新笔记本,重新配完环境之后发现自己每年都在重复同一套动作:新建项目时手敲一堆文件,写过的代码片段散落在…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬