自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (3)
  • 收藏
  • 关注

翻译 MiniDSP车载声学之二:车载音频调试,DSP模块(Car Audio Tuning: DSP Modules and Their Use)

MiniDSP关于车载声学的测试一共有四篇文章,本文是对第三,四篇的总结。主要阐述了通过DSP对车载音频体验的调试。原文链接放在最后。

2023-08-14 09:19:27 465 1

翻译 miniDSP 车载声学之一:麦克风技术和车内声学测试(Microphone Techniques for Measurements in Car Cabins)

MiniDSP关于车载声学的测试一共有四篇文章,本文是对第一篇的总结。主要阐述了六种车内声学测试的布置方式以及各自的优缺点和适用场景。原文链接放在最后。

2024-03-30 09:54:00 27

原创 一文读懂线性相位滤波器和最小相位滤波器

一文读懂最小相位滤波器和线性相位滤波器1. 线性相位滤波器一定更适合音频吗?2. 最小相位定义2.1 最小相位多项式2.2 最大相位滤波器2.3 最小相位意味最快的衰减3. 最小相位/全通分解4. 线性相位滤波器一定更适合音频吗?前一篇博客写提到了滤波器的线性相位,与之对应的是最小相位滤波器。本文就最小相位滤波器和线性相位滤波器展开讨论一番。1. 线性相位滤波器一定更适合音频吗?% ellipt.m - Compare minimum-phase and zero-phase%

2023-11-02 22:25:40 2337

原创 音频通信网络之一:音频编解码

音频编解码主要分为语音编码和音乐编码。语音编码一般用于语音通话,要求低延时,包括G711,G722,等等,主要由ITU-T制定。音乐编码一般用于多媒体存储和传输,要求高质量,包括mp3,aac,flac,aptx等等,主要由MPEG制定。OPUS 采用的SILK CELT能兼顾实时语音通话和高质量的音频编码。2024年3月opus也发布了它的神经网络版本1.5.1。2021年Google 发布了一个用于低比特率语音的神经音频编解码器 Lyra和用于音频编码的SoundStream。

2023-08-13 07:20:58 1195 1

原创 音频通信网络之二:netEQ

MiniDSP关于车载声学的测试一共有四篇文章,本文是对第三第四篇的总结。主要阐述了车载音频调试的基本步骤,均衡器设置技巧以及对各频带的分析。原文链接放在最后。

2023-06-17 20:48:45 1307

原创 麦克风阵列算法笔记之一(Endfire,broadside)

麦克风阵列算法有两大类,一类是波束形成算法,另一类是盲源分离算法,两者互有优劣,先记录波束形成算法的笔记。系列博客先介绍两种常见麦克风阵列结构,然后分别介绍固定波束形成(fixed beamforming, data-independent) 和自适应波束形成(adaptive beamforming, data-dependent)。本篇博客只介绍Broadside和Endfire两种结构,其优缺点和应用场景。..............................

2020-08-02 11:29:34 8798

原创 神经网络参数量化,模型压缩论文笔记Training with Quantization Noise for Extreme Model Compression

本文介绍了一种新的神经网络参数量化的方法,能够极大压缩神经网络对内存的消耗。量化的方法有两类,一类是标量定点化,就是我们常用的定点方式。通过确定变量的动态范围,最大值和最小值,来确定变量需要的位数。文中提到了int4和int8。另一类是向量定点化,将一个列向量,分成多个子向量。子向量之间共用一套编解码本。能实现更大的压缩率。本文称为Product Quantization,简称为PQ。一般的定点化是对训练的结果进行定点化,但是这样会带来性能的下降。常用的解决方法是在训练时就使用定点数而不

2020-05-05 16:19:55 2730

原创 一文读懂FFT,补零对FFT的影响

一文读懂FFT,补零对FFT的影响数字信号处理离不开频域分析,一定会用到FFT。做FFT又经常会有补零的操作,那么补零对FFT有什么影响?结论放在前面。两个结论1. 进行zero padding只是增加了数据的长度,而不是原信号的长度。并不能增加频谱分辨率,只相当于频域插值。2. 进行zero padding 确实增加了频域的分辨率,但是得到的信号频谱已经不是我们想要分析的信号频谱了。就好...

