自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yolan6824的博客

知足常乐

  • 博客(54)
  • 资源 (2)
  • 收藏
  • 关注

原创 论如何找tensorflow的源码

以前每次看博客总有大神贴出一大堆源码来解析,今天突然就想写一个关于怎么找tensorflow源码的文章,这里的源码我觉得是来源于调用的库,而调用的库肯定是在本地有存档,所以,找源码就是找tensorflow中的目录~论找函数源码的作用的话,我觉得首先就是源码中的注释很清晰,可以帮助搞懂函数参数的意义比如我要找实现rnn中一个函数的源码进入安装tensorflow的路径,如果对tenso...

2018-09-11 09:39:49 5708 6

原创 tensorflow实现两层神经网络 (附代码)

这里有两份代码,第一份代码是自己写的,第二份来自于腾讯云。腾讯云的代码可以达到90%的准确率。 import tensorflow as tfimport numpy as npimport pickleimport gzip# 首先定义输入def get_input():    f = gzip.open('./mnist.pkl.gz', 'rb')    train...

2018-08-13 22:06:42 1904

原创 Handler详解

跟Handler有关系的,包括Thread,Looper,Handler,MessageQueue。

2023-08-15 00:11:57 182

原创 ReentrantReadWriteLock

读+读+写(这里读、写分别代表申请读写的线程,按+的先后顺序,表示线程申请读写锁的时间顺序,比如在这里就代表,线程1申请了读锁,之后,线程2申请读锁,线程3申请写锁),这时候同步队列应该是什么样的呢?判断,如果下一个要唤醒的节点为写锁,则阻塞当前读锁的获取(至于为什么这么做,可能是因为担心饥饿问题把,毕竟读锁是共享的,如果一直都让读锁共享,很容易导致写锁一直没有机会获取)。在ReentrantLock中,公平锁与非公平锁的区别是,非公平锁不管同步队列中有没有线程在排队,都会先去获取锁。

2023-08-15 00:06:02 176

原创 Http缓存机制

真是一个庞大的话题。

2023-08-14 23:53:20 144

原创 http2

以下内容都是上面这篇文章的一些总结(或者说翻译hiahia)http2是由谷歌的SPDY之上演变而来的。主要涉及的技术包括:头部压缩,多路复用,请求优先级http2在socket和http之间,增加了一个binary framing层(二进制分帧层)。所以不会影响Http原先定义的任何header字段,但会影响他们传输时的编码方式。在http2,所有的http通信都被分成了更小的message和frames来进行传输,message和frame都是二进制编码。

2023-05-20 16:53:24 682

原创 okhttp篇6:DiskLruCache

okhttp的缓存机制。

2023-05-20 14:37:08 711

原创 okhttp篇5:BridgeInterceptor

而Cache,指的是存储Request对应的Response,以便于在服务器Response过期之前(max-age),可以直接使用本地的Response,减少请求时间,BridgeInterceptor,是发起网络请求之前的最后一个拦截器,主要将Request转换成可以用于网络连接的Request。这里的Cookie多指Request Header中存储的一些字段,比如sessionId之类的。因此下一篇讲okhttp的缓存机制:Cache。Cookie和Cache都是一种暂时的缓存。

2023-05-19 00:04:34 99

原创 okhttp篇4:RetryAndFollowUpInterceptor

RetryAndFollowUpInterceptor,跟名字一样,主要负责重试。路由异常身份认证失败重定向请求超时最多重试20次。重试的时候,如果发现已经cancel了,取消重试。下一篇讲下一个拦截器。

2023-05-18 00:08:37 801

原创 okhttp篇3:RealCall

okhttpclient.newCall() 实际返回的是RealCall。RealCall的execute方法是一个同步阻塞获取Response的方法。execute方法会调用Dispatcher.execute方法,将自己加入到Dispatcher的runningSyncCalls队列中,并在获取到Response之后,调用Dispatcher.finished方法,将自己从队列中移除。

