自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(89)
  • 资源 (20)
  • 收藏
  • 关注

原创 数据库中间件-jdbi

文章来源:https://www.jianshu.com/p/1ee34c858cb9Java 的数据库原生使用 jdbc,中间件有很多,例如说 hibernate、mybatis、jdbi,这几种是最常用的中间件。怎么选择一般情况下,如果始终只会使用到一种数据库,jdbc 就是最好的选择了,使用这种方式,就是直接使用最底层的东西,定位问题等都非常方便。数据库中间件就是节省开发人力,用很少的代码就可以快速开发。但是也会引入一些复杂度,特别是如果对中间件不熟悉或者中间件存在 bug,会导致更高.

2020-05-20 22:27:03 1036

原创 Python自动更换壁纸爬虫与tkinter结合

直接上代码import ctypesimport timeimport requestsimport osfrom threading import Threadfrom tkinter import Tk, Label, Button,Entry,StringVar,messagebox# '放到AppData\Roaming\Microsoft\Windows\Start M...

2020-03-28 11:11:26 311 1

原创 JVM监控命令详解

JVM监控命令基本就是 jps、jstack、jmap、jhat、jstat 几个命令的使用就可以了JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps、jstack、jmap、jhat、jstat等小巧的工具,本博客希望能起抛砖引玉之用,让大家能开始对JVM性能调优的常用工具有所了解。现实企业级Java开发中,有时候我们会碰到下面这...

2020-01-10 14:40:31 1105

翻译 谁不是一边娶妻生子,一边死在路上。请你好好生活

今天分享一个不一样的:谁不是一边娶妻生子,一边死在路上。请你好好生活18岁,你上了大学20岁,你大二_结束,开始悔恨。自己前两年的幼稚行为于是开始努力22岁你大学毕业了,却发现找不到一份另自己满意的工作。26岁,你看着身边的人一个个都结了婚。婚礼的份子钱逐年递增。春节回家,父母带你去串亲戚。变成了带你去见相亲对象见了十几个姑娘你每次都觉得和那个她比差了一点28岁,你在遇见了一个和你遭遇差...

2019-12-11 10:50:58 1080

原创 Java注解合并,注解继承

spring中有时候一个类上面标记很多注解。实际上Java注解可以进行继承(也就是把多个注解合并成1个)比如说SpringMVC的注解@RestController@RequestMapping("/person")可以合并为一个@PathRestController("/user")实现是:import java.lang.annotation.Documented;imp...

2019-12-07 14:53:45 1917

原创 git 切换远程仓库地址

1、切换远程仓库地址:方式一:修改远程仓库地址【git remote set-url origin URL】 更换远程仓库地址,URL为新地址。方式二:先删除远程仓库地址,然后再添加【git remote rm origin】 删除现有远程仓库【git remote add origin url】添加新远程仓库2、【git remote -v 】查看远程仓库的地址...

2019-11-21 15:30:17 903

原创 压缩20M文件从30秒到1秒的优化过程

文章来源公众号:IT牧场有一个需求需要将前端传过来的10张照片,然后后端进行处理以后压缩成一个压缩包通过网络流传输出去。之前没有接触过用Java压缩文件的,所以就直接上网找了一个例子改了一下用了,改完以后也能使用,但是随着前端所传图片的大小越来越大的时候,耗费的时间也在急剧增加,最后测了一下压缩20M的文件竟然需要30秒的时间。压缩文件的代码如下。public static void...

2019-11-20 10:42:25 874

原创 CentOS 7下MySQL 5.7安装

5.7和之前版本的MySQL有一些不同,现把CentOS 7下MySQL 5.7安装、配置与应用完整过程记下来,或许对新手来说有用。本文描述的安装是采用通用的二进制压缩包(linux – Generic)以解压方式安装,相当于绿色安装了。一、下载通用安装二进制包先下载mysql安装包:打开 http://dev.mysql.com/downloads/mysql/选择 linux – Gen...

2019-11-08 11:26:23 895

原创 CentOS6.5下安装JDK1.7 MYSQL5.5 TOMCAT7 nginx1.7.5环境安装文档

----------------CentOS6.5下安装JDK1.7 MYSQL5.5 TOMCAT7 nginx1.7.5环境安装文档-----------------------【JDK1.7安装】1)登录Sun的JDK官方下载网 址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-18802...

2019-11-08 11:24:40 1088

原创 CentOS下安装FreeTDS

导读官方网站:http://www.freetds.org下载地址:http://ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz这个软件能够用Linux和Unix连接MS SQLServer和Sybase数据库安装与配置首先下载FreeTDS安装包到服务器 wget -c http://...