2020-04-25 09:47:05 11263

原创 一文读懂FFT,为什么要加窗

一文读懂FFT,为什么要加窗数字信号处理离不开频域分析,一定会用到FFT。做FFT之前又会用到窗函数。那么FFT和窗函数以及各种窗函数之间有什么区别呢?结论放在前面。为什么做FFT之前需要用到窗函数?因为FFT的假设输入的信号是一个整数个的周期信号。如果输入信号满足条件,则不需要加窗。但实际上这两个条件几乎不能满足,FFT的这个假设会导致频谱泄露,即当前频点的信号能量会泄露到其他频点。为了...

2020-04-25 09:46:37 17231 1

原创 一文读懂FFT,海宁窗(hann)和汉明窗(hamming)的区别,如何选择窗函数

一文读懂FFT,海宁窗(hann)和汉明窗(hamming)的区别数字信号处理离不开频域分析,一定会用到FFT。做FFT之前又会用到窗函数。那么各种窗函数之间有什么区别呢?结论放在前面。窗函数有两个评价指标,主瓣和旁瓣。如果分析对象是单一频率信号的幅度分辨率比频域分辨率更高,则需要宽的主瓣。如果分析对象是单一频率信号,频域分辨率要求比幅度分辨率更高,则需要更窄的主瓣。...

2020-04-25 09:45:30 62118 4

原创 一文读懂IIR和FIR

数字信号处理最常见的面试题,请简述FIR和IIR的区别。百度一下,网上能搜到很多答案。比如1. FIR能实现线性相位响应,IIR不能实现线性相位。2. 实现同一量级的幅度响应FIR需要比IIR更高的阶数,更高的阶数意味着更多运算。3. FIR因为没有极点,在位宽有限系统,即定点系统中更稳定。IIR为了实现更加极限的幅度响应,需要更多的位宽。

2020-04-08 18:25:54 2457

原创 语音数据集汇总

1. 噪声集The QUT-NOISE dataset, Café,Car,Home,Reverb,Street,约12小时数据,其中reverbe_pool可以删除。Environmental Background Noise dataset, Babble,Car,Machinery,约30秒一条,一共253条noise set from the MUSAN corpus 长短不一,各...

2020-03-17 20:52:36 7156 2

原创 Home Credit Default Risk 违约风险预测,kaggle比赛,初级篇,LB 0.749

数据由Home Credit提供,Home Credit致力于向无银行账户的人群提供信贷。任务要求预测客户是否偿还贷款或遇到困难。使用AUC(ROC)作为模型的评估标准。本篇博客只对 application_train, application_test的数据进行分析,使用Logistic Regression进行分类预测。

2020-03-10 13:10:36 6217 3

原创 麦克风阵列算法笔记之三(自适应波束形成)

麦克风阵列算法有两大类,一类是波束形成算法,另一类是盲源分离算法,两者互有优劣,先记录波束形成算法的笔记。系列博客先介绍两种常见麦克风阵列结构,然后分别介绍固定波束形成(fixed beamforming, data-independent) 和自适应波束形成(adaptive beamforming, data-dependent)。

2019-12-18 09:54:22 348

原创 麦克风阵列算法笔记之四(盲源分离)

麦克风阵列算法有两大类,一类是波束形成算法,另一类是盲源分离算法,两者互有优劣。本篇博客先介绍盲源分离的优缺点,盲源分离的基础知识,然后分别介绍盲源分离的常见实现方式。

2019-12-07 10:41:29 12177 2

原创 麦克风阵列算法笔记之二(固定波束形成)

麦克风阵列算法有两大类,一类是波束形成算法,另一类是盲源分离算法,两者互有优劣,先记录波束形成算法的笔记。本篇博客先说波束形成的优缺点,波束形成的基础知识,然后分别介绍固定波束形成(fixed beamforming, data-independent) 和自适应波束形成(adaptive beamforming, data-dependent)。......

2019-10-31 13:26:42 11634 2

原创 Credit Fraud信用卡欺诈数据集,如何处理非平衡数据

