- 博客(38)
- 资源 (14)
- 收藏
- 关注
原创 LeetCode第七题整数反转
对于负数,首先转成正数,然后就按照正数进行反转,最后*(-1)或者用0减去就可以了。如果反转后整数超过 32 位的有符号整数的范围。给你一个 32 位的有符号整数。中的数字部分反转后的结果。
2023-11-20 23:32:13
300
1
原创 使用LDA(线性判别公式)进行iris鸢尾花的分类
并且LDA也是一种监督学习的降维技术,也就是说它的数据集的每个样本都有类别输出。在对新样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来确定新样本的类别。通俗地说,iris数据集是用来给花做分类的数据集,每个样本包含了花萼长度、花萼宽度、花瓣长度、花瓣宽度四个特征(前4列),我们需要建立一个分类器,分类器可以通过样本的四个特征来判断样本属于山鸢尾、变色鸢尾还是维吉尼亚鸢尾(这三个名词都是花的品种)。每行数据包含每个样本的四个特征和样本的类别信息,所以iris数据集是一个150行5列的二维表。
2023-09-21 21:39:14
1155
原创 使用opencv将mnist数据集保存在计算机上
许多人在使用mnist数据集时都是直接调用,那么如果想将mnist数据集保存在本机中该怎么做呢首先我们要知道mnist数据集中的数据时什么样的如下所示,为训练集中的第一张图片的部分数据,其为一维数组,共有784个数(这个矩阵表达的数好像是3)然后需要将此一维数组转换为二维矩阵,但时如果就直接进行转换或是转换成二维数组之后也不对数据进行改变的话,保存为图片之后是无法肉眼进行识别的。所以我们要将所有大于0的数改成255.这样就能够肉眼识别了。如下图将二维数组改变之后就可以使用open
2020-05-13 22:59:13
432
原创 利用selenium爬取淘宝商品信息
在淘宝上买东西的时候常常要比较商品的价格,付款的人数等等,若如一个个查看是十分费时的。所以这次就利用爬虫爬取淘宝商品的信息。首先介绍下selenium,selenium本是用于web自动化的工具。但是其在浏览器上直接运行,就像真正的用户在操作一样。所以也常常用于爬虫。selenium课可直接寻找到web页面中的元素,如页码输入框,确认按钮等等,并且可以对这些元素进行操作,比如点击,清除。搜...
2020-02-29 21:22:47
1211
原创 对华农兄弟b站视频播放量,弹幕数,评论数进行排序
首先需要使用之前抓取的数据首先读取文件,由于只需要标题,弹幕数,播放量和评论数,而且要找到标题和弹幕数、播放量、评论数排名的对应关系,所以新建字典,以标题作为key,播放量为value(以播放量为例,其他两个也是以标题作为key值)。import csvplay_dict = {}comment_dict = {}rcount_dict = {}new_play_top_l...
2020-02-09 21:36:03
902
原创 爬取华农兄弟哔哩哔哩所有视频信息
页面如下通过网络流分析,找到了我们需要找的文件而通过下图能够得到对应的json格式的页面然后就可以进行爬取了import requestsimport jsonimport timeimport csvdef parse_url(html): try: #加载json字符串 reply_data = json.load...
2020-02-08 22:47:35
403
原创 爬取华农兄弟b站评论
竹鼠的N种si法在前段时间十分的火,中暑了,打架受伤了,吃太多了都成为了华农兄弟吃竹鼠的理由,所以今年就来看看华农兄弟b站的评论是什么样的首先要知道b站的评论是有一个单独的文件的,所以我们要找到这个文件,那么在chorme浏览器中打开开发者选项的network,如果是空白的,那么刷新一下就有了,如图前面为reply的这个文件就是我们要寻找的文件,如果找不到那么可能是页面未完全刷新或是b站改...
2020-02-07 23:48:58
353
原创 利用pyquery以及requests库爬取携程酒店(上海)部分信息
爬取内容为:酒店名,位置,评分,推荐用户的比例,点评数以及推荐理由 图1首先要对页面元素进行分析 ...
2020-02-04 20:57:03
668
原创 cypher密码学游戏初探
最近迷上了密码学,恰逢自己pc上有个密码学的游戏,就拿来练练手了。第一部分是隐写术,下图为介绍,有兴趣的可以看看第一题显而易见,如果首字母组合起来就能够得到SPYSUSPECTED,解出第二题可以发现在单词之中有错误,比如whille I pondered中的whille多了一个l,所以进行归纳发现得到了LENORE(刚开始其实解出来了,但是觉得这个词好像不存在.....
2020-01-01 21:24:56
1975
原创 决策树算法的完整实现
from math import logimport operator#计算的是经验熵H(D)def calcShannonEnt(dataset): numEntries = len(dataset) labelCounts = {} for featVec in dataset: currentLabel = featVec[-1]...
2019-07-31 20:19:41
213
原创 决策树算法实现--最佳特征的选择
本文不对相关数学原理进行介绍,如欠缺相关数学基础,可参考李航的《统计学习方法》以及周志华的《机器学习》1.首先创建相关的数据集(数据集来源为李航的《统计学习方法》)并且导入相关的数学包第0列中数字0,1,2分别表示青、中、老年;第1列中数字0,1分别表示为无工作、有工作第2列中数字0,1分别表示为无、有自己的房子第3列中数字0,1,2分别表示为信贷情况为一般、好。非常...
2019-07-26 22:55:25
440
原创 如何计算根号之牛顿迭代法
之前上课时,老师提出了一个问题,在不借助自带函数的情况下,如何使用数学方法计算带根号的数字,并将其精确到小数点后3位,而最近正好阅读到了牛顿迭代法相关的内容,废话不多说,开始。而牛顿迭代法的精华就是下列公式,这里不多介绍数学上的原理,而注重于实现举个例子,假设有一个函数为y = x*x -5,要找到x最其根值,即令y=0,从而求出x为正负根号5,那么如何让根号5精度到小数点后几位就...
2019-06-29 22:54:41
9832
原创 神经网络中常用激活函数图像绘制(Python)
#relu激活函数from matplotlib import pyplotimport numpy as npdef relu(x): if x > 0: return x else: return 0def func(): x = np.arange(-5,5,0.02) y = [] for ...
2019-06-23 20:40:41
4478
原创 KNN的python实现
from numpy import *from operator import itemgetterfrom collections import Counterdef dataset(): group = np.array([[1.,1.1],[1.,1.],[0.,0.],[0.,0.1]]) labels = ['A','A','B','B'] return ...
2019-04-14 18:02:55
151
原创 逆向工程--crackme#2小程序
首先运行这个小程序这个小程序要求我们找出序列号,推测有可能是根据输入的name来生成serial,那么尝试输入运行check弹出序列号错误的消息框,多次尝试的结果应是一样的,除非你已经知道了这个程序的加密原理或是凑巧序列号输入正确虽然这个小程序是使用vb进行编写的,但是在这里不对vb进行讲解打开ollydbg调试这个程序,调试到此位置,即00401238...
2019-03-31 15:13:21
436
原创 逆向工程--分析一个crackme小程序
首先运行这个程序,大致意思可以猜测的到那么点击确定,弹出窗口并不是很清楚这个小程序要干嘛,所以接下来进行调试调试:首先运行ollydbg载入这个exe文件然后再定位到00401000,由于EP代码很短(因为是用汇编写的),所以能够很快的定位到0040100000401024处比较eax(为1)和esi(为2)的值00401026处为条件分支指令,若两值相...
2019-03-29 21:33:28
560
原创 TensorFlow深度学习作业一----多元回归
下表是某种商品的需求量(y,吨)、价格(x1,元/千克)和消费者收入(x2,元)观测值。 序号 X1 X2 y 1 5 1000 100 2 7 600 ...
2019-03-27 23:55:46
961
原创 TensorFlow深度学习作业二--癌症转移
下表是肾癌标本资料(数据来源于《卫生统计学》第四版第11章): 序号 X1 X2 X3 X4 X5 y 1 59 2 43.4 2 ...
2019-03-27 23:45:47
951
原创 在猫狗分类中使用数据增强
学习样本过少就会导致过拟合问题的产生,如果有足够的样本数量的支持,那么模型就能够观察到所有的分布情况,就永远不会导致过拟合。,数据增强是从现有的训练样本中生成更多的训练数据,其方法是利用多种能够生成可信图像的随机变换来增加样本。其目标是,模型在训练时不会查看到完全相同的图像。折就能让模型观察到数据的更多内容。#接着上一篇博客#rotation_range:表示图像随机旋转的角度范围#wi...
2019-03-11 22:58:04
700
原创 kaggle--猫狗数据集分类
首先需要下载相关的数据集,可从kaggle官网进行下载下载的数据集分为train和test两部分,而train数据集中的图像并非都是连续的,所以若要截取部分图像进行训练,则应注意首先创建属于自己的数据集,此次学习并没有用到所以的数据,而只有2000张训练图像,1000张测试图像和1000张验证图像import os,shutil#原始训练数据存放位置,在当前目录下的dog-and-...
2019-03-08 23:48:54
12100
原创 深度学习--卷积神经网络mnist数据集
mnist数据集from keras import layersfrom keras import modelsmodel = models.Sequential()#padding为填充,若值为valid则对边界数据不处理,若为same则保留边界处的卷积结果,#通常会使输入和输出的shape相同,为valid时输出为(26,26,32)#设卷积神经网络处理大小为(28,28,1...
2019-03-02 23:50:15
902
原创 王爽汇编语言--寄存器冲突问题
题目:设计一个子程序,功能:将一个全是字母,以0为结尾的字符串,转化为大写定义类似于: db 'cnversation',0代码如下:(由于在代码块中排版会有问题,所以就不放在里面惹)assume cs:code;定义要转换的字符data segment db 'word',0 db 'unix',0 db 'wind',0 db 'good'...
2019-03-01 00:13:07
886
原创 数据预处理、特征工程和特征学习
神经网络的数据预处理数据预处理的目的是使原始数据更适于用神经网络处理,包括向量化、标准化、处理缺失值和特征提取。1.向量化 神经网络的所有输入和目标都必须是浮点数张量(特定情况下为整数张量)。无论处理什么数据,都必须先将其转换为张量。这一步叫做数据向量化。无论是路透社的数据集还是IMDB的数据集,都是文本分类的例子,开始时文本都为整数列表,然后使用了one-hot编码将其转换...
2019-02-28 20:40:50
965
原创 评估机器学习模型
为什么要分训练集、验证集和测试集评估模型的重点是将数据划分为3个集合:训练集、验证集和测试集。在训练数据上训练模型,在验证数据上评估模型。一旦找到最佳参数,就在测试数据上测试。之所以划分为3个集合而不是只有训练集和测试集,是因为在开发模型时是需要调节模型配置的,如层数或每层的大小(称为模型的超参数)。这个调节过程需要使用模型在验证数据上的性能作为反馈信息,这个调节过程本质上就是一种学习:在某...
2019-02-26 22:28:36
434
原创 深度学习回归问题--预测房价
环境使用keras为前端,TensorFlow为后端背景: 波士顿房价数据集统计了当时教区部分的犯罪率、房产税等共计13个指标,统计出房价,试图能找到那些指标与房价的关系。首先加载数据集from keras.datasets import boston_housing(train_data, train_targets), (test_data, test_targets)...
2019-02-25 01:12:59
8278
原创 深度学习多分类问题--路透社数据集
环境使用keras为前端,TensorFlow为后端本次构建一个网络,将路透社新闻划分为46个类别。因为有多个类别,所以这是多分类问题。每个数据点只能划分到一个类别,所以,这是一个单标签,多分类问题。如果每个数据点可以划分到多个类别,那么就是多标签,多分类问题。首先加载数据集from keras.datasets import reuters#限定为前10000个最常出现的单词(...
2019-02-24 20:14:02
3883
原创 深度学习二分类问题--IMDB数据集
环境使用keras为前端,TensorFlow为后端 IMDB数据集包含50000条评论,25000条用于训练,25000条用于测试,训练集和测试集都包含了50%的正面评论和负面评论首先是加载IMDB数据集:from keras.datasets import imdb(train_data, train_labels), (test_data, test_labels) =...
2019-02-21 23:57:30
3567
原创 王爽 汇演语言 实验9
在屏幕中间显示绿色,绿底红色,白底蓝色的字符串'Welcome to masm'。背景知识:80x25彩色字符模式显示缓冲区(一下简称为显示缓冲区)的结构:内存地址空间中,B8000H-BFFFFH共32KB的空间,为80x25彩色字符模式的显示缓冲区。向这个地址空间写入数据,写入的内容将立即出现在显示器上。在一行中,一个字符占两个字节的存储空间,低位字节存储字符的ASCII码,高...
2019-02-08 00:29:38
145
原创 王爽 汇编语言 实验八 分析一个奇怪的程序
assume cs:codecode segment mov ax, 4c00H int 21h start: mov ax, 0 s: nop nop mov di, offset s mov si, offset s2 ...
2019-02-07 00:10:20
330
原创 Linux内核设计的艺术boot/bootsect.c的代码----第二篇
第一章:从开机加电到执行main函数之前的过程1.2.2 加载第二部分代码----setup 3.将Setup程序加载到内存中 执行完之前的复制过程就要执行第二步操作:将Setup程序加载到内存中,加载setup这个程序,要借助BIOS提供的int 0x13终端向量所指向的中断服务程序(即磁盘服务程序)来完成。int 0x13的中断服务...
2019-02-04 09:25:24
219
原创 王爽 汇编语言实验7
将部分数据写入table格式的表格中数据如下: 格式如下:代码如下:assume ds:data,cs:code,ss:tabledata segment db '1975','1976','1977','1978','1979','1980','1981','1982','1983','1984' db '1985','1986','1987','1...
2019-02-01 16:56:01
1871
原创 如何从汇编角度看待字母的大小写转换
如要将 ‘BaSiC’ 和‘iNfOrMaTiOn’分别转换为全为大写的和全为小写的字母 由于同一个字母的大写和小写对应的ASCII码是不相同的,如'A'的ASCII码为41H,‘a’的ASCII码为61H,要改变一个字母的大小写其实是要改变其ASCII码,通过对比可以发现小写字母的ASCII码值比大写的大20H,即10进制的32。所以大小写的转换只要将其对应的ASCII码加减20...
2019-01-30 00:12:03
646
原创 王爽 汇编语言 实验五
5.5 编写code段中的代码,将a段和b段数据依次相加,结果存入c段,即问号部分assume cs:codea segment db 1,2,3,4,5,6,7,8a endsb segment db 1,2,3,4,5,6,7,8b endsc segment db 0,0,0,0,0,0,0,0c endscode segmentstart:...
2019-01-29 00:01:23
2202
原创 关于Linux内核设计的艺术boot/bootsect.c的代码----第一篇
书籍:《Linux内核设计的艺术》第一章:从开机加电到执行main函数之前的过程 1.2.2 加载第二部分代码----setup 1.bootsect对内存你的规划 2.复制bootsect 各字段的值SETUPLEN = 4BOOTSEG = 0x07c0INITSEG = 0x9000SETUPSEG = 0x9...
2019-01-24 17:06:58
271
数据挖掘十大算法
2019-04-13
机器学习实战 pdf 带目录
2019-04-13
Python深度学习
2019-03-29
逆向工程核心原理(带目录)
2018-10-05
恶意代码分析实战(带目录)
2018-10-05
Python自然语言处理中文版(带目录)
2018-09-22
python网络编程基础
2018-07-18
C++编程思想(两卷合订本)
2018-07-18
加密与解密 第三版
2018-07-18
无线网络黑客攻防
2018-07-13
TCP-IP详解 卷2:实现
2017-12-03
PHP和MySQLweb开发第五版源代码
2017-11-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人