https://cdn.jsdelivr.net/gh/gsscsd/BlogImg/20220628173721.png

Gsscsd

tensorflow之Tensor、Variable

为什么选择tensorflow

TensorFlow 无可厚非地能被认定为 神经网络中最好用的库之一。它擅长的任务就是训练深度神经网络.通过使用TensorFlow我们就可以快速的入门神经网络,大大降低了深度学习(也就是深度神经网络)的开发成本和开发难度.。TensorFlow 的开源性,让所有人都能使用并且维护, 巩固它. 使它能迅速更新, 提升。

现在新版本的tensorflow除了支持Graph Execution之外,还提供了Eager Execution。

keras详细介绍

计算图与张量

要说Pytorch/Tensorflow/Keras,就不能不提它的符号主义特性

事实上,Pytorch也好,Tensorflow也好,其实是一款符号主义的计算框架,未必是专为深度学习设计的。假如你有一个与深度学习完全无关的计算任务想运行在GPU上,你完全可以通过Pytorch/Tensorflow编写和运行。

算法与数据结构

定义

算法: 算法中的指令描述的是一个计算,当其运行时能从一个初始状态和(可能为空的)初始输入开始,经过一系列有限而清晰定义的状态,最终产生输出停止于一个终态。一个状态到另一个状态的转移不一定是确定的。随机化算法在内的一些算法,包含了一些随机输入.

数据结构: 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率.

先说数据结构,毕竟算法也得有东西算,才又算法,所谓先有鸡后有蛋

数据结构:既然是结构,里面肯定是有不同的数据的,与其叫数据结构,不如叫数据流,数据流中包含了各种数据,数据结构构成流,流亦是数据结构,面向对象就是,万物皆数据,以流的形式呈现.

算法就是解决问题的方法,以函数或者是类的形式出现,它决定传入的参数,对数据流进行修改,留下需要的,抛弃不需要的,将数据和其他数据组成在一起,形成数据流,将数据流和数据流组成在一起,形成新的数据流,将数据流拆分成数据,再聚合,这就是算法的作用。

算法就是数据流的灵魂,没有算法的数据其实没有灵魂的

keras基本入门

keras基本介绍

Keras是由纯python编写的基于不同的深度学习后端开发的深度学习框架。

支持的后端有:

  • 谷歌的 TensorFlow 后端
  • 微软的 CNTK 后端
  • Theano 后端

Keras是一个高层神经网络API,支持快速实验,能够把你的idea迅速转换为结果,如果有如下需求,可以优先选择Keras:

  • 简易和快速的原型设计(keras具有高度模块化,极简,和可扩充特性)

  • 支持CNN和RNN,或二者的结合

  • 无缝CPU和GPU切换

keras的优点:

  • 用户友好:Keras是为人类而不是天顶星人设计的API。用户的使用体验始终是我们考虑的首要和中心内容。Keras遵循减少认知困难的最佳实践:Keras提供一致而简洁的API, 能够极大减少一般应用下用户的工作量,同时,Keras提供清晰和具有实践意义的bug反馈。

  • 模块性:模型可理解为一个层的序列或数据的运算图,完全可配置的模块可以用最少的代价自由组合在一起。具体而言,网络层、损失函数、优化器、初始化策略、激活函数、正则化方法都是独立的模块,你可以使用它们来构建自己的模型。

  • 易扩展性:添加新模块超级容易,只需要仿照现有的模块编写新的类或函数即可。创建新模块的便利性使得Keras更适合于先进的研究工作。

  • 与Python协作:Keras没有单独的模型配置文件类型(作为对比,caffe有),模型由python代码描述,使其更紧凑和更易debug,并提供了扩展的便利性。

python之Numpy学习笔记

NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。 Numeric,即 NumPy 的前身,是由 Jim Hugunin 开发的。 也开发了另一个包 Numarray ,它拥有一些额外的功能。 2005年,Travis Oliphant 通过将 Numarray 的功能集成到 Numeric 包中来创建 NumPy 包。 这个开源项目有很多贡献者。