8 夕阳叹

尚未进行身份认证

The best way to predict the future is to create it.

等级
TA的排名 1w+

快速矩阵乘法的研究——下

快速矩阵乘法的研究本文我们只看一个算法,就是 Coppersmith 和 Winograd 提出的O(2.39)O(2.39)O(2.39)的矩阵乘法。请确保前两篇内容已经掌握理解。https://blog.csdn.net/jxt1234and2010/article/details/88588208https://blog.csdn.net/jxt1234and2010/article/...

2019-10-21 13:02:30

快速矩阵乘法的研究——中

快速矩阵乘法的研究渐近和不等式(Asymptoticsuminequality)有了APA之后,我们突破了Strassen算法的阈值,但希望进一步往下降时,总是构造不出来,遇到了瓶颈。这个时候,人们发现了一条新的道路。同时计算多个矩阵乘法对于C=ABC=ABC=AB这个矩阵乘法,我们已经找不到更好的构造算法,但如果同时计算C1=A1B1,C2=A2B2C_1=A_1B_1,C...

2019-04-05 14:04:58

快速矩阵乘法的研究——上

快速矩阵乘法的研究最近的工作主要在于深度学习框架的性能优化。深度学习框架在工程的优化(内存池、SIMD、汇编、GPU、DSP等等)做到接近极限之后,突破点便集中于算法。深度学习的性能瓶颈主要在于卷积,卷积的运算方法主要是通过 Im2Col / Winograd / FFT 转化为矩阵乘,完成矩阵乘法之后,再转化为目标结果。深度学习框架的输入是算法工程产出的网络模型,而目前网络模型都渐渐地转变...

2019-03-16 04:39:53

移动端深度学习框架——绝影简介

绝影(Prestissimo)绝影是一个高性能移动端深度学习框架,其项目地址见https://github.com/in66-dev/In-Prestissimo

2017-11-30 13:52:37

从软件工程的角度写机器学习7——-LSTM网络实现

LSTM网络实现问题描述影片评价问题: 输入一个英文句子,输出好/坏的二元评价,比如 The movie is very bad -> 0 Wonderful -> 1算法思路本图中的数字仅为示例,并非真实数据 Embedding层在上一篇卷积神经网络的实现中,我们将类别直接映射为{0,0…1,…0}这样的向量,但对于单词而言,这个向量维度太大了(500个单词就是500维…),结合后面的

2017-08-29 20:37:33

基于OpenGL ES 的深度学习框架编写

基于OpenGL ES的深度学习框架编写背景与工程定位背景项目组基于深度学习实现了视频风格化和人像抠图的功能,但这是在PC/服务端上跑的,现在需要移植到移动端,因此需要一个移动端的深度学习的计算框架。同类型的库caffe-android-lib 目前应该是最便于集成使用的深度学习框架库。 tensorflow和mxnet据说也有对应的android库,因时间原因暂未测试。 CNNdroid,网址

2017-05-06 21:08:22

3D文件压缩库——Draco简析

3D文件压缩库——Draco简析今年1月份时,google发布了名为“Draco”的3D图形开源压缩库,下载了其代码来看了下,感觉虽然暂时用不到,但还是有前途的,故简单做下分析。注:Draco 代码地址: https://github.com/google/draco基本使用编译cmake . + make 编译源码,生成 draco_encoder 和 draco_decoder 两个可执行文件

2017-02-24 14:21:26

OpenGL的替代者——Vulkan

OpenGL的替代者——VulkanVulkan是一个跨平台的2D和3D绘图应用程序接口(API),最早由科纳斯(Khronos)组织在2015年游戏开发者大会(GDC)上发表。旨在替代OpenGL,提高图形性能。基于OpenGL的图形引擎性能瓶颈基于OpenGL的图形引擎,其渲染过程粗略可分为主机端资源准备,设备端数据交互与管线准备及每帧循环的渲染三个部分。资源加载这一过程跟GPU没有

2016-12-20 15:45:30

从软件工程的角度写机器学习6——深度学习之卷积神经网络(CNN)实现

卷积神经网络(CNN)实现背景卷积神经网络广泛用于图像检测,它的实现原理与传统神经网络基本上是一样的,因此将普遍意义的神经网络和卷积神经网络的实现合成一篇。神经网络实现思路“扔掉神经元”尽管所有教程在介绍神经网络时都会把一大堆神经元画出来,并且以输入节点——神经元——输出结点连线,但是,在编程实现时,基于神经元去编程是低效的。典型如这篇经典文章里面的代码: http://blog.csdn.net

2016-10-28 02:00:09

从软件工程的角度写机器学习5——SVM(支持向量机)实现

SVM实现SVM在浅层学习时代是主流监督学习算法,在深度学习时代也往往作为最后一个预测层使用。本系列文章旨在讲解机器学习算法的工程实现方法,不在于推导数学原理。

2016-08-30 14:45:41

从软件工程的角度写机器学习4——-C4.5决策树的工程实现