数据集源自位于比利时布鲁塞尔ULB(Université Libre de Bruxelles) 的研究小组Worldline and the Machine Learning Group。数据集包含由欧洲持卡人于2013年9月使用信用卡在两天内发生的交易,284,807笔交易中有492笔被盗刷,正类(被盗刷)占所有交易的0.172%,数据集非常不平衡。它只包含作为PCA转换结果的数字输入变量。由于保密问题,特征V1,V2,… V28是使用PCA获得的主要组件,只有“交易时间”和“交易额”是原始特征。

2019-10-24 09:47:14 5691 1

原创 基于XGBOOST的电能消耗预测

PJM INT.,L.L.C.(以下简称为PJM)是经美国联邦能源管制委员会(FERC)批准,于1997的3月31日成立的一个非股份制有限责任公司,它实际上是一个独立系统运营商(ISO)。PJM目前负责美国13个州以及哥伦比亚特区电力系统的运行与管理。作为区域性ISO,PJM负责集中调度美国目前最大、最复杂的电力控制区,其规模在世界上处于第三位。PJM控制区人口占全美总人口的8.7%(约2300万人),负荷占7.5%,装机容量占8%(约58698MW),输电线路长达12800多公里。

2019-10-21 21:53:31 4220 1

原创 Predict Future Sales 预测未来销量, Kaggle 比赛,LB 0.89896 排名6%

预测未来销售该项目来源于kaggle中的一场比赛的赛题,数据是由日常销售数据组成的时间序列数据集,该数据集由俄罗斯最大的软件公司之一 - 1C公司提供。提供了包括商店,商品,价格,日销量等连续34个月内的数据,要求预测第35个月的各商店各商品的销量。评价指标为RMSE,Baseline是1.1677,我的成绩是0.89896,目前排名178/3200。

2019-10-08 13:25:55 16667 52

原创 生成模型和判别模型(Generative model, Discriminative model)

监督学习的任务是学习一个模型,对给定的输入预测相应的输出。这个模型一般形式为决策函数Y=f(X)或者条件概率分布P(Y|X)。有一种分类就把模型分为:Generative Modeling (生成模型)和Discriminative Modeling (判别模型)两种。生成模型是由训练数据学习联合概率分布P(X,Y),然后求出条件概率分布P(Y|X)作为预测的模型。常见的生成模型有PCA,Kmeans,Naive Bayesian和HMM。

2019-07-23 19:18:01 3168

原创 Home Credit Default Risk 违约风险预测,kaggle比赛,进阶篇,LB 0.792

Home Credit(捷信)的产品逻辑是这样的。* 首先给提供POS,入门级产品,类似于消费贷。只能用于消费,金额有限,风险最小,客户提供的信息也最少。* 然后是credit card,在本次竞赛中又称为revolving loan。循环授信,主要用于消费。* 最后才是cash loan,用户能得到现金。

2019-06-24 20:04:23 2739 1

原创 MIT6.0002 笔记,LECTURE1&2 Optimization

Lecture1&2 Optimization最优化问题贪心算法(greedy algorithm)优点缺点最优化问题这是MIT课程MIT60002 Computational thinking and data science 的第一二课,主要内容是最优化,包括贪心算法,暴力算法和动态编程(dynamic programming)。贪心算法(greedy algorithm)贪心...

2019-03-31 20:47:37 1649

原创 MIT6.0001 笔记,LECTURE 9:Python Classes and Inheritance

本课的内容分类两个部分。第一部分讲**information hiding**,使用setter() 和 getter() 方法对类的数据进行读写,尤其是setter() 方法,可以对写入的数据进行判断,防止错误类型和错误范围的数据进入实体。第二部分讲**inheritance**,定义一个父类animal,然后再得到他的子类,animal->person->student,或者 animal -> rabit。着重解释了class variable和instance variable的区别。

2019-03-23 10:27:27 1341

原创 MIT6.0001 笔记,LECTURE 5:Tuples, List (aliasing, mutability, cloning详解)

这一篇博客主要来解释list的高级特性,主要包括aliasing,mutability,和cloning。这三个特性在赋值时需要特别注意。举例和代码来自于MIT的公开课。

2019-03-18 18:55:04 1111

原创 单通道噪声抑制算法总结

