草庐IT

数值量化

全部标签

中国科学院团队首篇LLM模型压缩综述:细聊剪枝、知识蒸馏、量化技术

近来,大型语言模型(LLM)在各种任务中表现出色。然而,即便有卓越的任务处理能力,LLM却面临着巨大的挑战,这些挑战源于其巨大的规模和计算需求。举个例子,GPT-175B版本具有惊人的1750亿参数,至少需要320GB(使用1024的倍数)的半精度(FP16)格式存储。此外,部署此模型进行推理还需要至少五个A100GPU,每个GPU具有80GB的内存,这样才能有效地保证运行。为了解决这些问题,当下一种被称为模型压缩的方法可以成为解决方案。模型压缩可以将大型、资源密集型模型转换为适合存储在受限移动设备上的紧凑版本。此外它可以优化模型,以最小的延迟更快地执行,或实现这些目标之间的平衡。除了技术方面

BOXTRADE-天启量化分析平台 系统功能预览

BOXTRADE-天启量化分析平台系统功能预览系统功能预览1.登录首页参考登录文档2.A股行情与策略分析2.1 A股股票列表可以筛选和搜索2.2 A股行情及策略回测2.2.1行情数据提供除权和前复权,后复权数据;外链公司信息2.2.2内置策略执行结果概览2.2.3量价走势图2.3 A股策略执行结果分析2.3.1策略执行结果分析2.3.2策略执行买卖分析2.3.4策略执行买点提示2.3.5策略执行卖点提示2.3.6策略执行回报率和现金流走势3.国内期货行情与策略分析3.1 期货品种大全3.1.1可以筛选交易所和品种3.1.2筛选交易所3.1.3筛选交期货品种3.2 期货在售合约可筛选品种3.3 

想解决技术债,你要先学会如何量化它

作者| RyanDonovan编译| 徐杰承当WardCunningham在“敏捷宣言”中首次提出“技术债”概念时,他表示需要用一种方式来讨论项目早期所做的决策,这些决策会在工程师后续的开发工作中困扰他们。一些企业为了将产品推向市场而在早期做出的技术决策可能并不适用于长期发展,除非修正这些决策,否则团队的生产力将会受到影响。这里的一个例子是,Facebook最初是用PHP编写的。然而随着增加特性、复杂性和规模,PHP开始变得不再适用于新的需求,这便是PHP给Facebook带来的技术债。但值得注意的是,技术债并不一定意味着最初的选择是错误的。用PHP编写网站起初是一个明智的决定——问题并不出在

python - 我的 LSTM 学习,损失减少,但数值梯度与分析梯度不匹配

以下是自包含,当您运行它时,它将:1.打印损失以验证它正在减少(学习sin波),2.对照我的手推梯度函数检查数值梯度。这两个梯度倾向于在1e-1到1e-2内匹配(这仍然很糟糕,但表明它正在尝试)并且偶尔会出现极端异常值。我整个星期六都在退回到正常的FFNN,让它工作(耶,梯度匹配!),现在星期天在这个LSTM上,好吧,我找不到我逻辑中的错误。哦,这在很大程度上取决于我的随机种子,有时很好,有时很糟糕。我已经根据LSTM方程的手推导数(我做了微积分)和这3个博客/要点中的实现手工检查了我的实现:http://blog.varunajayasiri.com/numpy_lstm.htmlh

python - scikit-learn,将特征添加到向量化的文档集

我从scikit-learn开始,我正在尝试将一组文档转换为我可以应用聚类和分类的格式。我已经看到了有关矢量化方法的详细信息,以及用于加载文件和索引其词汇表的tfidf转换。但是,我有每个文档的额外元数据,例如作者、负责的部门、主题列表等。如何向向量化函数生成的每个文档向量添加特征? 最佳答案 您可以使用DictVectorizer获取额外的分类数据,然后使用scipy.sparse.hstack将它们结合起来。 关于python-scikit-learn,将特征添加到向量化的文档集,我

python - 在使用 numpy 读取 txt 文件时跳过包含字符串的结尾行以生成数值数组

我正在尝试生成一个从Internet读取文本文件的数组。我的目标是使用Python而不是MATLAB,在MATLAB中替换这一步:url=['http://www.cdc.noaa.gov/Correlation/amon.us.long.data'];urlwrite(url,'file.txt');我正在使用这段代码:urllib.urlretrieve('http://www.cdc.noaa.gov/Correlation/amon.us.long.data','/Users/epy/file2.txt')a=np.loadtxt('/Users/epy/file2.txt',

python - 反转插值以给出与所需插值函数值关联的变量

我正在尝试使用scipy的插值函数来反转插值函数。假设我创建了一个插值函数,importscipy.interpolateasinterpolateinterpolatedfunction=interpolated.interp1d(xvariable,data,kind='cubic')当我指定a时,是否有一些函数可以找到x:interpolatedfunction(x)==a换句话说,“我希望我的插值函数等于a;xvariable的值是多少才能使我的函数等于a?”我很感激我可以用一些数字方案来做到这一点,但是有没有更直接的方法?如果插值函数在xvariable中是多值的怎么办?

Python Numpy 向量化组合学的嵌套 for 循环

给定一个nxn数组A的实数正数,我试图找到二维数组三行的所有组合的元素最小值的最大值中的最小值。使用for循环,结果是这样的:importnumpyasnpn=100np.random.seed(2)A=np.random.rand(n,n)global_best=np.infforiinrange(n-2):forjinrange(i+1,n-1):forkinrange(j+1,n):#findthemaximumoftheelement-wiseminimumofthethreevectorslocal_best=np.amax(np.array([A[i,:],A[j,:],A

python - 为什么 Python 在 numpy 数组切片上循环比完全矢量化操作更快

我需要通过对3D数据数组进行阈值处理来创建bool掩码:数据小于可接受下限或数据大于可接受上限的位置的掩码必须设置为True(否则错误)。简明扼要:mask=(datahigh)我有两个版本的代码来执行此操作:一个直接使用numpy中的整个3D数组,而另一个方法循环遍历数组的切片。出乎我的意料,第二种方法似乎比第一种方法更快。为什么???In[1]:importnumpyasnpIn[2]:importsysIn[3]:print(sys.version)3.6.2|ContinuumAnalytics,Inc.|(default,Jul202017,13:14:59)[GCC4.2.

python - 在 numpy 中更有效地矢量化此卷积类型循环

我必须执行以下类型的许多循环foriinrange(len(a)):forjinrange(i+1):c[i]+=a[j]*b[i-j]其中a和b是短数组(大小相同,大约在10到50之间)。这可以使用卷积有效地完成:importnumpyasnpnp.convolve(a,b)但是,这给了我完整的卷积(即,与上面的for循环相比,向量太长了)。如果我在卷积中使用“相同”选项,我会得到中心部分,但我想要的是第一部分。当然,我可以从完整向量中去掉不需要的部分,但如果可能的话,我想去掉不必要的计算时间。有人可以建议更好的循环矢量化吗? 最佳答案