C4.5决策树的工程实现这篇文章开始,将讲述一系列机器学习算法的工程实现方案。出于常用且简单的考虑,选择了C4.5决策树作为第一个算法。工程框架鉴于本篇是第一个算法实现,应此需要把整个工程框架介绍一下。 出于最优性能考虑,本框架是为C/C++语言设计的。不过即使用其他语言,也可以按这个框架实现,模块还可以再精简。本工程定位: 1、无脑版机器学习算法库,使用者基本不需要了解任何算法细节,也不需要了

2016-07-17 00:52:40

GPU与GPGPU泛淡

GPU与GPGPU泛淡GPU(Graphics Processing Unit),也即显卡,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上作图像运算工作的微处理器。它已经是个人PC和移动设备上不可或缺的芯片,有界面有显示的地方,一般就离不开它。高清电视、智能手机、个人电脑。GPU的产生是为了解决图形渲染效率的问题,但随着技术进步,GPU越来越强大,尤其是shader出

2016-05-21 01:48:32

从软件工程的角度写机器学习3——主要监督学习算法的工程性分析

主要机器学习算法的工程适用性分析前段时间AlphaGo跟李世石的大战及相关的深度学习的新闻刷了一遍又一遍的朋友圈。不过这件事情,也只是在机器学习的深度上进一步拓展,而机器学习的广度(也即工程化实践)上,仍然没有什么突破性的理论或实践,用的领域继续用,不用的领域依然不用。重要性机器学习的使命是使计算机强大的运算能力和存储能力转化为推演能力,能转化是一方面,转化的效率则是另一方面。科研性

2016-04-16 13:06:12

图像算法的工程优化技术

图像算法的工程优化技术当一个很酷的图像算法实现之后,我们希望集成到软件中去,这时将会遇到最大的拦路虎:性能。 可以想像一下,如果美图秀秀做一个美颜效果要转圈圈转个30秒,还会有多少人用呢。 学术界喜欢推出复杂度更低的算法,去解决性能问题,而在实际工程应用中,对代码的优化和硬件的良好运用效果来得更快更显著,这里就对不改动算法,纯工程方面做性能优化的技术作一个简介。 流程优化——节能减排对初始

2016-02-29 21:35:52

从软件工程的角度写机器学习2——流行的机器学习应用模式与算法

流行的机器学习应用模式与算法本文将围绕机器学习的概念,尽可能归纳总结当前流行的机器学习应用模式及相关算法。 “对于某类任务T和性能度量P,如果一个计算机程序在T上以P衡量的性能随着经验E而自我完善,那么我们称这个计算机程序在从经验E学习。”机器学习的各类算法之间,重叠交叉又各自不同,既然是从软件工程的角度来写,我们会先介绍机器学习算法所依存的框架,再在这个框架下介绍有哪些算法,算法详情不做

2016-02-28 14:40:26

Renascence使用方法

Renascence使用方法下层库的适配类型下层库所有向Renascence架构提供的函数,其输入输出都必须给一个对应的继承于IStatusType的类,用于读取、保存、映射、释放该类型。/*Basic API*/class IStatusType{public: IStatusType(const std::string name):mName(name){} virtual

2016-02-14 10:53:40

Renascence架构原理——最优化算法

最优化算法背景通过公式生成ADF之后,根据下层函数库的配置,在结构不变的情形下,ADF是可以通过一系列值在0-1之间的参数进行调节的。也即ADF可表示为固定维数n的实数集,因此需要解决的问题就是在给定的目标下,求一组使目标值最大的参数。 max(f(x0,x1,x2,x3,...,xn)),xi∈[0,1]max(f(x_0, x_1, x_2, x_3, ..., x_n)), x_i\in [

2016-02-14 00:29:33

Renascence架构原理——遗传规划算法

遗传规划算法遗传规划算法请先看一下遗传算法:http://blog.csdn.net/v_JULY_v/article/details/6132775遗传规划/遗传编程(GeneticProgramming)是遗传算法的一个分支,与遗传算法中每个个体是一段染色体编码不同,它的个体是一个计算机程序。维基上说它在70年代就已经有人实践,不过正式提出应该还是在JohnR.Koza教授于199

2016-02-13 18:13:07

从软件工程的角度写机器学习1——机器学习的思想

机器学习的思想序提到机器学习,圈内人首先想到的是神经网络、SVM、梯度下降、逻辑回归等具体的算法,而对圈外人而言,机器学习就等同于机器人、无人驾驶等具体的应用场景。 看了不少机器学习相关的文章,有描述知识点的:讲解算法非常详细,并且给出实现的程序demo。也有描述覆盖面的:泛泛而谈机器学习的典型应用场景,力图使大众易于理解。 但在一个软件工程中,机器学习如何应用,各算法如何衔接,怎么系统地去

2016-02-12 11:04:17

适用于OpenGL离屏渲染上下文的初始化代码

说明最近做图像算法,需要用到shader对图像进行处理,用glut会有窗口,不适合写成UT测试用例,需要创建一个无窗口的OpenGL上下文。代码这部分代码其实是参考 Android的Skia 模块相关代码写的,适用于 Mac、EGL(Android)、X11(Ubuntu等Linux系统)平台。h文件#ifndef GL_GLCONTEXT_H#define GL_GLCONTEXT_Hclas

2016-01-22 00:39:11

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。