问题标签 [size-reduction]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 让 Tensorflow 库 + 预训练的 MobileNet 尽可能小,让 APK 更小
要求
我正在开发一个具有标签功能的照片管理 Android 应用程序,它必须识别日常物体/建筑物/动物/植物。当我拍一张显示自行车、房子和山的照片时,我的应用程序会将照片添加到这些类别中的每一个。
Tensorflow + 预训练的 MobileNet v2完全符合要求,我的依赖项是build.gradle
:
问题
问题:它使 APK 增长十倍至 32 MB,这对于我的目标受众(移动数据计划缓慢/昂贵且没有 WiFi/LAN/宽带的人)来说是不可接受的。
问题:我可以使用什么技巧使 Tensorflow + 预训练的 MobileNet v2 变得更小?
特别是,如何从 Tensorflow 中去除标注时不使用的类?不会在 Android 上进行任何培训,例如,我不需要所有培训课程。如果需要,我可以重新编译,但也欢迎使用任何其他方法。
python - 我正在尝试减少数据集的列数
我试图用 shape(20000,8000) 减少向量 X 的列数,但是减少了数据集的行数,使其成为新的数据集 X_5000 ,它的形状是 (5000 , 8000) 。请让我知道我在哪里犯了错误。当前我有 - X - 形状向量 (20000,8000) 必需 - X_5000 - 形状向量 (5000 , 8000) 我正在使用决策树模型并使用 feature_importance 来减少数量。的特征。
实际上我得到了 - print(X_5000.shape) - (5000 , 8000)
预期 - print(X_5000.shape) - (20000 , 5000)
python - 在熊猫数据框列上调用外部函数
我有一个看起来像这样的数据框:df
我想应用我从 pip ( https://pypi.org/project/rdp/ ) 安装的功能。它用于减少曲线中的点数。当我做:
它适用于数据集中的所有点。但是,我想在 3 小时窗口内将函数 rdp 应用于数据框中所有行的唯一列值“名称”。知道我该怎么做吗?
c++ - 优化析构函数的大小
我正在为嵌入式系统构建代码,并尝试尽可能多地节省二进制空间。
该代码用于解析协议(MQTT 的价值),其中有许多数据包类型,它们都是不同的,但有一些共同的部分。
目前,为了简化代码的编写,我使用这种模式:
这是有效的,我现在正试图减少所有这些模板专业化的二进制影响(否则代码几乎重复了 16 次)
所以,我想出了这个范式:
这工作得很好,可以减少大量使用的二进制代码空间。顺便说一句,我在final
这里使用,因此编译器可以去虚拟化,并且我在没有 RTTI 的情况下进行编译(显然也使用 -Os 并且每个函数都在其自己的部分中被垃圾收集)。
但是,当我检查符号表大小时,我发现析构函数上有很多重复(所有模板实例都在实现一个明显相同(相同二进制大小)或空的析构函数)。
通常,我理解ControlPacket<CONNECT>
需要调用~FixedHeader<CONNECT>()
并且ControlPacket<PUBLISH>
需要调用~FixedHeader<PUBLISH>()
破坏。
然而,由于所有的析构函数都是虚拟的,有没有一种方法ControlPacket
可以避免它们的析构函数的专业化,而是必须ControlPacketBase
虚拟地破坏它们,这样我就不会得到 16 个无用的析构函数,而只有一个?
arrays - Julia:沿特定轴获取多维数组的范围(最小值/最大值)
给定一些尺寸为N1
, N2
,的数组N3
,Julia 中是否有任何方法可以为给定轴的不同级别获取此多维数组的最小值和最大值(范围)?
例如,假设我们有一个my_array
具有大小的数组(10, 3, 100)
(意思是N1 = 10
, N2 = 3
,N3 = 100
以与上面使用的术语保持一致)。我想获得三个不同“级别”的最小值和最大值N2
。基本上,我想要一些更简洁的代码来执行以下操作:
所以基本上,对于所需维度(在本例中为维度)my_array[:,n,:]
的每个级别,您将获得整个 n 维子数组的最小值(分别为最大值),该子数组由索引操作(如 , )挑选出来。n
N2
我想要(更好的)代码,将这个操作推广到任何N
多维数组的任何所需维度,基本上存储该维度的不同“设置/级别”的范围。
node.js - 如何减小图像文件大小。何时使用 Nodejs 从 Google 图片 URL 或域 URL 下载?
从 Google Image URL 下载时,我尝试减小图像文件大小。我尝试了 imagemin npm 包,但它仅在 javascript 中可用。我需要在打字稿上可用。
我的图片下载代码是:
有没有人向我建议任何好的 npm 包或任何减少图像文件大小的示例?