10 2020 档案
前向传播
摘要:import tensorflow as tf from tensorflow import keras from tensorflow.keras import datasets import os os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' #x:[60k, 阅读全文
posted @ 2020-10-28 17:48 龑覭 阅读(87) 评论(0) 推荐(0)
Broadcasting 维度扩张的手段
摘要:Broadcasting 维度扩张 没有复制数据 但是呈现数据已经扩张了 使用broadcasting 可以有效的节约储存空间 维度不同 不能使用broadcasting 使用+号直接自动broadcast。 阅读全文
posted @ 2020-10-28 16:37 龑覭 阅读(86) 评论(0) 推荐(0)
维度变换
摘要:四种数组的理解方式 reshape操作可以还原tensor。 但是它会造成潜在的问题 物理含义错误的话 还原出来的也是错误的 transpose转置操作 阅读全文
posted @ 2020-10-28 16:29 龑覭 阅读(108) 评论(0) 推荐(0)
Selective Indexing
摘要:gather 起到收集的作用,收集的行数可以随机给 tensor为[4,35,8] 4个班级 35个学生 8门课程 采样4个班级7个学生 前三门课的成绩: 不同班级的4个学生的8门成绩 阅读全文
posted @ 2020-10-27 23:49 龑覭 阅读(86) 评论(0) 推荐(0)
tensorflow索引和切片
摘要:根据索引切片 a【0】【0】代表根据前两个索引 切片 所以切出来的shape为【5,3】 这种索引方式比较单一 切片操作 索引靠近后端 用负 靠前端就用正。冒号左边默认为0,右边默认为-1. 用冒号返回的都是数组。 步长加负号就是逆序。 省略号的用法 可以代替任意长的维度 阅读全文
posted @ 2020-10-27 23:02 龑覭 阅读(185) 评论(0) 推荐(0)
创建tensor
摘要:normal为正态分布 mean为均值 stddev为方差 truncated 为截断 在原来的分布截断某个元素 截断后避免了斜率为零的地方,效果好一些 uniform 为均匀采样 后两个参数是均匀分布的最大值和最小值 shuffle 打散操作 打散后内容和标签还是一一对应的关系(index不变) 阅读全文
posted @ 2020-10-27 22:14 龑覭 阅读(81) 评论(0) 推荐(0)
c++线程中使用detach()导致的内存非法引用问题
摘要:#include <iostream> #include"stdafx.h" #include<vector> #include<map> #include<string> #include<thread> using namespace std; class A { public: int m_i 阅读全文
posted @ 2020-10-22 20:53 龑覭 阅读(433) 评论(0) 推荐(0)
线程的使用
摘要:// ConsoleApplication1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // #include <iostream> #include"stdafx.h" #include<vector> #include<map> #include<string> 阅读全文
posted @ 2020-10-21 23:18 龑覭 阅读(81) 评论(0) 推荐(0)
进程与线程
摘要://一:并发、进程、线程的基本概念和综述 //并发和线程,进程要求必须掌握; //(1.1)并发 //两个或者更多的任务(独立的活动)同时发生(进行);一个程序同时执行多个独立的任务; //以往计算机单核cpu,某一时刻只能执行一个任务,实现多任务的方式是由操作系统调度,时间轮盘等 //引起假象的并 阅读全文
posted @ 2020-10-21 20:24 龑覭 阅读(82) 评论(0) 推荐(0)
手写数字体识别
摘要:图像识别基本原理: 在实现过程中会用到 relu回归函数 矩阵的降维: 最后应输出的值:(十个值是因为是十分类) 取最大值为预测结果 关于loss的问题 通过计算out与实际y的欧式距离来计算loss值。 通过loss值来优化参数: 操作: 阅读全文
posted @ 2020-10-20 19:37 龑覭 阅读(231) 评论(0) 推荐(0)
线性回归
摘要:对数组的线性回归预测: import numpy as np # y = wx + b def compute_error_for_line_given_points(b, w, points): totalError = 0 for i in range(0, len(points)): x = 阅读全文
posted @ 2020-10-20 16:42 龑覭 阅读(114) 评论(0) 推荐(0)
函数对象和谓词
摘要:函数对象和谓词定义 函数对象: 重载函数调用操作符的类,其对象常称为函数对象(function object),即它们是行为类似函数的对象。一个类对象,表现出一个函数的特征,就是通过“对象名+(参数列表)”的方式使用一个类对象,如果没有上下文,完全可以把它看作一个函数对待。 这是通过重载类的oper 阅读全文
posted @ 2020-10-18 22:56 龑覭 阅读(220) 评论(0) 推荐(0)
c++的 set 和 multiset 容器
摘要:set和multiset会根据特定的排序准则,自动将元素进行排序。不同的是后者允许元素重复而前者不允许。 需要包含头文件: #include <set> set和multiset都是定义在std空间里的类模板: template<class _Kty, class _Pr = less<_Kty>, 阅读全文
posted @ 2020-10-14 19:51 龑覭 阅读(190) 评论(0) 推荐(0)
c++优先级队列 priority queue
摘要:优先级队列分为最大值优先队列、最小值优先队列 优先级队列适配器:STL priority_queue 优先级队列一般用来开发特殊应用 代码: #include<iostream> using namespace std; #include<queue> void main81() { priorit 阅读全文
posted @ 2020-10-14 16:42 龑覭 阅读(192) 评论(0) 推荐(0)
c++list容器
摘要:list是线性双向链表结构,它的数据由若干个节点构成,每一个节点都包括一个信息块(即实际存储的数据)、一个前驱指针和一个后驱指针。它无需分配指定的内存大小且可以任意伸缩,这是因为它存储在非连续的内存空间中,并且由指针将有序的元素链接起来。由于其结构的原因,list 随机检索的性能非常的不好,因为它不 阅读全文
posted @ 2020-10-13 18:03 龑覭 阅读(269) 评论(0) 推荐(0)
c++queue容器
摘要:queue 模板类的定义在<queue>头文件中。与stack 模板类很相似,queue 模板类也需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque 类型。定义queue 对象的示例代码如下:queue<int> q1;queue<double> q 阅读全文
posted @ 2020-10-13 17:37 龑覭 阅读(117) 评论(0) 推荐(0)
c++的stack容器
摘要:stack是一种容器适配器,专门设计用于在LIFO上下文中操作(后进先出),其中元素仅从容器的一端插入和删除。 容器适配器,而不是一种容器。 它是容器适配器是指,只要支持一系列方法的容器(empty, size, back, push_back, pop_back),都能作为stack使用。 sta 阅读全文
posted @ 2020-10-13 17:09 龑覭 阅读(240) 评论(0) 推荐(0)
c++的deque容器
摘要:deque容器为一个给定类型的元素进行线性处理,像向量一样,它能够快速地随机访问任一个元素,并且能够高效地插入和删除容器的尾部元素。但它又与vector不同,deque支持高效插入和删除容器的头部元素,因此也叫做双端队列。deque类常用的函数如下。 (1) 构造函数 deque():创建一个空de 阅读全文
posted @ 2020-10-13 16:46 龑覭 阅读(136) 评论(0) 推荐(0)
Vector容器
摘要:vector 是将元素置于一个动态数组中的加以管理的容器。 vector可以随机存取元素(支持索引直接存取,用[]操作符或at()方法,后面会详细概述 vector 尾部添加或移除元素非常快速,但是在中间或者头部插入元素或移除元素比较费时 具体参考: https://blog.csdn.net/we 阅读全文
posted @ 2020-10-12 20:31 龑覭 阅读(115) 评论(0) 推荐(0)
stl的string
摘要:string类本不是STL的容器,但是它与STL容器有着很多相似的操作,因此,把string放在这里一起进行介绍。之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数 阅读全文
posted @ 2020-10-12 20:14 龑覭 阅读(181) 评论(0) 推荐(0)
STL容器
摘要:1 #include<iostream> 2 using namespace std; 3 #include "vector" //数组容器 4 #include "algorithm"//算法容器 5 6 void main11() 7 { 8 vector<int> v1; //1.v1是一个数 阅读全文
posted @ 2020-10-12 17:09 龑覭 阅读(100) 评论(0) 推荐(0)
c++文件的读写
摘要:https://www.runoob.com/cplusplus/cpp-files-streams.html 阅读全文
posted @ 2020-10-11 18:39 龑覭 阅读(69) 评论(0) 推荐(0)
C++ 标准的异常
摘要:C++ 提供了一系列标准的异常,定义在 <exception> 中,我们可以在程序中使用这些标准的异常。它们是以父子类层次结构组织起来的,如下所示: 下表是对上面层次结构中出现的每个异常的说明: 阅读全文
posted @ 2020-10-09 20:43 龑覭 阅读(91) 评论(0) 推荐(0)
继承在异常中的应用
摘要:异常是类 -创建自己的一个异常类 异常派生 异常中的数据,数据成员 按引用传递异常 --在异常中使用虚函数 案例:设计一个数组类,重载【】操作 数组初始化时,对数组的个数进行有效性检查。 1)index < 0 抛出异常eNegative 2) index = 0 抛出异常eZero 3) inde 阅读全文
posted @ 2020-10-09 20:14 龑覭 阅读(143) 评论(0) 推荐(0)
异常类型变量的生命周期
摘要:传统的错误处理机制: #include<iostream> using namespace std; //传统的处理机制 int my_strcopy(char* from, char* to) { if (from == NULL) return 1; if (to == NULL) return 阅读全文
posted @ 2020-10-09 19:07 龑覭 阅读(109) 评论(0) 推荐(0)
异常处理机制
摘要:异常是一种程序控制机制,与函数机制独立和互补 1.若有异常则通过throw操作创建一个异常对象并抛出; 2.将可能抛出的异常程序段嵌在try块之中。控制通过正常的顺序执行到达try语句,然后执行try块内的保护段。 3.如果在保护执行段执行期间没有引起异常,那么在try块后的catch子句就不执行。 阅读全文
posted @ 2020-10-09 16:42 龑覭 阅读(291) 评论(0) 推荐(0)
c++中的类型转换
摘要:c++风格的类型转换提供了4种类型转换操作符来进行不同场合的应用。 static_cast 静态类型转换。如int转换成char reinterpreter_cast 重新解释类型 dynamic_cast 命令上理解是类型转换。如父类和子类之间的多类型转换 const_cast 字面上的理解就是去 阅读全文
posted @ 2020-10-08 22:38 龑覭 阅读(196) 评论(0) 推荐(0)