2019-11-05 14:20:39 2037

原创 重温乔布斯最经典演讲:求知若饥-虚心若愚

  Thank you. I am honored to be with you today at your commencement from one of the finest universities in the world. Truth be told, I never graduated from college. This is the closest I’ve ever gott...

2019-11-04 16:36:05 1216

原创 公共DNS性能大比拼

​ 今天中午,访问Gitee突然访问不进去,然后收到红薯通知:阿里云停止了 Gitee.com 的域名解析。​ ​ 码云官方也随后给出解决办法没有任何提示,没有任何提前通知,阿里云停止了 Gitee.com 的域名解析!!!我们正在跟阿里云联系了解具体情况!如果你访问不了请暂时在 hosts 里映射 gitee.com 域名到 IP地址 212.64.62.174对...

2019-10-21 18:22:35 3114

原创 Python自动更换壁纸爬虫与tkinter结合

直接上代码import ctypesimport timeimport requestsimport osfrom threading import Threadfrom tkinter import Tk, Label, Button,Entry,StringVar,messagebox# '放到AppData\Roaming\Microsoft\Windows\Start Men...

2019-10-16 17:37:33 365

原创 MySQL的5种时间类型的比较

日期时间类型占用空间日期格式最小值最大值零值表示DATETIME8 bytesYYYY-MM-DD HH:MM:SS1000-01-01 00:00:009999-12-31 23:59:590000-00-00 00:00:00TIMESTAMP4 bytesYYYY-MM-DD HH:MM:SS197001010800012038 年的某个时刻0...

2019-10-15 11:54:01 1289

原创 MySQL在CentOS上执行自动备份

​ 开发中我们常常有使用Svn或者Git来管理我们的代码或者是项目相关的文件,然而他们都有一个共同点就是:版本控制​ 很多人会问为什么要使用Svn或者是Git,那么我会问:我相信你写的代码很好,但是有一天你修改了很多很多的Bug,但是突然想到以前的代码中有一个比较重要的算法你不小心覆盖掉了,这时候你应该怎么办?​ 或许你会告诉我你可以在修改这些代码之前备份一次当前修改的文件...

2019-10-13 23:41:57 373

原创 Lombok介绍、使用方法和总结

文章来源公众号:猿人谷1 Lombok背景介绍官方介绍如下:Project Lombok makes java a spicier language by adding 'handlers' that know how to build and compile simple, boilerplate-free, not-quite-java code.大致意思是Lombok通过增...

2019-09-30 10:37:30 879

原创 高可用的一些思考和理解

本文来源公众号:匠心零度在目前的互联网大时代,在高并发等冲击下,还必须保证服务高可用,如果服务不高可用那么意味着:系统不是7*24小时提供服务,那么用户体验就特别差了,可能用户下次不用了,留不住用户。当系统不可用的时候,对公司的形象是有所影响的,BAT类似这种技术都是象征的。最重要的一点,当系统不可用的时候,直接损失就是金钱!!!基本都是秒算损失的,依稀记得2015年5月28日...

2019-09-29 10:56:37 866

原创 [sonarqube的使用] sonarlint在idea&eclipse中安装与使用

介绍​ 代码质量管理的开源平台,用于管理源代码的质量 通过插件形式,可以支持包括java,C#,C/C ,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测。集成了CheckStyle,PMD,Findbugs等工具校验规则,具有重复代码发现,代码测试覆盖率,代码注释率,及所有的检测率变化追踪的功能特性。特点​ ...

2019-09-27 10:43:32 1225

原创 [sonarqube的使用] sonarqube安装

一 . SonarQube代码质量检查工具简介Sonar (SonarQube)是一个开源平台,用于管理源代码的质量Sonar 不只是一个质量数据报告工具,更是代码质量管理平台支持Java, C#, C/C , PL/SQL, Cobol, JavaScrip, Groovy 等等二十几种编程语言的代码质量管理与检测。Sonar可以从以下七个维度检测代码质量,而作为开发人员至少...

2019-09-26 11:16:52 950

原创 【JVM从小白学成大佬】4.Java虚拟机何谓垃圾及垃圾回收算法

原文来自公众号:猿人谷在Java中内存是由虚拟机自动管理的,虚拟机在内存中划出一片区域,作为满足程序内存分配请求的空间。内存的创建仍然是由程序猿来显示指定的,但是对象的释放却对程序猿是透明的。就是解放了程序猿手动回收内存的工作,交给垃圾回收器来自动回收。在虚拟机中,释放哪些不再被使用的对象所占空间的过程称为垃圾收集(Garbage Collection,GC)。负责垃圾收集的程序模块,...

2019-09-25 22:31:07 884