单通道噪声抑制算法主要分为三个部分,噪声估计,信噪比估计,增益计算。这三个部分的重要性依次递减。噪声估计根据统计的观点,认为噪声成分会比语音成分更加的平稳。依此来区分噪声和语音。噪声估计有以下三大类的方法,最小值跟踪,递归平滑,直方图和分位数法。最基础的方法是最小值跟踪,该方法认为在一段时间内,需要包括纯噪声段,各个频点的最小幅值可以认为是该频点在这段时间内的噪声估计。这种观点很容易理解。但是...

2018-12-01 14:24:33 7012 1

原创 HTK 3.5解码工具HVITE独立工程(Visual Studio Code实现)

HTK3.5支持DNNHTK3.5支持DNN了,本来想做一个HMM+DNN的模型,作为HMM+GMM的对比。但是HTK不支持实时的HMM+DNN解码。原因有两个。HTK不支持实时的计算MFCC_0_D_A_Z的特征,即无法实时计算出特征空间的均值。HTK不支持实时的DNN或者HMM+DNN的解码。所以只能做离线的演示。为了学习HVITE的细节,我决定将HVITE工具单独编译。HTK的...

2018-11-24 14:53:59 991

原创 一文读懂滤波器的线性相位,全通滤波器,群延迟

数字信号处理最常见的面试题,请简述FIR和IIR的区别。其中的一个区别是FIR可以方便地实现线性相位。那这个线性相位指的是什么呢?先说结论,**线性相位能保证信号中各频率成分的相对相位关系不改变。通俗解释是:信号经过滤波器后,各个频率分量的延时时间是一样的**。...

2018-11-05 20:01:25 55548 35

原创 Ubuntu下Anaconda和Pycharm的配置

1.对于Ubuntu18.04,一开始会有一个系统默认的python解释器,是3.6版本,位置在/usr/bin/python3.6。可以通过在terminal中输入python或者python3来查看。2.安装了Anaconda3之后,Anaconda会自带一个python解释器,也是3.6版本,位置在/home/li/anaconda3/bin/python3。一旦安装了Anaconda,这个python就会变成默认的。在terminal里面直接输入python,显示的位置就是这个。

2018-09-17 19:06:54 23723

原创 RNN来解决命名实体识别问题(week2-NER,HSE-AML,Natural language processing, 第一周作业,配图,注释)

使用RNN来解决命名实体识别(NER)是NLP的常见问题。它能够将文字中的实体提取出来,比如人名,组织,地名等。这次作业的训练集来自Twitter,使用的结构是Bi-Directional Long Short-Term Memory Networks (Bi-LSTMs)。作业可以分成三个部分。

2018-07-06 18:57:33 3543 1

原创 一文读懂特征值和特征向量

本文用一个实例来说明特征值和特征向量的起因和实际意义,然后给出定义,计算方法,python代码以及其他解释。

2018-06-26 16:48:23 1978

翻译 week1-MultilabelClassification (Natural language processing, 第一周作业,配图,注释)

这是俄罗斯高等经济学院的系列课程第四门,Natural language processing,第一周编程作业。任务是利用**BOW**(bag of words)模型和TF-IDF( term frequency- inverse document frequency)模型对数据进行建模。本节作业的数据来自stackoverflow。建模之后开始学习从title到tags的映射关系。这个作业一共三个部分,难易程度:简单。1. Text preparation & wordsTags c

2018-06-24 16:55:27 2357

原创 隐马尔可夫模型学习笔记(之二,学习算法)

隐马尔可夫模型的学习,根据训练数据是包括观测序列和状态序列还是只有观测序列,可以分别由监督学习与非监督学习实现。由于监督学习需要使用训练数据,而人工标注训练数据往往代价很高,有时就会利用非监督学习的方法,即Baum-Welch算法(也就是EM算法)。在介绍学习算法之前,先介绍一些概率和期望值的计算。这些计算会成为Baum-Welch算法公式的基础。

2018-06-21 09:41:02 1319

原创 隐马尔可夫模型学习笔记(之一,概率计算问题)

