首页 > 其他分享 >神经网络优化篇:详解深度学习框架(Deep Learning frameworks)

神经网络优化篇:详解深度学习框架(Deep Learning frameworks)

时间:2024-02-21 09:58:00浏览次数:26  
标签:框架 开源 Deep 学习 frameworks 神经网络 Learning 深度 软件

深度学习框架

  • 一小点作者内心os:24年春节已过完,从熟悉的地方又回到陌生的地方谋生,愿新的一年都得偿所愿,心想事成。

学到这会儿会发现,除非应用更复杂的模型,例如卷积神经网络,或者循环神经网络,或者当开始应用很大的模型,否则它就越来越不实用了,至少对大多数人而言,从零开始全部靠自己实现并不现实。

幸运的是,现在有很多好的深度学习软件框架,可以帮助实现这些模型。类比一下,猜知道如何做矩阵乘法,还应该知道如何编程实现两个矩阵相乘,但是当在建很大的应用时,很可能不想用自己的矩阵乘法函数,而是想要访问一个数值线性代数库,它会更高效,但如果明白两个矩阵相乘是怎么回事还是挺有用的。认为现在深度学习已经很成熟了,利用一些深度学习框架会更加实用,会使的工作更加有效,那就让来看下有哪些框架。

现在有许多深度学习框架,能让实现神经网络变得更简单,来讲主要的几个。每个框架都针对某一用户或开发群体的,觉得这里的每一个框架都是某类应用的可靠选择,有很多人写文章比较这些深度学习框架,以及这些深度学习框架发展得有多好,而且因为这些框架往往不断进化,每个月都在进步,如果想看看关于这些框架的优劣之处的讨论,留给自己去网上搜索,但认为很多框架都在很快进步,越来越好,因此就不做强烈推荐了,而是与分享推荐一下选择框架的标准。

一个重要的标准就是便于编程,这既包括神经网络的开发和迭代,还包括为产品进行配置,为了成千上百万,甚至上亿用户的实际使用,取决于想要做什么。

第二个重要的标准是运行速度,特别是训练大数据集时,一些框架能让更高效地运行和训练神经网络。

还有一个标准人们不常提到,但觉得很重要,那就是这个框架是否真的开放,要是一个框架真的开放,它不仅需要开源,而且需要良好的管理。不幸的是,在软件行业中,一些公司有开源软件的历史,但是公司保持着对软件的全权控制,当几年时间过去,人们开始使用他们的软件时,一些公司开始逐渐关闭曾经开放的资源,或将功能转移到他们专营的云服务中。因此会注意的一件事就是能否相信这个框架能长时间保持开源,而不是在一家公司的控制之下,它未来有可能出于某种原因选择停止开源,即便现在这个软件是以开源的形式发布的。但至少在短期内,取决于对语言的偏好,看更喜欢PythonJava还是C++或者其它什么,也取决于在开发的应用,是计算机视觉,还是自然语言处理或者线上广告,等等,认为这里的多个框架都是很好的选择。

程序框架就写到这里,通过提供比数值线性代数库更高程度的抽象化,这里的每一个程序框架都能让在开发深度机器学习应用时更加高效。

标签:框架,开源,Deep,学习,frameworks,神经网络,Learning,深度,软件
From: https://www.cnblogs.com/oten/p/18024514

相关文章

  • 【Python】强化学习Q-Learning走迷宫
    Q-Learning是一种基于值函数的强化学习算法,这里用该算法解决走迷宫问题。算法步骤如下:1.初始化Q表:每个表格对应状态动作的Q值。这里就是一个H*W*4的表,4代表上下左右四个动作。2.选择动作:根据Q表格选择最优动作或者以一定概率随机选择动作。3.执行动作,得到返回奖励(这......
  • Edu-Dict + English Learning Materials: Mdict
    https://mdict.orghttps://github.com/xiaolai/apple-computer-literacy/blob/main/Install-Mdict-Dictionaries-to-macOS-Dictionary.mdhttps://downloads-direct.freemdict.com/Language_Learning_Videos/英语/https://downloads.freemdict.comhttps://mdx.mdict.orgMdic......
  • DeepFaceLab换脸使用
    将视频转换成图片,从图片中提取人脸,从人脸中学习特征。然后应用模型,先对图片进行换脸,然后把图片合成视频。1.src视频分解图像2.dst视频分解图像3.src提取面部4.dst提取面部5.训练模型6.应用模型7.合成视频批处理文件步骤依次如下:src视频提取图像extractimagesfro......
  • Sample-Efficient Deep Reinforcement Learning via Episodic Backward Update
    发表时间:2019(NeurIPS2019)文章要点:这篇文章提出EpisodicBackwardUpdate(EBU)算法,采样一整条轨迹,然后从后往前依次更新做experiencereplay,这种方法对稀疏和延迟回报的环境有很好的效果(allowssparseanddelayedrewardstopropagatedirectlythroughalltransitionso......
  • CF741E Arpa’s abnormal DNA and Mehrdad’s deep interest
    我永远喜欢数据结构。感觉\(\color{maroon}*3400\)虚高,但是第一眼不会做/ng。太菜了。CF洛谷给出两个字符串\(s,t\),记\(r_i\)表示在\(s_i\)和\(s_{i+1}\)插入\(t\)得到的字符串。若\(i=0\)表示在开头插入,若\(i=|s|\)表示在结尾插入。形式化的,\(r_i=\ov......
  • 《Learning from Context or Names?An Empirical Study on Neural Relation Extractio
    代码原文地址预备知识:1.什么是对比学习?对比学习是一种机器学习范例,将未标记的数据点相互并列,以教导模型哪些点相似,哪些点不同。也就是说,顾名思义,样本相互对比,属于同一分布的样本在嵌入空间中被推向彼此。相比之下,属于不同分布的那些则相互拉扯。摘要神经模型在关系抽取(RE......
  • Java反射(learning)
    Java-reflectionJava反射(Reflection)是Java语言的一个特性,它允许程序在运行时检查和修改内部类的行为。通过反射,可以获取类的构造器、方法、字段等成员的信息,并且可以动态地创建对象、调用方法、访问和修改字段。Java反射主要涉及到以下几个类:java.lang.Class:代表一个类,每个......
  • deepinV23编译文件管理器改造
    1.概述本篇博客主要介绍在deepinV23和deepinV20.9上改造编译安装dde-file-manager的过程。其中编译的过程,主要参考了:Deepin深度操作系统中编译和安装dde-file-manager-CSDN博客,感谢这位大佬的分享自己改造的部分,主要是:增加文件管理器和桌面通过ctrl+d删除文件或目录增加桌......
  • Spring6-IoC(learning)
    Spring-IoCA.控制反转IoC(InversionofControl):控制反转(设计思想)Spring通过IoC容器管理所有Java对象的实例化与初始化,控制对象间的依赖关系。将由IoC容器管理的Java对象称为SpringBean,它与使用new关键字创建的Java对象没有任何区别。IoC容器是Spring框架最重要的核心组件之一......
  • Mechanism of Machine Learning
    1.WhatisMachineLearning?MachineLearning=StatisticLearning,namely,thereisanunknowndistributionof(x1,x2,...,xm,y),thetaskistoinferywhen(x1,x2,...,xm)isknown,Althoughthedistributionisunknown,sotherelationbetween(x1,......