原创 教程|教你如何给你的头像添加一个好看的国旗

今天朋友圈又火了,听说原因是 @腾讯官网 就能得到一顶绿色的帽子,啊呸,是一个好看的国庆节头像,可是听说没一会就502了,那么我们自己动手实现一个吧由于代码比较简单就不一一介绍了。var cvs = document.getElementById("cvs");var ctx = cvs.getContext("2d");var exportImage = document.getElem...

2019-09-24 17:33:35 3232

原创 【JVM学习】3.深入解析强引用、软引用、弱引用、幻象引用

来源:公众号:猿人谷关于强引用、软引用、弱引用、幻象引用的区别,在很多公司的面试题中经常出现,可能有些小伙伴觉得这个知识点比较冷门,但其实大家在开发中经常用到,如new一个对象的时候就是强引用的应用。在java语言中,除了原始数据类型(boolean、byte、short、char、int、float、double、long)的变量,其他所有都是所谓的引用类型,指向各种不同的对象。理...

2019-09-23 10:48:59 840

原创 【JVM学习】3.深入解析强引用、软引用、弱引用、幻象引用

来源:公众号:猿人谷关于强引用、软引用、弱引用、幻象引用的区别,在很多公司的面试题中经常出现,可能有些小伙伴觉得这个知识点比较冷门,但其实大家在开发中经常用到,如new一个对象的时候就是强引用的应用。在java语言中,除了原始数据类型(boolean、byte、short、char、int、float、double、long)的变量,其他所有都是所谓的引用类型,指向各种不同的对象。理...

2019-09-23 10:19:37 106

原创 【JVM学习】2.Java虚拟机运行时数据区

来源: 公众号: 猿人谷这里我们先说句题外话,相信大家在面试中经常被问到介绍Java内存模型,我在面试别人时也会经常问这个问题。但是,往往都会令我比较尴尬,我还话音未落,面试者就会“背诵”一段(Java虚拟机是由堆、方法区、虚拟机栈,吧啦吧啦。。。),估计心里还一脸自豪的想幸好哥提前在网上搜过,早有准备。每每这个时候,我都不忍心打断,因为“背诵”的真的太顺畅了!这也怪不得面试者,首先J...

2019-09-22 13:20:13 986

原创 js中将字符串转换成json的三种方式

