初始化

Ai公益深度学习

喜夏-厌秋 提交于 2020-02-14 23:35:04
softmax的基本概念 下面的连接是我自己记录的softmax和交叉熵的笔记。 模型的训练和预测 softmax丛林开始实现 import torchvision import numpy as np import sys sys . path . append ( "/home/kesci/input" ) import d2lzh1981 as d2l print ( torch . __version__ ) print ( torchvision . __version__ ) 获取训练集数据和测试集数据 batch_size = 256 train_iter , test_iter = d2l . load_data_fashion_mnist ( batch_size ) 模型参数初始化 num_inputs = 784 print ( 28 * 28 ) num_outputs = 10 W = torch . tensor ( np . random . normal ( 0 , 0.01 , ( num_inputs , num_outputs ) ) , dtype = torch . float ) b = torch . zeros ( num_outputs , dtype = torch . float ) W . requires_grad_ (

java与C++的区别

不问归期 提交于 2020-02-14 17:46:42
“作为一名C++程序员,我们早已掌握了面向对象程序设计的基本概念,而且Java的语法无疑是非常熟悉的。事实上,Java本来就是从C++衍生出来的。”   然而,C++和Java之间仍存在一些显著的差异。可以这样说,这些差异代表着技术的极大进步。一旦我们弄清楚了这些差异,就会理解为什么说Java是一种优秀的程序设计语言。本附录将引导大家认识用于区分Java和C++的一些重要特征。   (1) 最大的障碍在于速度:解释过的Java要比C的执行速度慢上约20倍。无论什么都不能阻止Java语言进行编译。写作本书的时候,刚刚出现了一些准实时编译器,它们能显著加快速度。当然,我们完全有理由认为会出现适用于更多流行平台的纯固有编译器,但假若没有那些编译器,由于速度的限制,必须有些问题是Java不能解决的。   (2) 和C++一样,Java也提供了两种类型的注释。   (3) 所有东西都必须置入一个类。不存在全局函数或者全局数据。如果想获得与全局函数等价的功能,可考虑将static方法和static数据置入一个类里。注意没有象结构、枚举或者联合这一类的东西,一切只有“类”(Class)!   (4) 所有方法都是在类的主体定义的。所以用C++的眼光看,似乎所有函数都已嵌入,但实情并非如何(嵌入的问题在后面讲述)。   (5) 在Java中,类定义采取几乎和C++一样的形式。但没有标志结束的分号

Linux启动过程详解(inittab、rc.sysinit、rcX.d、rc.local)

只谈情不闲聊 提交于 2020-02-14 10:13:45
启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它。这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、PnP特性等等。在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了。 启动第二步--读取MBR 众所周知,硬盘上第0磁道第一个扇区被称为MBR,也就是Master Boot Record,即主引导记录,它的大小是512字节,别看地方不大,可里面却存放了预启动信息、分区表信息。 系统找到BIOS所指定的硬盘的MBR后,就会将其复制到0x7c00地址所在的物理内存中。其实被复制到物理内存的内容就是Boot Loader,而具体到你的电脑,那就是lilo或者grub了。 启动第三步--Boot Loader / Grup Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核做好一切准备。 Boot Loader有若干种,其中Grub、Lilo和spfdisk是常见的Loader。 我们以Grub为例来讲解吧,毕竟用lilo和spfdisk的人并不多。 系统读取内存中的grub配置信息(一般为menu

Java学习笔记一(一维数组)

久未见 提交于 2020-02-14 07:39:58
数组(Array) 1、 数组的理解 :数组是多个相同类型的数据按照一定的顺序排列的集合,使用一个名字命名,并通过编号的方式进行统一管理。 arr = [2,3,45,67,8,9,0,2] 2、 数组的相关概念 : 1、数组名 2、数组中的元素 3、角标(下标,索引) 4、数组的长度 3、 数组的特点: 1、数组是有序的 2、数组的元素可以是基本数据类型也可以是引用数据类型; 3、数组的长度一旦确定就不能更改; 4、创建数组对象会在内存中开辟一整块的连续空间 4、 数组的分类 :数组按照维数可以分类一维数组、二维数组等。按照内部元素的数据类型:基本数据类型的数组和引用数据类型的数组。 5、 一维数组的使用 : 1、数组的声明和初始化; 2、数组中指定位置元素的引用; 3、数组的长度; 4、数组的遍历; 5、数组的默认初始化值; 6、数组的内存解析; 6、 数组元素的默认初始化值: 数组元素是整形:0; 数组元素是浮点型:0.0 数组元素是char型:0或’\u0000’,而非’0’ 数组元素是boolean型:false 数组元素是引用数据类型:null 代码: public class ArrayTest { public static void main ( String [ ] args ) { //1. 一维数组的声明和初始化 int num ; //声明 num =

SpringBoot源码篇:Spring5内置tomcat实现code-based的web.xml实现

主宰稳场 提交于 2020-02-14 06:19:20
一、简介    上篇文章 讲了SpingBoot诞生的历史背景和技术演进背景,并通过源码说明了SpringBoot是如何实现零配置的包括如何省去web.xml配置的原理。本文接上一篇文章,通过demo演示SpringBoot是如何内置tomcat并实现基于java配置的Servlet初始化和SpringBoot的启动流程。 二、基于java配置的web.xml实现 传统SpringMVC框架web.xml的配置内容 1 <web-app> 2 <!-- 初始化Spring上下文 --> 3 <listener> 4 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 5 </listener> 6 <!-- 指定Spring的配置文件 --> 7 <context-param> 8 <param-name>contextConfigLocation</param-name> 9 <param-value>/WEB-INF/app-context.xml</param-value> 10 </context-param> 11 <!-- 初始化DispatcherServlet --> 12 <servlet> 13 <servlet-name>app<

单例模式

冷暖自知 提交于 2020-02-14 03:37:08
一个jvm中,只能有一个实例,保证对象唯一 应用场景: windows的任务管理器就是呀,小伙伴们不信可以点击下试试,看看能创建几次 servlet 连接池 线程池 spring(默认单例)枚举 常量 为啥设置单例? 优点? 保证对象的唯一性 节约内存 方便管理 重复利用 缺点? 线程安全问题 单例模式 什么是单例 保证一个类只有一个实例,并且提供一个访问该全局访问点 单例应用场景 1. Windows的Task Manager(任务管理器)就是很典型的单例模式(这个很熟悉吧),想想看,是不是呢,你能打开两个windows task manager吗? 不信你自己试试看哦~ 2. windows的Recycle Bin(回收站)也是典型的单例应用。在整个系统运行过程中,回收站一直维护着仅有的一个实例。 3. 网站的计数器,一般也是采用单例模式实现,否则难以同步。 4. 应用程序的日志应用,一般都何用单例模式实现,这一般是由于共享的日志文件一直处于打开状态,因为只能有一个实例去操作,否则内容不好追加。 5. Web应用的配置对象的读取,一般也应用单例模式,这个是由于配置文件是共享的资源。 6. 数据库连接池的设计一般也是采用单例模式,因为数据库连接是一种数据库资源。数据库软件系统中使用数据库连接池,主要是节省打开或者关闭数据库连接所引起的效率损耗,这种效率上的损耗还是非常昂贵的

JC2 递推,递归与分治

喜欢而已 提交于 2020-02-14 01:43:06
递推,递归与分治 递推 什么是递推 递推,就是从小的解开始,一步一步推到最优解的过程。 如何递推 这就要看具体情况,想出递推式,然后一步一步递推即可。 递推如何应用 讲这个之前,我们不妨先讲一讲递推如何具体实现。 第一步是先 初始化 。切记! 有两种表示方法: 数组递推法,如 f[i] = f[i-1]+f[i-2]; 记忆化搜索,若冗余状态比较多则需要记忆化,否则直接调用即可。注意递归的结束,否则MLE或TLE后果自负。 那么,什么是冗余状态呢? 这是一个关于f(5)的解答树,可以看见,红色的都是被重复计算的,很多节点被重复计算了多次,若数比较大,重复计算的可不止这几个,而是一颗巨大的子树。 我们在计算时用数组记录已经算出的结果,就是记忆化搜索的核心思想。 来源: https://www.cnblogs.com/lhy-cblog/p/12306015.html

Spring MVC源码——Root WebApplicationContext

戏子无情 提交于 2020-02-13 14:34:12
Spring MVC源码——Root WebApplicationContext   打算开始读一些框架的源码,先拿 Spring MVC 练练手,欢迎 点击这里 访问我的源码注释, SpringMVC 官方文档 一开始就给出了这样的两段示例: WebApplicationInitializer示例: public class MyWebApplicationInitializer implements WebApplicationInitializer { @Override public void onStartup(ServletContext servletCxt) { // Load Spring web application configuration AnnotationConfigWebApplicationContext ac = new AnnotationConfigWebApplicationContext(); ac.register(AppConfig.class); ac.refresh(); // Create and register the DispatcherServlet DispatcherServlet servlet = new DispatcherServlet(ac); ServletRegistration.Dynamic

最小生成树(模板)

匆匆过客 提交于 2020-02-13 14:07:16
51nod1212最小生成树模板题: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1212 克鲁斯卡尔(加边法):先取最小的边,在判断是不是一个集合(不是舍去,是加上) 普里姆(加点法):先已经判断了不是一个集合,再从不是的集合中找出最小的边把点加入,最后更新(再取,再更新。。) 都是加到n-1条边停止(n个点最少由n-1条边连通),另外,Kruskal不用考虑重边(并查集自动取舍),Prim需要考虑重边(不考虑必错!) (关于去最小边,克鲁斯卡尔事先排序好按顺序取即可,所以是n*logn;普里姆每轮之后都要更新,所以每次取都循环找一次,所以是n*n,当然最后还可以优化这里就不说了) 克鲁斯卡尔 以边为重点进行各种操作,点不是重点,所以存图方式不重要很简单。(把边连接信息表示出来就行,结构体完美表示) 另外关于并查集,初学并查集推荐不用深度优化,只改变父节点就行更加好理解,而且时间也差不了多少 初级并查集 1 #include <iostream> 2 #include <string> 3 #include <algorithm> 4 #include <iomanip> 5 #include <cstdio> 6 #include <cstring> 7 using namespace std; 8

Spring的生命周期

烈酒焚心 提交于 2020-02-13 11:33:26
文章目录 1. 什么是Bean的生命周期 2.生命周期--初始化与销毁1(正规军) 单例: 多例: 3. 生命周期—初始化与销毁2 4. 生命周期---初始化与销毁3 5. 生命周期-BeanPostProcessors 6. 六种销毁创建同时定义的情况 1. 什么是Bean的生命周期 Bean的生命周期是指Bean创建–》初始化–》销毁的过程 我们可以自定义Bean的初始化和销毁方法 容器在bean进行到当前生命周期的时候,来调用自定义的初始化和销毁方法 2.生命周期–初始化与销毁1(正规军) 指定初始化init-method方法 指定销毁destory-method方法 public class Bike { public Bike ( ) { System . out . println ( "Bike constructor..............." ) ; } public void init ( ) { System . out . println ( "Bike...........init........." ) ; } public void destroy ( ) { System . out . println ( "Bike....... destroy........." ) ; } } 单例: @Configuration public class