隐马尔可夫模型是关于时序的概率模型,描述由一个隐藏的马尔可夫链随机生成不可观测的状态随机序列,再由各个状态生成一个观测而产生观测随机序列的过程。隐马尔可夫链随机生成的状态的序列,称为状态序列(state sequence);每个状态生成一个观测,而由此产生的观测的随机序列,称为观测序列(observation sequence)。序列的每一个位置又可以看作是一个时刻。

2018-06-15 13:58:10 2525

翻译 Introduction to Advanced Machine Learning, 第六周,week6_final_project_image_captioning_clean(答案)

这是俄罗斯高等经济学院的系列课程第一门,Introduction to Advanced Machine Learning,第六周编程作业。任务是利用pre-trained InceptionV3架构对图片进行编码,这个是预先训练好的架构。我们要使用的是通过这个编码训练一个RNN,来生成图片的标题,即描述图片的内容。其原理和机器翻译类似,相当于训练一个sequence model,输入和输出是不等长的。而这里输入是CNN的编码,输出是RNN的译码。

2018-06-01 14:11:14 2828

翻译 Introduction to Advanced Machine Learning, 第三周,week3_task2_fine_tuning_clean(hse-aml/intro-to-dl 答案)

这是俄罗斯高等经济学院的系列课程第一门,Introduction to Advanced Machine Learning,第三周编程作业。任务是利用pre-trained InceptionV3架构,使用花朵分类训练集,经过fine tune之后,能够用于花朵的识别。

2018-05-23 07:27:41 1223

翻译 Introduction to Advanced Machine Learning, 第二周,NumpyNN (honor)(hse-aml/intro-to-dl,简单注释,答案)

这是俄罗斯高等经济学院的系列课程第一门,Introduction to Advanced Machine Learning,第二周荣誉作业,任务是仅仅基于numpy建立一个NN,对MNIST图片进行识别。 本次作业只有一个任务,难易程度:中等。 Your very own neural networkIn this notebook, we’re going to build a ne...

2018-05-19 16:22:10 1810 4

翻译 Introduction to Advanced Machine Learning, 第五周,RNN-task(hse-aml/intro-to-dl,简单注释,答案,附图)

这是俄罗斯高等经济学院的系列课程第一门,Introduction to Advanced Machine Learning,第五周第一个编程作业,目的是通过训练一个language model,用来生成名字。

2018-05-19 13:41:10 1441

原创 MIT6.0001 笔记,LECTURE 8:Object Oriented Programming (class,object,method)

本节课主要讲述了class,object,method这些概念。首先讲述了**python中的任何一个数据类型都是一个类**。任何一个数据,都是类的一个实体。类的作用能够更好地抽象所描述的对象,将相关的数据和方法封装起来。对于相似功能的方法,因为属于不同的类,可以有同样的命名,但是功能却更适合所属的类。其次举例说明了类,对象,方法的**定义,实现和使用的方法**。这里举了一个Fraction类的编写过程的例子。

2018-05-19 13:12:56 1720

原创 Python笔记:string,tuple,list,dictionary的区别(之二,高级用法与类型转换)

上一篇《Python中string, tuple,list,dictionary的区别(之一,基本用法与区别)》讲述了这四种类型的基本用法与区别,本篇讲述的是高级用法与类型转换。### tuple的用法tuple 的用法只在MIT的python课程里提到过一种,那就是返回多个值。但是我发现list也有这个功能,可能tuple的不可修改性更适合完成这个任务吧。以后看到了其他用法再增加。

2018-05-17 19:25:13 1901 2

原创 Python笔记:string,tuple,list,dictionary的区别(之一,基本用法与区别)

Python的数据结构中,string,tuple,list,dictionary,互相之间既有相似,又有区别,容易混淆。笔记一共两篇,本篇主要记录各自的基本用法与区别,下一篇《Python中string, tuple,list,dictionary的区别(之二,高级用法与类型转换)》是他们的高级用法与类型转换的方法。

2018-05-13 20:48:43 5598

ptse.7zptse.7z

ptse.7zptse.7z

2022-09-03

Understanding FFTs and Windowing.pdf

详细分析FFT和加窗的用处。详细分析FFT和加窗的用处。Understanding FFTs and Windowing。

2020-04-25

空空如也

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

TA关注的人

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