- 博客(75)
- 收藏
- 关注
原创 Ubiquitous Acoustic Sensing on Commodity IoT device a survey 笔记
AMT: Acoustic Multi-target Tracking with Smartphone MIMO System 论文笔记II. ACOUSTIC DEVICES AND CHANNELSA.声音的录制和播放系统:(AGC/PGA作用是放大电压信号以适用于ADC)B.Acoustic Channel Properties1.无线信道的特征Path lossDoppler effectsTemperature effectsReflection Refraction Diff
2021-12-16 15:49:29
1063
原创 奥本海姆信号与系统(第二版)笔记
第一章:信号与系统第二章:线性时不变系统微分方程求解过程见P74第三章:周期信号的傅里叶级数表示实周期信号的推导过程见P117-P118
2021-11-14 15:32:40
1915
原创 解决安装pytorch出现的问题
1.使用指令conda info --envs查询安装环境时未出现pytorch解决方案:在环境配置文件.condarc(一般在user/用户名 目录下)重新设置镜像源:channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/ - defaultsshow_channel_urls: truechannel_alias: https://mirrors.tuna.tsinghua.edu.c
2021-10-27 19:24:12
6372
3
原创 支持向量机SVM入门(线性+非线性)
SVM 概述支持向量机:是一种监督学习的算法。前置芝士:支持向量:就是距离超平面最近的那些点机:表示一种算法超平面:就是分割数据的一个(n-1)维的面,就是分类的决策边界线性可分:数据可以通过画一条直线就可以将它们完全分开线性不可分:上一条相反的意思场景给左右两边的点进行分类直觉就会发现D这种分类方法最好算法流程:我们找到函数间隔最小值的向量(也就是找到支持向量),然后让几何间隔最大化。函数间隔、几何间隔、为什么这样选择是最优得我下面会说。本质:求一个函数最
2021-06-08 01:05:28
443
原创 K-Means例子
数据集:(数据集很小所以直接CV即可)1.658985 4.285136-3.453687 3.4243214.838138 -1.151539-5.379713 -3.3621040.972564 2.924086-3.567919 1.5316110.450614 -3.302219-3.487105 -1.7244322.668759 1.594842-3.156485 3.1911373.165506 -3.999838-2.786837 -3.0993544.20818.
2021-06-06 15:44:13
136
原创 K-Means聚类算法
K-Means简介K-Means属于无监督的学习。我们通过对象和对象之间的距离远近,将数据集拆分成K个簇,每个簇有一个中心,这个中心是由簇中所含值得均值计算而成的,所以叫做K均值算法。优点无监督数据集,不需要准备数据集原理简单,容易实现结果可解释性好缺点需要手动设置K值(聚类的簇数),不合理K值导致缺乏解释性可能陷入local-minima,大规模数据收敛太慢对于异常点很敏感K-Means伪代码K-Means评价标准判断聚类的性能,我们用Sum of Squared Err
2021-06-06 15:21:49
362
原创 PCA(Principal Component Analysis)降维算法讲解
算法概述:主成分分析或者主元分析是一种掌握毐主要矛盾的统计分析方法,它可以从多元事务中解析出主要影响因素。简单来说,就是将高维的数据集映射到低维的空间之中,同时尽可能的保留更多的变量。前置芝士:1.向量内积2.投影3.基4.方差5.协方差6.矩阵特征值,特征向量7.矩阵对角化墙裂推荐知乎大佬托比欧对于线性代数知识的讲解:https://zhuanlan.zhihu.com/p/113501803算法过程:首先我们想要实现降维操作,如二维变成一维度,我们必须找到一组基,将向量
2021-05-20 23:15:23
1105
2
原创 KNN-手写数字辨识
题目要求:给定一部分测试集和训练集。数据集中的每一个文件均是勇32*32的矩阵表示的数字,文件名的第一个字符代表该数据集的分类结果。 根据训练集来观察测试集的error。数据集地址:https://github.com/apachecn/data/blob/master/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/2.KNN.zip代码如下:import numpy as npimport pandas as pdimport operatorfrom
2021-05-20 15:20:43
162
转载 KNN-手写数字辨识
代码如下import numpy as npimport pandas as pdimport operatorfrom os import listdirfrom collections import Counterfrom numpy import *def classify0(inX,dataSet,labels,k): #lineLen 是数据的个数 lineLen = dataSet.shape[0] #inX代表还未知分类的一个数据。将它减去dataSet对
2021-05-19 00:42:32
131
原创 KNN入门实例
原理请移步上一篇博客数据集:链接:https://pan.baidu.com/s/18UZD2p3PwTwjVy-_S53flw 提取码:KNN1代码如下:import numpy as npimport pandas as pdimport operatorfrom os import listdirfrom collections import Counterfrom numpy import *def classify0(inX,dataSet,labels,k): #.
2021-05-18 23:34:49
157
原创 逻辑回归样例:Logistic回归预测收入
作业说明给定训练集spam_train.csv,要求根据每个ID各种属性值来判断该ID对应角色是Winner还是Losser(收入是否大于50K),这是一个典型的二分类问题。训练集介绍:(1)、CSV文件,大小为4000行X59列;(2)、4000行数据对应着4000个角色,ID编号从1到4001;(3)、59列数据中, 第一列为角色ID,最后一列为分类结果,即label(0、1两种),中间的57列为角色对应的57种属性值;(4)、数据集地址:https://pan.baidu.com/
2021-05-15 17:26:19
1298
6
原创 Logistic回归算法
引入逻辑回归Logistic回归常用于分类问题,其实质就是在线性回归函数的基础上加上了sigmoid函数,将线性回归预测到的值压缩成为了一个概率,根据这个概率我们就可以得到分类结果。在损失函数方面,Logistic回归没有使用欧式距离来衡量误差,而使用了交叉熵函数(crossentropy)。算法流程1.线性回归先对数据进行线性回归,输入值为xnx_{n}xn,输出值为yny_{n}ynyn=∑i=1propertyxiwi+by_{n}=\sum ^{property}_{i=
2021-05-15 15:32:48
637
原创 线性回归样例代码+波士顿房价预测讲解
不想吐槽这本书了,很奇葩的处理逻辑,很多细节都没照顾到。代码如下:import numpy as npimport matplotlib.pyplot as plt#数据 一行50个的等差序列x = np.arange(0.,10.,0.2)#m为数据规模 50个m = len(x)#这个处理很sb 就是相当于在原数据加一列,这一列的值恒为1。这样用权重w乘的时候这一列就是偏执值了x0 = np.ones(m)#将元数据和x0组合在一起并且求其转置矩阵input_data = np.
2021-05-14 16:15:51
1263
原创 线性回归案例分析-预测PM2.5
作业说明给定训练集train.csv,要求根据前9个小时的空气监测情况预测第10个小时的PM2.5含量。训练集介绍:(1)、CSV文件,包含台湾丰原地区240天的气象观测资料(取每个月前20天的数据做训练集,12月X20天=240天,每月后10天数据用于测试,对学生不可见);(2)、每天的监测时间点为0时,1时…到23时,共24个时间节点;(3)、每天的检测指标包括CO、NO、PM2.5、PM10等气体浓度,是否降雨、刮风等气象信息,共计18项;(4)、数据集地址:https://pan.ba
2021-05-13 20:22:29
1880
原创 线性回归算法
大致思想机器学习中的线性回归算法最基本的思想:根据数据集(feature+label)模拟出一条近似的曲线,使得每个点的落点都在曲线上或者是曲线的周围不远的地方。实现方法1.回归模型首先设该线性回归函数为y=∑iNwix+by=\sum ^{N}_{i}w_{i}x+by=∑iNwix+b (w是权重,b是偏置值,x是输入的数据,y表示预测值)。2.损失函数损失函数表示预测的值和lable值的差距,这里取平方和的意义在于“放大”预测值和真实值的差距(这里的放大有两种含义:差距大于1平方
2021-05-11 11:10:15
712
原创 KMP&&TRIE解答
POJ 1961求最下循环节问题,上节课讲过了,没有理解的话,记住公式.#include<iostream>#include<cstring>using namespace std;string s;int nxt[1000006];int len;int sim=1;void get_next(){ nxt[0]=-1; int i=0,k=-1; while(i<s.size()) { if(k==-1||s[i]==s[k]) {
2020-07-20 00:41:17
224
原创 专题四 最短路练习
A - Til the Cows Come Home 一个简单的迪杰斯特拉问题,求出1-n的最短路输出即可。注意可能有多条重复的路#include<iostream>#include<algorithm>#include<functional>#include<map>#include<queue>#include<string>#include<cstring>#define N 2000 #def
2020-07-13 10:20:22
296
原创 简单搜索篇 E - Find The Multiple POJ - 1426 (DFS)
#include<iostream>using namespace std;long long n;int f=1;void dfs(long long num,int len){ if(f==0)return ; if(len==19){return ;} if(num%n==0) { cout<<num<<endl; f=0; r...
2020-04-09 18:12:38
323
原创 简单搜索篇 Catch That Cow POJ - 3278(BFS)
#include<iostream>#include<algorithm>#include<map>#include<queue>#include<cstring>#include <cstdio>#include <cmath>#include <set>#include<vec...
2020-04-08 18:40:51
286
原创 简单搜索篇 Dungeon Master POJ - 225(三维BFS)
#include<iostream>#include<algorithm>#include<map>#include<queue>#include<cstring>#include <cstdio>#include <cmath>#include <set>#include<vec...
2020-04-08 16:21:47
172
原创 简单搜索篇 棋盘问题 POJ - 1321
#include<iostream>#include<algorithm>#include<map>#include<queue>#include<cstring>#include <cstdio>#include <cmath>#include <set>#include<vec...
2020-04-07 15:44:34
197
原创 最长回文子串问题 Manacher(马拉车)算法模板
#include <iostream>#include <cstdio>#include <cstring>#define Min(a,b) a>b?b:a#define Max(a,b) a>b?a:busing namespace std;int Len[3000005];char str[3000005],s[3000005];...
2020-04-01 16:01:21
215
原创 联通分支克星 Tarjan 模板
#include<stdio.h>//此代码仅供参考,用于求一个图存在多少个强连通分量#include<string.h>#include<vector>#include<algorithm>using namespace std;#define maxn 1000000vector<int >mp[maxn];int an...
2020-04-01 15:57:21
208
原创 超详细的LCA 两种方法(模板!)
#include <iostream>#include <algorithm>#include <cstring>#include <vector>#include <cstdio>#define mem(a, b) memset(a, b, sizeof(a))using namespace std;const int ...
2020-04-01 15:54:59
682
原创 线段树
#include<stdio.h>#include<string.h>#include<algorithm>#include<queue>#include<vector>#include<iostream>#include<queue>#include<string>using name...
2019-10-09 09:30:22
196
2
原创 杜教筛 狄利克雷卷积入门
补下暑假的坑 杜教筛看了两天勉勉强强才看懂了一天 杜教牛逼杜教筛意义其实,对于一般的数论题,线性筛已经非常的优秀了。但是就是有那些duliu出题人,硬是要把数据出到1e10之类的,就看你会不会杜教筛,min_25筛,洲阁筛等各种神奇的筛法。(PS:后面这两个筛法我是真的不会了QAQ)了解杜教筛之前必须得了解一下狄利克雷卷积听名字,似乎是一个很高深的东西,其实就是一个公式证明莫...
2019-09-05 16:26:37
485
1
原创 数论分块入门
数论分块一般解决的就是形如(这种式子的求解)**例一:bzoj1968: [Ahoi2005]COMMON 约数研究**DescriptionInput只有一行一个整数 N(0 < N < 1000000)。Output只有一行输出,为整数M,即f(1)到f(N)的累加和。题目分析答案即为1…x1…x的所有约数个数和。#include<bits/stdc...
2019-09-04 16:05:45
546
1
原创 中国剩余定理(孙子定理)
证明首先举几个例子:求满足x的最小值这里先转换成三个等式x / 3 = k1------2 ① => x1=k1 * 3 + 2x / 5 = k2------3 ② => x2=k2 * 5 + 3x / 7 = k3-------2 ③ => x3=k3 * 7 + 2如果① ② ③式分开来看轻易就得到对① x1=2 ② x2=3 ③x...
2019-08-27 10:23:00
994
1
原创 博弈论-SG函数
学习博弈论不得不提一哈SG函数关于SG函数的一些概念就不多说了 说下我自己的理解SG函数记录为0的是P状态 不为0记录的是N状态 也是相当于有个周期再循环 P N状态轮番出现SG模板#include<iostream>#include<cstring>#include<algorithm>#define maxn 1000using nam...
2019-08-27 08:42:40
507
原创 初探博弈论
学习博弈论不得不先从Nim游戏开始(废话首先理解了P N的状态,简单点说就是当前你拿完石子赢你面对的就是N状态 否则就是P状态。下面一道例题为什么会这样呢? 你可以从石子为1到n画一张图来理解一下(1-16相当于石子数)(假设一次最多拿三个 k=3)现在从1开始想他的N P状态得到下面的图(一次最多拿三个 k=3)可以看出来当你处于N状态的时候你可以通过拿石子使下个人处于P...
2019-08-26 15:07:11
339
原创 逆元(b/a)%m的计算
逆元就是同余式中一个值为1的一种特殊情况证明逆元此处需要一个证明过程 (懒得写 )注意一点 要满足gcd(a,m)==1成立 并且 b%a==0exgcd算法#include<iostream>#include<algorithm>using namespace std;int exGcd(int a,int b,int &x,int &a...
2019-08-24 11:01:13
525
1
原创 扩展欧几里得
说扩展欧几里得之前先提一下欧几里得扩展欧几里得就是以这个为基础证明出来的(证明看算法笔记page176)exgcd板子#include<iostream>#include<algorithm>using namespace std;int exGcd(int a,int b,int &x,int &y){ if(b==0){ x=1;...
2019-08-23 11:57:27
488
原创 FZU - 1759 Problem 1759 Super A^B mod C 欧拉降幂公式
本公式针对 a的b次方取模 问题降幂公式欧拉降幂公式:a^b % p = a^(b%phi( p )+phi( p )) % p (前提:b>=phi( p )) phi表示欧拉函数前提:b>=phi( p ) 是重点 不要问是是怎么证明的 欧拉爷爷研究十几年的东西怎么是我一天就能搞懂的?无脑套公式就可裸题Given A,B,C, You should...
2019-08-16 17:28:41
279
原创 欧拉函数+欧拉线性筛
欧拉定义百度的定义就不copy了 简单的说就是给定一个正整数n 小于n的正整数与n互质的个数 例如phi[8]=4 (1,3,5,7与8互质)代码主要是用其公式其中x是要求的数 n是x进行唯一分解定理后的不同pi的个数 p是唯一分解定理后的数字(ex 20=2^2*5 那么p就有两个值 2和5) 敲重点 唯一分解定理欧拉性质欧拉函数是积性函数:*当a,b互质的时候(...
2019-08-16 12:09:10
238
原创 素数筛法
注释很详细 直接上代码了 唯一分解定理是重点#include<iostream>#include<algorithm>#include<cstring>#define maxn 1000#define ll long longusing namespace std;int prim[maxn],tot;int flag[maxn<<...
2019-08-16 09:24:47
292
2
原创 Educational Codeforces Round 66 (Rated for Div. 2) B. Catch Overflow!
Catch Overflow!题意 end相当于 } add相当于 自增加一egfor(66){addfor(666){add}add}可以理解为for 66addfor 666addendaddend 本题关键就是用一个数组标记for循环的层数 判断是再那一层#include<bits/stdc++.h>using namespace s...
2019-06-06 10:55:43
231
2
原创 P1162 填涂颜色
P1162 填涂颜色庆祝落谷橙名 随后还是蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒟蒻直接亮思路定义二维数组是外面都加一层(eg 下标【1-n】是数据区间 下表0和n+1这一层是开始dfs的区间)首先正常存图然后从(0,0)开始搜索(把外面的标记 这里出现一个问题为什么不从里面开始搜 因为你无法判断里面的任意一个坐标的位置 所以这就是定义【1-n】数据域的...
2019-05-30 14:50:51
421
原创 通过vector map访问结构体
话不多收代码后面放女装vector+node#include<iostream>#include<vector>#include<algorithm>using namespace std;struct node{ int time; int num;};bool cmp(const node &x,const node &y...
2019-05-30 10:55:25
306
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人