2023-05-16 23:19:43 723

原创 okhttp篇2:Dispatcher

Dispatcher管理着一个线程池,3个calls,分别是同步正在执行的calls:runningSyncCalls,异步正在执行的calls:runningAsyncCalls,正在排队的异步calls,readyAsyncCalls。没有正在排队的同步calls,因为同步calls都是马上执行的(唯一有一个问题,没有看到同步call到底在哪里执行,异步call好歹调用了excutorService.execute了)。

2023-05-16 00:23:13 519

原创 okhttp篇1: OkhttpClient

对于第一点OkhttpClient,先从OkHttpClient的属性开始。接下来的Okhttp学习就围绕这3点慢慢讲了。后面学习完之后,上面的选项会逐渐补充完整。下一篇,先讲Dispatcher。

2023-05-15 23:54:09 636

原创 okhttp篇1: 总览

okio总览。

2023-05-15 23:32:28 50

原创 okio篇3-超时机制

okio的超时机制是怎么实现的

2023-05-07 12:06:38 708

原创 okio篇--总览

okio的总览

2023-05-07 11:10:26 512

原创 okio篇2-RealBufferedSource

介绍了okio中的RealBufferedSource类

2023-04-30 22:46:19 730

原创 okio篇 1.Buffer

Okio的两个基本概念:Source和Sink。Source对标基础io库中的InputStream,负责读数据。Sink对标OutputStream,负责写数据。Source和Sink的内部实现,都是一个Buffer。Buffer从字面意思理解就是一个缓冲区,跟BufferInputStream的概念比较类似。缓冲区的作用,就是可以减少调用系统api的次数,等缓冲区装满数据之后,再一次性调用系统api接口。而Buffer的底层实现是Segment链表。

2023-04-17 23:58:51 732

原创 Collection(3) HashSet源码解析

HashSet源码解析

2022-07-25 00:02:48 193 1

原创 LinkedHashMap源码解析

LinkedHashMap的源码解析。解读LinkedHashMap如何实现顺序记录的功能。

2022-06-25 17:21:25 317

原创 HashMap源码解析

HashMap的源码解析。讲解HashMap如何实现快速查找和插入。讲解HashMap如何进行扩容。

2022-06-25 17:01:16 359

原创 View的绘制流程-measure

View的绘制流程源码解析

2022-05-22 19:05:02 191

原创 JVM--GC相关

对象是否存活:引用计数法对一个对象,保存一个计数器,当有引用,计数器的值置为1当GC时,计数器为0的对象会被回收缺陷:对互相引用的对象,永远都没办法回收可达性算法没有被GC Root引用到的对象,都会被回收。充当GC Root的对象:本地方法栈 --> native方法创建的变量栈 方法区中的静态变量 栈帧中的本地变量 -->线程创建的变量栈 方法区中的常量引用类型强引用 软引用:内存溢出前回收,如果回收完后还内存溢出,就会抛异常 弱引用:GC时回

2022-05-09 22:54:20 299

原创 从相册选择图片到长按图片保存到本地的总流程