使用ajax的开发项目过程中,经常需要将json格式的字符串返回到前端,前端解析成js对象(JSON )。ECMA-262(E3) 中没有将JSON概念写到标准中,还好在 ECMA-262(E5) 中JSON的概念被正式引入了,包括全局的JSON对象和Date的toJSON方法。1,eval方式解析,恐怕这是最早的解析方式了。如下:function strToJson(str) {...

2019-09-21 10:45:25 2061

原创 深入浅出Mysql索引的那些事儿

文章来源:公众号:猿人谷一.索引的作用一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,所以查询语句的优化显然是重中之重。在数据量和访问量不大的情况下,mysql访问是非常快的,是否加索引对访问影响不大。但是当数据量和访问量剧增的时候,就会发现mysql变慢,甚至down掉,这就必须要考虑优...

2019-09-20 09:47:11 831

原创 Git 分支管理规范

Git 仓库申请流程开发主管向 Git 管理员提交 Git 仓库申请【邮件:发送给 Git 管理员,抄送给项目经理,申请表可向 Git 管理员获取】Git 管理员审批开发主管的申请,审批以下具体信息:审批邮件是否抄送给项目经理申请的 Git 仓库名称是否符合命名规范若审批通过,则 Git 管理员完成以下任务:创建 Git 仓库设置开发主管为 Git 仓库的 Master...

2019-09-19 10:04:34 961

原创 百度地图WEB端判断用户是否在网格范围内

在pc端设置商家的配送范围,用户在下单时,根据用户设置的配送地点判断是否在可配送范围内,并给用户相应的提示。下面说下我的实现思路:1.用百度地图在PC端设置配送范围,可拖拽选择2.根据用户设置的配送地址判断是否在配送范围内一、百度地图PC端获取范围改动百度地图官网的demo,设置配送范围。思路:获取多边形的顶点,以json的形式保存到数据库。百度API关于多边形覆盖物:构造函数:...

2019-09-18 09:54:47 1270

原创 使用ECMAScript 6 模块封装代码

JavaScript 用“共享一切”的方法加载代码,这是该语言中最容易出错且最容易让人感到困惑的地方。其他语言使用诸如包这样的概念来定义代码作用域,但在 ECMAScript 6 以前,在应用程序的每一个 JavaScript 中定义的一切都共享一个全局作用域。随着 Web 应用程序变得更加复杂,JavaScript 代码的使用量也开始增长,这样会引起问题,如命名冲突和安全问题。ECMAScri...

2019-09-17 10:27:20 539

原创 JavaScript生成一个不重复的ID

/** * 生成一个用不重复的ID */function GenNonDuplicateID():String{ }先看看下面的几个方法1.生成[0,1)的随机数的Math.random,例如//我这次运行生成的是:0.5834165740043102Math.random()2.获取当前时间戳Date.now//现在时间戳是1482645606622Da...

2019-09-16 11:38:35 1680

原创 编写自己的代码库

1.前言大家在开发的时候应该知道,有很多常见的实例操作。比如数组去重,关键词高亮,打乱数组等。这些操作,代码一般不会很多,实现的逻辑也不会很难,下面的代码,我解释就不解释太多了,打上注释,相信大家就会懂了。但是,用的地方会比较,如果项目有哪个地方需要用,如果重复写的话,就是代码沉余,开发效率也不用,复用基本就是复制粘贴!这样是一个很不好的习惯,大家可以考虑一下把一些常见的操作封装成函数,调用的时...

2019-09-12 09:58:03 1138

原创 利用setenv进行tomcat 内存设置

part.1 系统环境及版本系统环境: centos 7版本: tomcat 7.0.78part.2 步骤流程2.1 新建setenv.sh# cd /usr/local/tomcat/bin# touch setenv.sh2.2 添加内存信息# vim setenv.shexport CATALINA_OPTS="$CATALINA_OPTS -Xms{{ Xms ...

2019-09-11 09:57:58 2373

原创 使用Nginx、Nginx Plus防止服务器DDoS攻击

分布式拒绝服务攻击(DDoS)指的是通过多台机器向一个服务或者网站发送大量看似合法的数据包使其网络阻塞、资源耗尽从而不能为正常用户提供正常服务的攻击手段。随着互联网带宽的增加和相关工具的不断发布,这种攻击的实施难度越来越低,有大量IDC托管机房、商业站点、游戏服务商一直饱受DDoS攻击的困扰,那么如何缓解甚至解决DDoS呢?最近Rick Nelson在Nginx的官方博客上发表了一篇文章,介绍了如...

2019-09-10 10:16:36 883

原创 【Nginx】实现负载均衡的几种方式

要理解负载均衡,必须先搞清楚正向代理和反向代理。注:正向代理,代理的是用户。反向代理,代理的是服务器什么是负载均衡当一台服务器的单位时间内的访问量越大时,服务器压力就越大,大到超过自身承受能力时,服务器就会崩溃。为了避免服务器崩溃,让用户有更好的体验,我们通过负载均衡的方式来分担服务器压力。我们可以建立很多很多服务器,组成一个服务器集群,当用户访问网站时,先访问一个中间服务器...

2019-09-09 10:46:23 851

原创 一台Linux服务器可以负载多少个连接?

首先我们来看如何标识一个TCP连接?系统是通过一个四元组来识别,(srcip,srcport,dstip,dstport)即源IP、源端口、目标IP、目标端口。比如我们有一台服务192.168.0.1,开启端口80.那么所有的客户端都会连接到这台服务的80端口上面。有一种误解,就是我们常说一台机器有65536个端口,那么承载的连接数就是65536个,这个说法是极其错误的,这就混淆了源端口和访问目...

2019-09-07 11:01:13 1334

原创 Linux配置使用SSH Key登录并禁用root密码登录

Linux系统大多数都支持OpenSSH,生成公钥、私钥的最好用ssh-keygen命令,如果用putty自带的PUTTYGEN.EXE生成会不兼容OpenSSH,从而会导致登录时出现server refused our key错误。1、root用户登陆后,运行以下第一句指令,其他根据提示进行输入:ssh-keygen -t rsaGenerating public/private rsa...

2019-09-06 19:47:48 1161

原创 Spring JPA事务

[TOC]1. 概述本文将讨论 配置Spring Transactions的正确方法, 如何使用 @Transactional 注解和常见陷阱。有关核心持久性配置的更深入讨论,请查看 Spring JPA教程。通常,有两种不同的方式来配置事务: 注解和AOP,每个都有自己的优势。 我们将在这里讨论更常见的注解配置。促进阅读:为测试配置单独的Spring DataSource有关在...

2019-09-05 10:28:45 649

原创 使用SVN钩子强制提交日志和限制提交文件类型

Subversion本身有很好的扩展性,用户可以通过钩子实现一些自定义的功能。所谓钩子实际上是一种事件机制,当系统执行到某个特殊事件时,会触发我们预定义的动作,这样的特殊事件在Subversion里有很多。那么SVN的钩子有哪些呢?下面简单介绍下:服务器钩子:锁定的2种pre-lock钩子在每次有人尝试锁定文件时执行。可以防止完全锁定,或者用来创建控制哪些用户可以锁定哪些路径的复杂策略...

2019-09-04 10:07:40 1118

原创 log4j2配置文件log4j2.xml

一、背景  最近由于项目的需要,我们把log4j 1.x的版本全部迁移成log4j 2.x 的版本,那随之而来的slf4j整合log4j的配置(使用Slf4j集成Log4j2构建项目日志系统的完美解决方案)以及log4j2配置文件的详解,就需要我们来好好聊一聊了。本文就专门来讲解下log4j2.xml配置文件的各项标签的意义。二、配置全解  1.关于配置文件的名称以及在项目中的存放位置  ...

2019-09-03 09:40:25 915

原创 在spring中使用Hibernate5

[TOC]1. OverviewIn this article, we’ll discuss how to bootstrap Hibernate 5 with Spring, using both Java and XML configuration.2. Spring IntegrationBootstrapping a SessionFactory with the native H...

2019-09-02 10:08:59 988

iec61850动态库

IEC61850标准是电力系统自动化领域唯一的全球通用标准。它通过标准的实现,实现了智能变电站的工程运作标准化。使得智能变电站的工程实施变得规范、统一和透明。 文件包含IEC61850相关的多个DLL,iec61850.dll,iec61850dotnet.dll,nunit.framework.dll,前两个是必须的在工程中引用第二个,即可使用相关的接口功能

2023-09-23

二维码文件传输;能复制文件进去,不能复制文件出来

原理就是把文件分段,生成二维码,接收端截屏+解析,最后还原出文件内容; 把jar复制到远程桌面里面。 在远程桌面内运行jar,点击"Sender"。 保证FromForm的界面完整显示,不被其他窗口或者远程桌面的边框所遮盖。你可以在设置界面调整QR code图片的大小和布局(从ToForm进)。 在远程桌面外运行jar,点击"Start",你会看到一个消息描述了捕捉区域,如果没有,很可能是因为FromForm被挡住了没有完全显示。 在远程桌面里的FromForm界面选择需要发送的文件/文件夹,然后点击"Send",你会在两边都看到传输进度条。 等待传输完成。

2023-09-19

IOS17.2真机包,IOS17.2真机包,注意描述用法

This iPhone 6 is running iOS 10.3.1 (14E304), which may not be supported by this version of Xcode. Could not find Developer Disk Image

2023-09-19

基于Visual Studio 2019 C++编译的64位IEC61850动态库

基于Visual Studio 2019 C++编译的64位IEC61850动态库,操作接口及编译参考https://blog.csdn.net/rpybx/article/details/119568004

2023-05-29

MySQL数据库系统表说明和主要系统表详细说明

MySQL数据库系统表说明和主要系统表详细说明!里面有两个word文档,一个介绍了MySQL系统数据库information_schema里的所有表信息,一个介绍了MySQL系统数据库information_schema里主要表的详细信息,包括每个表字段的说明。

2021-03-26

技术方案设计文档模板.txt

技术方案设计文档模板.txt

2021-03-15

掌阅书城客户端产品需求文档 iphone_v2.0.0_本地功能.doc

掌阅书城客户端产品需求文档 iphone_v2.0.0_本地功能.doc

2021-03-15

vuexy-full-version6.2.zip

Vuexy – Vuejs + HTML Admin Dashboard Template – is the most developer friendly & highly customisable VueJS + HTML Admin Dashboard Template based on Vue CLI, Vuex & Vuexy component framework. 功能强大的VUE后台模板(只有VUE)

2021-03-15

hightopo HT for Web(hightopo.zip)

HT for Web 您可以轻松构建现代化的,跨桌面和移动终端的企业应用,无需担忧跨平台兼容性,及触屏手势交互等棘手问题

2021-02-25

inspinia 已升级至2.9.3版本

此模板于2019年11月12日已升级至2.9.3版本主要升级内容 1,bootstrap框架升级至4.3.1。 2,增加.net core 3.0完整版本和空项目 3,增加Ruby on Rails(6.0)完整版本和空项目

2020-03-27

PRD需求文档

app产品需求文档 (内含六个产品需求文档word文档 公司项目文档)

2019-07-10

inspinia 2.9版本,2019年03月29日已升级至2.9.2

NSPINIA是平面设计理念的管理模板。它是充分响应的由Bootstrap4 +框架开发的模板,HTML5和CSS3。它有很多可重用的UI组件和集成了最新的jQuery插件。它可以用于所有类型的web应用程序自定义管理面板中,项目管理系统,管理仪表板,应用程序的后端,CMS或CRM。 1,bootstrap框架升级至4.1。

2019-04-24

hyper-ui,超好看的前端框架

hyper-ui,超好看的前端框架,是一套超好看的前端框架

2019-01-04

super-admin 2.1.2版本

super-admin 前端框架,v2.1.2版本,是一套非常花俏的UI界面,

2019-01-04

inspinia_v2.8, inspinia 2.8

inspinia 前端框架,v 2.8最新版本,是一套非常好的UI界面,

2018-08-13

darwin, darwin1012

VMWare for mac的tools,最新版本10.1.2。安装vmtools的时候设置关联到该iso文件既可以识别安装

2018-08-13

SSH+Activiti

demo中是整合SSH+Activiti的环境搭建的简易demo,通俗易懂,适合于初学者

2018-05-09

Java 8函数式编程

Java 8函数式编程, 本书采用了示例驱动的写作风格:介绍完一个概念之后,就会紧跟一段代码。代码中的一些片段,有时你可能无法全部看懂。没关系,通常在代码后面会紧跟一段文字,讲解代码的细节。

2018-05-04

深度学习、优化与识别.焦李成(带详细书签)

深度学习是计算机科学与人工智能的重要组成部分。全书16章,分为理论与实践应用两部分,同时介绍5种深度学习主流平台的特性与应用,最后给出了深度学习的前沿进展介绍,另附带47种相关网络模型的实现代码。本书具有以下的特点: 一、内容系统全面 全书16章,覆盖了深度学习当前出现的诸多经典框架或模型,分为两个部分。第一部分系统地从数据、模型、优化目标函数和求解等四个方面论述了深度学习的理论及算法,如卷积神经网络、深度生成模型等;第二部分基于5种主流的深度学习平台给出了深度网络在自然图像、卫星遥感影像等领域的应用,如分类、变化检测、目标检测与识别等任务。另外给出了深度学习发展的脉络图及最新研究进展,提供可基于5种平台实现的47中深度网络代码,以便有兴趣的读者进一步钻研探索。 二、叙述立场客观 作为深度学习的入门教材,尽可能不带偏见地对材料进行分析、加工以及客观介绍。本书理论部分均从模型产生的本源来介绍,并给出各个经典模型之间内在的相互联系。本书实践应用部分对相关任务做了详尽的分析,并给出深度学习应用实践的经验总结。 三、设计装帧精美 该书设计人性化,文字、公式、数学符号混排格式美观精致,特别是,全书采用全彩印制,软精装装帧。封面设计清新却不脱俗、学术化,足可以看出 出版社和作者的用心。 媒体推荐 IEEE Fellow获得者焦李成教授学术著作,系统论述深度学习的基本理论、算法及应用,展望深度学习的前沿方向。 作者简介 焦李成,男,汉族,1959年10月生,1992年起任西安电子科技大学教授。现任智能感知与计算国际联合研究中心主任、智能感知与图像理解教育部重点实验室主任、智能感知与计算国际合作联合实验室主任、“智能信息处理科学与技术”高等学校学科创新引智基地(“111计划”)主任、教育部科技委国际合作部学部委员、中国人工智能学会副理事长、IET西安分会主席、IEEE西安分会奖励委员会主席、IEEE计算智能协会西安分会主席、IEEE GRSS西安分会主席,IEEE TGRS副主编、教育部创新团队首席专家。国务院学位委员会学科评议组成员、教育部本科教学水平评估专家。1991年被批准为享受国务院政府津贴的专家,1996年首批入选国家“百千万”人才工程(第壹、二层次)。当选为全国模范教师、陕西省师德标兵和曾任第八届全国人大代表。焦李成教授的主要研究方向为智能感知与计算、图像理解与目标识别、深度学习与类脑计算,培养的十余名博士获全国优秀博士学位论文奖、提名奖及陕西省优秀博士论文奖。研究成果获包括国家自然科学奖二等奖及省部级一等奖以上科技奖励十余项,出版学术专著十余部,五次获国家优秀科技图书奖励及全国首届三个一百优秀图书奖。所发表的论著被他人引用超过25000余篇次,H指数为65。 目录 第1章深度学习基础1 1.1数学基础2 1.1.1矩阵论2 1.1.2概率论3 1.1.3优化分析5 1.1.4框架分析6 1.2稀疏表示8 1.2.1稀疏表示初步8 1.2.2稀疏模型20 1.2.3稀疏认知学习、计算与识别的范式24 1.3机器学习与神经网络31 1.3.1机器学习31 1.3.2神经网络36 参考文献38 第2章深度前馈神经网络41 2.1神经元的生物机理42 2.1.1生物机理42 2.1.2单隐层前馈神经网络43 2.2多隐层前馈神经网络45 2.3反向传播算法47 2.4深度前馈神经网络的学习范式48 参考文献51 第3章深度卷积神经网络54 3.1卷积神经网络的生物机理及数学刻画55 3.1.1生物机理55 3.1.2卷积流的数学刻画56 3.2深度卷积神经网络61 3.2.1典型网络模型与框架61 3.2.2学习算法及训练策略69 3.2.3模型的优缺点分析71 3.3深度反卷积神经网络73 3.3.1卷积稀疏编码74 3.3.2深度反卷积神经网络75 3.3.3网络模型的性能分析与应用举例77 3.4全卷积神经网络77 3.4.1网络模型的数学刻画77 3.4.2网络模型的性能分析及应用举例79 参考文献80 第4章深度堆栈自编码网络83 4.1自编码网络84 4.1.1逐层学习策略84 4.1.2自编码网络84 4.1.3自编码网络的常见范式87 4.2深度堆栈网络90 4.3深度置信网络/深度玻尔兹曼机网络93 4.3.1玻尔兹曼机/受限玻尔兹曼机93 4.3.2深度玻尔兹曼机/深度置信网络94 参考文献96 第5章稀疏深度神经网络99 5.1稀疏性的生物机理100 5.1.1生物视觉机理100 5.1.2稀疏性响应与数学物理描述102 5.2稀疏深度网络模型及基本性质102 5.2.1数据的稀疏性103 5.2.2稀疏正则103 5.2.3稀疏连接104 5.2.4稀疏分类器设计106 5.2.5深度学习中关于稀疏的技巧与策略108 5.3网络模型的性能分析110 5.3.1稀疏性对深度学习的影响110 5.3.2对比实验及结果分析110 参考文献111 第6章深度融合网络113 6.1深度SVM网络114 6.1.1从神经网络到SVM114 6.1.2网络模型的结构115 6.1.3训练技巧117 6.2深度PCA网络117 6.3深度ADMM网络119 6.4深度极限学习机121 6.4.1极限学习机121 6.4.2深度极限学习机123 6.5深度多尺度几何网络125 6.5.1深度脊波网络125 6.5.2深度轮廓波网络127 6.6深度森林130 6.6.1多分辨特性融合131 6.6.2级联特征深度处理131 参考文献133 第7章深度生成网络136 7.1生成式对抗网络的基本原理137 7.1.1网络模型的动机137 7.1.2网络模型的数学物理描述139 7.2深度卷积对抗生成网络141 7.2.1网络模型的基本结构141 7.2.2网络模型的性能分析144 7.2.3网络模型的典型应用146 7.3深度生成网络模型的新范式151 7.3.1生成式对抗网络的新范式151 7.3.2网络框架的性能分析与改进154 7.4应用驱动下的两种新生成式对抗网络155 7.4.1堆栈生成式对抗网络155 7.4.2对偶学习范式下的生成式对抗网络158 7.5变分自编码器160 参考文献162 第8章深度复卷积神经网络与深度二值神经网络167 8.1深度复卷积神经网络168 8.1.1网络模型构造的动机168 8.1.2网络模型的数学物理描述168 8.2深度二值神经网络172 8.2.1网络基本结构172 8.2.2网络的数学物理描述173 8.2.3讨论176 参考文献177 第9章深度循环和递归神经网络180 9.1深度循环神经网络181 9.1.1循环神经网络的生物机理181 9.1.2简单的循环神经网络181 9.1.3深度循环神经网络的数学物理描述183 9.2深度递归神经网络188 9.2.1简单的递归神经网络188 9.2.2深度递归神经网络的优势189 9.3长短时记忆神经网络190 9.3.1改进动机分析190 9.3.2长短时记忆神经网络的数学分析191 9.4典型应用192 9.4.1深度循环神经网络的应用举例193 9.4.2深度递归神经网络的应用举例194 参考文献194 第10章深度强化学习197 10.1深度强化学习基础198 10.1.1深度强化学习的基本思路198 10.1.2发展历程198 10.1.3应用的新方向200 10.2深度Q网络201 10.2.1网络基本模型与框架201 10.2.2深度Q网络的数学分析202 10.3应用举例—AlphaGo204 10.3.1AlphaGo原理分析205 10.3.2深度强化学习性能分析206 参考文献207 第11章深度学习软件仿真平台及开发环境209 11.1Caffe平台210 11.1.1Caffe平台开发环境210 11.1.2AlexNet神经网络学习210 11.1.3AlexNet神经网络应用于图像分类212 11.2TensorFlow平台215 11.2.1TensorFlow平台开发环境215 11.2.2深度卷积生成式对抗网DCGAN216 11.2.3DAN应用于样本扩充217 11.3MXNet平台220 11.3.1MXNet平台开发环境220 11.3.2VGG—NET深度神经网络学习222 11.3.3图像分类应用任务225 11.4Torch 7平台226 11.4.1Torch 7平台开发环境226 11.4.2二值神经网络227 11.4.3二值神经网络应用于图像分类239 11.5Theano平台233 11.5.1Theano平台开发环境233 11.5.2递归神经网络234 11.5.3LSTM应用于情感分类任务237 参考文献238 第12章基于深度神经网络的SAR/PolSAR影像地物分类240 12.1数据集及研究目的241 12.1.1数据集特性分析241 12.1.2基本数据集244 12.1.3研究目的247 12.2基于深度神经网络的SAR影像地物分类251 12.2.1基于自适应自编码和超像素的SAR图像分类251 12.2.2基于卷积中层特征学习的SAR图像分类257 12.3基于第一代深度神经网络的PolSAR影像地物分类263 12.3.1基于稀疏极化DBN的极化SAR地物分类263 12.3.2基于深度PCA网络的极化SAR影像地物分类267 12.4基于第二代深度神经网络的PolSAR影像地物分类271 12.4.1基于深度复卷积网络的极化PolSAR影像地物分类271 12.4.2基于生成式对抗网的极化PolSAR影像地物分类274 12.4.3基于深度残差网络的极化PolSAR影像地物分类278 参考文献280 第13章基于深度神经网络的SAR影像变化检测284 13.1数据集特点及研究目的285 13.1.1研究目的285 13.1.2数据基本特性288 13.1.3典型数据集291 13.2基于深度学习和SIFT特征的SAR图像变化检测293 13.2.1基本方法与实现策略284 13.2.2对比实验结果分析295 13.3基于SAE的SAR图像变化检测299 13.3.1基本方法与实现策略299 13.3.2对比实验结果分析303 13.4基于CNN的SAR图像变化检测305 13.4.1基本方法与实现策略305 13.4.2对比实验结果分析307 参考文献309 第14章基于深度神经网络的高光谱图像分类与压缩311 14.1数据集及研究目的312 14.1.1高光谱遥感技术312 14.1.2高光谱遥感的研究目的313 14.1.3常用的高光谱数据集314 14.2基于深度神经网络的高光谱影像的分类318 14.2.1基于堆栈自编码的高光谱影像的分类319 14.2.2基于卷积神经网络的高光谱影像的分类325 14.3基于深度神经网络的高光谱影像的压缩333 14.3.1基于深度自编码网络的高光谱图像压缩方法334 14.3.2实验设计及分类结果336 参考文献338 第15章基于深度神经网络的目标检测与识别340 15.1数据特性及研究目的341 15.1.1研究目的341 15.1.2常用数据集343 15.2基于快速CNN的目标检测与识别345 15.2.1R—CNN346 15.2.2FastR—CNN348 15.2.3FasterR—CNN349 15.2.4对比实验结果与分析352 15.3基于回归学习的目标检测与识别353 15.3.1YOLO353 15.3.2SSD356 15.3.3对比实验结果分析359 15.4基于学习搜索的目标检测与识别360 15.4.1基于深度学习的主动目标定位360 15.4.2AttentionNet363 15.4.3对比实验结果分析365 参考文献366 第16章总结与展望368 16.1深度学习发展历史图369 16.1.1从机器学习、稀疏表示学习到深度学习370 16.1.2深度学习、计算与认知的范式演进371 16.1.3深度学习形成脉络375 16.2深度学习的典型应用375 16.2.1目标检测与识别375 16.2.2超分辨376 16.2.3自然语言处理376 16.3深度神经网络的可塑性377 16.3.1旋转不变性377 16.3.2平移不变性378 16.3.3多尺度、多分辨和多通路特性378 16.3.4稀疏性379 16.4基于脑启发式的深度学习前沿方向380 16.4.1生物神经领域关于认知、识别、注意等的最新研究进展380 16.4.2深度神经网络的进一步研究方向382 16.4.3深度学习的可拓展性383 参考文献383 附录A基于深度学习的常见任务处理介绍386 附录B代码介绍393

2018-05-02

docker.chm

docker,Docker 教程 ,Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。

2018-04-10

轻量级分布式文件系统fastdfs_client-1.25.jar

FastDFS is an open source high performance DFS ( distributed file system ). It's major functions include: file storing, file syncing and file accessing, and design for high capacity and load balancing. FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。 FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。

2018-02-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除