1.从相册选择图片到view上展示,(1)实际上是使用Intent打开相册的activity,(2)使用onActivityResult读取用户选中的图片(Uri),(3)根据Uri读取ContentProvider,获取到图片在文件系统中的path,(4)再用Glide根据path显示图片。2.长按view保存到本地,(1)将view转成bitmap,(2)使用bitmap.compress保存到文件流中(BufferedOutputStream,FileOutputStre.

2021-05-02 21:53:54 585

原创 Linux学习之路--文件目录篇

文件属性使用ls -al命令会出现以下信息:其中第一列是文件属性,共10项内容:[文件类型与权限] [r][w][x] [r][w][x] [r][w][x]-----------------------| 文件所有者的权限 | 同用户组的权限 | 非本用户组的权限 |其中rwx分别代表可读,可写,可执行,不出...

2019-06-04 22:38:59 85

原创 ubuntu 16.04安装sogou输入法

!!太激动了!终于能打中文了!!https://blog.csdn.net/ljheee/article/details/52966456一切过程跟上面这篇博文非常类似,但我在最后关头居然出了一点小问题!设置完文章中的语言选项的时候,重启一下你会发现ubuntu右上角居然多了个小键盘这个就是传说中的输入法装置啦点击这个键盘,你会看到这样点开键盘,应该只能看到keyb...

2019-06-04 18:46:38 165

原创 Linux学习之路

本白菜又要开始学linux了哈哈1. 主机规划与硬盘分区(1)关于硬盘上的主分区与扩展分区:硬盘上的分区最多只有4个,即主分区的数目+扩展分区的数目<=4同时扩展分区的数目最多只能有1个,也可以没有。当想要分区数目>4,就需要划分扩展分区,然后在扩展分区的基础上划分逻辑分区。一般c盘就是主分区,然后d,e,f,g,..就是扩展分区中划分的四个逻辑分区。专有名词:...

2019-06-04 10:58:38 83

原创 爬虫学习过程

请求的4个部分:请求方法,请求的网址,请求头,请求体1. 请求方法2.请求头请求头包含的信息是服务器需要知道的信息,比较重要的包括:Host:指明请求资源的服务器的ip地址和端口号。Cookie:用来告知服务器是哪一台跟它连接过的主机,服务器根据cookie动态地返回相应信息。 即cookie不一样,服务器返回给主机的信息也可能不一样。...

2019-03-28 09:31:34 366

原创 排序算法汇总与代码实现(c++)

参考文章:https://www.cnblogs.com/zhaoshuai1215/p/3448154.html(实在写的太好了!)排序算法共有九种:插入排序,折半排序,希尔排序,冒泡排序,快速排序,简单选择排序,堆排序,归并排序,基数排序。总叙述:常见的排序算法都是比较排序,非比较排序包括计数排序、桶排序和基数排序,非比较排序对数据有要求,因为数据本身包含了定位特征,所有才...

2019-03-19 16:01:56 134

原创 c++面试准备

概念集合访问控制(数据成员,成员函数)public:所有的函数都可以访问这些成员。private:只有该类的成员函数或该类的友元(包括友元函数和友元类)可以访问。protected:只对派生类开放,派生类可以通过自己的成员函数来访问。构造函数和析构函数没有参数的构造函数称为默认构造函数,构造函数是没有返回值的,在生成类对象时自动被调用。因此如果是带参数的构造函数,则需要在构...

2019-03-12 10:12:30 592

原创 codeblocks字符集问题

实在遇这个问题遇了无数遍了,是时候认认真真地将这个问题牢牢记住了can't not convert WINDOWS-936 to UTF-8步骤:1. 2.点击settings中的compiler第一行写的是你要转换成的字符集第二行写的是你现在的字符集...

2019-03-02 22:23:42 1453

原创 操作系统总结(二)

处理机管理1.进程控制(对单个进程而言,控制进程的生命周期)进程控制实际上是指进程的创建,终止,状态转换。(主要通过进程的PCB来控制)概念描述:进程:是进程实体的一次运行过程,是系统分配资源和调度的基本单位(只针对只含有进程的计算机而言,如果是多线程的计算机,那么进程就只是计算机分配资源的基本单位,而线程才是调度的基本单位)。进程与程序的区别:进程相当于是程序的动态运行。...

2019-03-02 10:46:34 84

原创 操作系统总结(一)

操作系统引论1. 操作系统的目的有效性:可以有效提高计算机资源的利用率(有效减少cpu资源,I/O资源处于空闲的时间),吞吐量(单位时间内完成的作业 量)。方便性:屏蔽了计算机底层实现的复杂性,只向用户提供了接口。可扩充性,开放性。2.操作系统的作用管理计算机资源(提高资源利用率,管理着处理机资源(进程管理),存储器资源,文件管理,设备管理)。作为用户与计算机的接口...

2019-03-01 22:12:20 122

原创 python库汇总

1. xpinyin 将文字转化为拼音2. turtle 绘图软件3. pillow PIL 图像处理软件 from PIL import Image(读取图片)4. wordcloud 云图 from wordcloud import WordCloud (将名字汇总生成云图)5.re 用于正则式匹配6.urllib 用于模拟浏览器发送请求,并接收response7.r...

2019-02-27 18:27:08 116

原创 语义分析归纳

1.语义分析的任务(1)词的层面:词义消歧/词义标注(word sense disambiguation,WSD)(2)句子层面:语义角色标注(semantic role labeling,SRL)(3)篇章层面:指代消解/共指消解(coreference resolution)2.词义标注/词义消歧(1)含义对于一个多义词,根据该词所处的上下文环境,给出该词的语义。即...

2019-02-24 11:04:54 2265

原创 交叉熵

文章参考:详解机器学习中的熵、条件熵、相对熵和交叉熵一文搞懂交叉熵在机器学习中的使用,透彻理解交叉熵背后的直觉1.信息量一条信息的信息量大小和它的不确定性有直接的关系。可以认为,信息量的度量就等于不确定性的多少。2.一个随机变量的分布效果可以用熵来衡量比方说,某个事件的概率分布如下图所示:则该事件的熵计算如下:H(X) = -(0.7*log(0.7)+0....

2019-02-10 12:32:48 137

原创 lstm的tensorflow代码实现几个函数的源码及解释

对这三行代码:1.tf.contrib.rnn.BasicLSTMCell总的来说,这个函数就是用来计算cell里面的运算的,比如加入三个门的计算,对应于所有列出的lstm的公式,如果说对应于普通的神经元,就相当于w*x+b这一步运算。源码:@tf_export("nn.rnn_cell.BasicLSTMCell")class BasicLSTMCell(LayerRN...

2019-02-09 12:22:56 1409

原创 lstm学习

讲的特别好的lstm:lstm介绍1.simpleRNN2.standardRNN使用了隐含层的信息3.信息的表示:c^(t) = f(W.x(t) + U.y(t-1))长时记忆单元:C(t) = gforget*C(t-1) + gin*c^(t)输出:y(t) = gout*f(C(t))隐状态:h(t) = y(t)其中,gin,gout,g...

2019-02-07 22:51:42 479

原创 应对mnist数据因网站无法加载的问题

WARNING:tensorflow:From d:\vscode project\lstm\new.py:6: read_data_sets (from tensorflow.contrib.learn.python.learn.datasets.mnist) is deprecated and will be removed in a future version.解决办法:自己新建一...

2019-02-07 20:06:05 453

原创 vscode快捷键

https://blog.csdn.net/wxl1555/article/details/803903681.返回上次点击处alt+&lt;-2.折叠所有函数,折叠是foldctrl+k+03.展开所有ctrl+k+j4.

2019-02-07 11:38:42 92

原创 numpy学习

1.numpy.linalg.svd这是一个奇异值分解的函数。https://blog.csdn.net/rainpasttime/article/details/79831533(下面这部分解释全来自上面的链接)输入:np.linalg.svd(a,full_matrices=1,compute_uv=1)参数含义关于奇异值分解的介绍(哇,介绍的非一般的好!)ht...

2019-02-07 09:29:24 125

service.xmind

android service xmind 概要整理啊啊

2019-08-18

mnist数据集

mnist数据集,包含四个压缩文件,t10k-images-idx3-ubyte.gz,t10k-labels-idx1-ubyte.gz,train-images-idx3-ubyte.gz,train-labels-idx1-ubyte

2019-02-07

空空如也

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

TA关注的人

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