SVM使用方法总结

SVM使用方法总结
SVM使用方法总结

SVM的使用方法(整理完成于2011-03-14)

目录

1 Libsvm下载 (3)

2 Libsvm3.0环境变量设置 (3)

3 训练和测试数据集下载 (3)

4 运行python程序的环境配置 (3)

5 LIBSVM 使用的一般步骤是: (3)

6 再来说一下,libsvm-3.0的需要的数据及其格式。 (4)

7 Libsvm数据格式制作: (4)

8 Windows版本的工具 (4)

9 核函数的使用简介 (8)

10 grid.py的使用 (10)

11 subset.py使用方法 (11)

12 checkdata.py的使用方法 (12)

13 easy.py使用方法 (12)

14 一个具体的应用实例 (13)

15 备注:常见问题的解决办法 (15)

1 Libsvm下载

在你给我发的邮件地址https://www.360docs.net/doc/7817456032.html,.tw/~cjlin/libsvm/下载libsvm的最新版本,现在最新版本是3.0的,下载地址为https://www.360docs.net/doc/7817456032.html,.tw/~cjlin/libsvm/libsvm-3.0.zip 1、将libsvm-3.0.zip解压,我的解压到了C:\根目录下了。

2 Libsvm3.0环境变量设置

添加环境变量到path:我的电脑->属性->高级->环境变量->系统变量->变量列表里面双击Path,在变量值最后添加;C:\libsvm-3.0\windows 然后点击确定即可。

3 训练和测试数据集下载

在以下网址https://www.360docs.net/doc/7817456032.html,.tw/%7Ecjlin/papers/guide/data/可以下载到用来训练的数据集合用来测试的数据集,这都是一些简单的数据。

4 运行python程序的环境配置

由于有可能使用到C:\libsvm-3.0\tools下的工具,所以的搭建相应的环境,下载两个软件python和gnuplot,下面说一下两个软件的下载地址和配置:

a.对于python,下载地址在https://www.360docs.net/doc/7817456032.html,上寻找下载,目前版本是3.2的,但是我用的是2.6的,测试成功。安装就默认安装在C:\就行,记得将C:\Python26 添加到系统环境变量中。另外将C:\Python26 中的python.exe添加到C:\libsvm-3.0\windows下面即可。

b.对于gnuplot ,下载地址在https://www.360docs.net/doc/7817456032.html,/。目前最新版本是4.4.3。他不用安装,直接解压放到C:\根目录即可。(这注:部分不需要了)。

c.下载gp440win32.zip,在网址https://www.360docs.net/doc/7817456032.html,/fileview_352799.html下载,这个解压放到C盘根目录,然后拷贝C:\gnuplot\binary中的gnuplot.exe放到C:\libsvm-3.0\windows 下面即可。

5 LIBSVM 使用的一般步骤

1)按照LIBSVM软件包所要求的格式准备数据集

2)对数据进行简单的缩放操作;

3)首要考虑选用RBF 核函数;

4)采用交叉验证选择最佳参数C与g ;

5)采用最佳参数C与g 对整个训练集进行训练获取支持向量机模型;

6)利用获取的模型进行测试与预测。

6 libsvm-3.0数据及其格式

该软件使用的训练数据和检验数据文件格式如下:

[labe l] [index1]:[value1] [index2]:[value2] …

[label] [index1]:[value1] [index2]:[value2] …

Label 就是说class(属于哪一类), 就是你要分类的种类,通常是一些整数。

index 是有順序的索引,通常是连续的整数。就是指特征编号,必须按照升序排列value 就是特征值,用来train 的数据,通常是一堆实数组成。

(注:修改训练和测试数据的格式为程序可以识别的程序

目标值第一维特征编号:第一维特征值第二维特征编号:第二维特征值…

目标值第一维特征编号:第一维特征值第二维特征编号:第二维特征值…

……

目标值第一维特征编号:第一维特征值第二维特征编号:第二维特征值…

例如:2.3 1:5.6 2:3.2

表示训练用的特征有两维,第一维是5.6,第二维是3.2,目标值是2.3

注意:训练和测试数据的格式必须相同,都如上所示。测试数据中的目标值是为了计算误差用)

7 Libsvm数据格式制作

该过程可以自己使用excel或者编写程序来完成,也可以使用网络上FormatDataLibsvm.xls来完成。FormatDataLibsvm.xls使用说明:

a. 先将数据按照下列格式存放(注意label放最后面):

value1 value2 … label

value1 value2 … label

value1 value2 … label

b. 然后将以上数据粘贴到FormatDataLibsvm.xls中的最左上角单元格,接着工具->宏->执行FormatDataToLibsvm宏。就可以得到libsvm要求的数据格式。测试可用,下载地址在(https://www.360docs.net/doc/7817456032.html,/f/9299654.html?from=like),或者自己再google中搜索下载即可。

8 Windows版本的工具

Windows版本的工具svm-scale.exe进行训练和测试数据的归一化,svm-train.exe进

行模型训练,svm-predict.exe进行预测,具体步骤和过程在下面介绍。

2、C:\libsvm-3.0\windows下的工具使用方法

打开C:\libsvm-3.0\windows ,里面有四个windows的exe程序。下面解释一下这四个exe执行程序的意义和用法

①svm-scale.exe:scale输入数据,简单优化数据以提高精度。扫描数据. 因为原始数据可能范围过大或过小, svmscale可以先将数据重新scale (縮放) 到适当范围使训练与预测速度更快

使用方法:svm-scale.exe [-l lower] [-u upper] [-y y_lower y_upper] [-s save_name] [-r store_name] filename;其中

-l:数据下限标记;

lower:缩放后数据下限缺省值: lower = -1;

-u:数据上限标记;

upper:缺省值: upper = 1,代表着没有对y进行缩放;

-y:是否对目标值同时进行缩放;

y_lower:为下限值;

y_upper:为上限值;(回归需要对目标进行缩放,因此该参数可以设定为–y -1 1 );-s save_name:表示将缩放的规则保存为文件save_name;

-r store_name:表示将缩放规则文件store_name载入后按此缩放;

filename:待缩放的数据文件(要求满足前面所述的格式)。

缩放规则文件可以用文本浏览器打开,看到其格式为:

y

lower upper min max x

lower upper

index1 min1 max1

index2 min2 max2

其中的lower 与upper 与使用时所设置的lower 与upper 含义相同;index 表示特征序号;min 转换前该特征的最小值;max 转换前该特征的最大值。数据集的缩放结果在此情况下通过DOS窗口输出,当然也可以通过DOS的文件重定向符号“>”将结果另存为指定的文件。该文件中的参数可用于最后面对目标值的反归一化。反归一化的公式为:

(Value-lower)*(max-min)/(upper - lower)+lower

其中value为归一化后的值,其他参数与前面介绍的相同。

建议将训练数据集与测试数据集放在同一个文本文件中一起归一化,然后再将归一化结果分成训练集和测试集。

②svm-train.exe:训练数据,生成模型

使用方法:svm-train.exe [options] training_set_file [model_file],其中:

options(操作参数):可用的选项即表示的涵义如下所示-s svm类型:设置SVM 类型,默认值为0,可选类型有(对于回归只能选3或4):

0 – C-SVC

1 – n-SVC

2 -- one-class-SVM

3 – e-SVR

4 – n-SVR

-t 核函数类型:设置核函数类型,默认值为2,可选类型有:

0 -- 线性核:u'*v

1 -- 多项式核:(g*u'*v+ coef 0)deg ree

2 -- RBF 核:e( u v 2) g –

3 -- sigmoid 核:tanh(g*u'*v+ coef 0)

-d degree:核函数中的degree设置,默认值为3;

-g g :设置核函数中的g ,默认值为1/ k ;

-r coef0:设置核函数中的coef 0,默认值为0;

-c cost:设置C- SVC、e - SVR、n - SVR中从惩罚系数C,默认值为1;

-n n :设置n - SVC、one-class-SVM 与n - SVR 中参数n ,默认值0.5;

-p e :设置n - SVR的损失函数中的e ,默认值为0.1;

-m cachesize:设置cache内存大小,以MB为单位,默认值为40;

-e e :设置终止准则中的可容忍偏差,默认值为0.001;

-h shrinking:是否使用启发式,可选值为0 或1,默认值为1;

-b 概率估计:是否计算SVC或SVR的概率估计,可选值0 或1,默认0;

-wi weight:对各类样本的惩罚系数C加权,默认值为1;

-v n:n折交叉验证模式。

training_set_file:是要进行训练的数据集;

model_file:是训练结束后产生的模型文件,该参数如果不设置将采用默认的文件名,也可以设置成自己惯用的文件名。

(注1:其中-g选项中的k是指输入数据中的属性数。操作参数-v 随机地将数据剖分为n 部分并计算交叉检验准确度和均方根误差。以上这些参数设置可以按照SVM 的类型和核函数所支持的参数进行任意组合,如果设置的参数在函数或SVM 类型中没有也不会产生影响,程序不会接受该参数;如果应有的参数设置不正确,参数将采用默认值。)(注2:网上实验中的参数-s取3,-t取2(默认)还需确定的参数是-c,-g,-p

另,实验中所需调整的重要参数是-c 和–g,-c和-g的调整除了自己根据经验试之外,还可以使用gridregression.py对这两个参数进行优化。(需要补充)

该优化过程需要用到Python(测试是2.5),Gnuplot(测试是4.2),gridregression.py (1、该文件需要修改路径2、下载地址在https://www.360docs.net/doc/7817456032.html,/f/6784903.html,再试没有使用过)。然后在命令行下面运行:

python.exe gridregression.py -log2c -10,10,1 -log2g -10,10,1 -log2p -10,10,1 -s 3 –t 2 -v 5 -svmtrain E:\libsvm\libsvm-2.86\windows\svm-train.exe -gnuplot

E:\libsvm\libsvm-2.86\gnuplot\bin\pgnuplot.exe E:\libsvm\libsvm-2.86\windows\train.txt > gridregression_feature.parameter

以上三个路径根据实际安装情况进行修改。

-log2c:是给出参数c的范围和步长

-log2g:是给出参数g的范围和步长

-log2p:是给出参数p的范围和步长上面三个参数可以用默认范围和步长

-s:选择SVM类型,也是只能选3或者4 -t是选择核函数

-v :10 将训练数据分成10份做交叉验证。默认为5

为了方便将gridregression.py可以将其存放在python.exe安装目录下

trian.txt为训练数据,参数存放在gridregression_feature.parameter中,可以自己命名。

搜索结束后可以在gridregression_feature.parameter中最后一行看到最优参数。

其中,最后一行的第一个参数即为-c,第二个为-g,第三个为-p,最后一个参数为均方误差。前三个参数可以直接用于模型的训练。然后,根据搜索得到的参数,重新训练,得到模型。

例如:svmtrain.exe -s 3 -p 0.0001 -t 2 -g 32 -c 0.53125 -n 0.99 feature.scaled ;

再例如:运行svmtrain.exe heart_scale会得出下面结果输出:

其中,

#iter为迭代次数,

nu 是你选择的核函数类型的参数,

obj为SVM文件转换为的二次规划求解得到的最小值,

rho为判决函数的偏置项b,

nSV 为标准支持向量个数(0

nBSV为边界上的支持向量个数(a[i]=c),

Total nSV为支持向量总个数(对于两类来说,因为只有一个分类模型Total nSV = nSV,但是对于多类,这个是各个分类模型的nSV之和)。

训练后的模型保存为文件heart_scale.model,用记事本打开其内容如下:

svm_type c_svc % 训练所采用的svm类型,此处为C- SVC

kernel_type rbf %训练采用的核函数类型,此处为RBF核

gamma 0.0769231%设置核函数中的g ,默认值为1/ k

nr_class 2 %分类时的类别数,此处为两分类问题

total_sv 132%总共的支持向量个数

rho 0.424462 %决策函数中的常数项b

label 1 -1 %类别标签

nr_sv 64 68%各类别标签对应的支持向量个数

SV %以下为支持向量

1 1:0.166667 2:1 3:-0.333333 4:-0.43396

2 5:-0.383562 6:-1 7:-1 8:0.068702

3 9:-1 10:-0.903226 11:-1 12:-1 13:1

0.5104832128985164 1:0.125 2:1 3:0.333333 4:-0.320755 5:-0.406393 6:1 7:1

8:0.0839695 9:1 10:-0.806452 12:-0.333333 13:0.5

1 1:0.333333 2:1 3:-1 4:-0.245283 5:-0.506849 6:-1 7:-1 8:0.129771 9:-1 10:-0.16129 12:0.333333 13:-1

1 1:0.208333 2:1 3:0.333333 4:-0.660377 5:-0.525114 6:-1 7:1 8:0.435115 9:-1 10:-0.193548 12:-0.333333 13:1

③svm-predict.exe:用来测试训练结果的准确率

使用方法:svm-predict.exe [options] test_file model_file output_file

options(操作参数):

-b probability_estimates:是否需要进行概率估计预测,可选值为0或1,默认值为0。

model_file:是由svm-train.exe 产生的模型文件;

test_file:是要进行预测的数据文件;

output_file:是svmpredict 的输出文件,表示预测的结果值。

(注:输出结果包括均方误差(Mean squared error)和相关系数(Squared correlation coefficient)。)

例如:svmpredict.exe feature_test.scaled feature.scaled.model feature_test.predicted

其中feature_test.scaled是归一化后的测试特征文件名,feature.scaled.model是训练好的模型,SVM预测的值在feature_test.predicted中。

9 核函数的使用简介

(1)核函数发展历史

早在1964年Aizermann等在势函数方法的研究中就将该技术引入到机器学习领域,但是直到1992年Vapnik等利用该技术成功地将线性SVMs推广到非线性SVMs时其潜力才得以充分挖掘。而核函数的理论则更为古老,Mercer定理可以追溯到1909年,再生核希尔伯特空间(ReproducingKernel Hilbert Space, RKHS)研究是在20世纪40年代开始的。(2)核函数方法原理

根据模式识别理论,低维空间线性不可分的模式通过非线性映射到高维特征空间则可能实现线性可分,但是如果直接采用这种技术在高维空间进行分类或回归,则存在确定非线性映射函数的形式和参数、特征空间维数等问题,而最大的障碍则是在高维特征空间运算时存在的“维数灾难”。采用核函数技术可以有效地解决这样问题。

设x,z∈X,X属于R(n)空间,非线性函数Φ实现输入间X到特征空间F的映射,其中F属于R(m),n<

K(x,z) =<Φ(x),Φ(z) >(1)

其中:<, >为内积,K(x,z)为核函数。从式(1)可以看出,核函数将m维高维空间的内积运算转化为n维低维输入空间的核函数计算,从而巧妙地解决了在高维特征空间中计算的“维数灾难”等问题,从而为在高维特征空间解决复杂的分类或回归问题奠定了理论基础。

(3)核函数特点

核函数方法的广泛应用,与其特点是分不开的:

1)核函数的引入避免了“维数灾难”,大大减小了计算量。而输入空间的维数n对核函数矩阵无影响,因此,核函数方法可以有效处理高维输入。

2)无需知道非线性变换函数Φ的形式和参数.

3)核函数的形式和参数的变化会隐式地改变从输入空间到特征空间的映射,进而对特征空间的性质产生影响,最终改变各种核函数方法的性能。

4)核函数方法可以和不同的算法相结合,形成多种不同的基于核函数技术的方法,且这两部分的设计可以单独进行,并可以为不同的应用选择不同的核函数和算法。

(4)常见核函数

核函数的确定并不困难,满足Mercer定理的函数都可以作为核函数。常用的核函数可分为两类,即内积核函数和平移不变核函数,如:

1)高斯核函数K(x,xi) =exp(-||x-xi||2/2σ2;

2)多项式核函数K(x,xi)=(x·xi+1)^d, d=1,2,…,N;

3)感知器核函数K(x,xi) =tanh(βxi+b);

4)样条核函数K(x,xi) = B2n+1(x-xi)。

(5)核函数方法实施步骤

核函数方法是一种模块化(Modularity)方法,它可分为核函数设计和算法设计两个部分,具体为:

1)收集和整理样本,并进行标准化;

2)选择或构造核函数;

3)用核函数将样本变换成为核函数矩阵,这一步相当于将输入数据通过非线性函数映射到高维特征空间;

4)在特征空间对核函数矩阵实施各种线性算法;

5)得到输入空间中的非线性模型。

显然,将样本数据核化成核函数矩阵是核函数方法中的关键。注意到核函数矩阵是l×l的对称矩阵,其中l为样本数。

(6)核函数在模式识别中的应用

1)新方法。主要用在基于结构风险最小化(Structural Risk Minimization,SRM)的SVM 中。

2)传统方法改造。如核主元分析(kernel PCA)、核主元回归(kernel PCR)、核部分最小二乘法(kernel PLS)、核Fisher判别分析(Kernel Fisher Discriminator, KFD)、核独立主元分析(Kernel Independent Component Analysis,KICA)等,这些方法在模式识别等不同领域的应用中都表现了很好的性能。

10 grid.py使用方法

文件grid.py是对C-SVC的参数c和γ做优选的,原理也是网格遍历,假设我们要对目录C:\libsvm-3.0下的样本文件heart_scale做优选,其具体用法为:

第一步:打开C:\libsvm-3.0下的tools文件夹,找到grid.py文件,将其拷贝到

C:\libsvm-3.0\windows下。用python打开(不能双击,而要右键选择“Edit with IDLE”),修改svmtrain_exe和gnuplot_exe的路径。

svmtrain_exe = r"C:\libsvm-3.0\windows\svm-train.exe"

gnuplot_exe = r"C:\gnuplot\binary\pgnuplot.exe"

(注:这里面还有一个是对非win32的,可以不用改,只改#example for windows下的两行就可以)

第二步:运行cmd,进入dos环境,定位到C:\libsvm-3.0\windows文件夹,这里是放置grid.py的地方。

第三步:输入以下命令:

python grid.py heart_scale

(注:还要把数据文件heart_scale放置到C:\libsvm-3.0\windows下面啊)

你就会看到dos窗口中飞速乱串的[local]数据,以及一个gnuplot的动态绘图窗口。大约过10秒钟,就会停止。Dos窗口中的[local]数据时局部最优值,这个不用管,直接看最后一行:

2048.0 0.0001220703125 84.0741

其意义表示:C = 2048.0;γ=0.0001220703125(γ是哪个参数?参看LibSVM学习(三)中svmtrain的参数说明);交叉验证精度CV Rate = 84.0741%,这就是最优结果。

第四步:打开目录C:\libsvm-3.0\windows,我们可以看到新生成了两个文件:

heart_scale.out和heart_scale.png,第一个文件就是搜索过程中的[local]和最优数据,第二文件就是gnuplot图像。

现在,grid.py已经运行完了,你可以把最优参数输入到svm-train.exe中进行训练了。当然了,你在当中某一步很可能出现问题,下面就需要注意的问题说明一下:

1)grid.py和svm-train的版本要统一,也就是说你不能用2.6的grid.py去调用2.89的svm-train。

2)你的目录中如果有空格,比如C:\program files\ libsvm\...,那么无论是在第一步还是第二步,在运行cmd后,请把目录改成C:\program files\ libsvm\...

3) 第三步的命令问题。首先要看你定位到哪个目录,那么其下的文件就不需要带路径,否则就要带。像我们上面的命令,我当前的目录是C:\libsvm-3.0\windows,那么其下的grid.py和heart_scale等文件就不需要加路径,如果python.exe是在C:\python26\下,不在当前目录下,那么就要要加路径。其命令就可以改成:

C:\python26\python grid.py heart_scale

总起来说,命令为python 目标文件样本文件,其原则是要让系统找得到文件。假如系统提示你“不是内部或外部命令”,说明你python的路径错误,而如果是‘not found file’的提示,很可能是其他两个文件路径错误。

4)假如,你仍旧出现问题,那么请换一下python或者gnuplot的版本,目前python 最新版本是3.1,但是好像会出问题,老一点的版本2.4或2.5的兼容性会更好。

11 subset.py使用方法

训练大的数据集会是非常耗时的事情,在某一些场合上,我们可以先工作在一个更小的一个训练集的子集上实验,这也就是subset.py的用处所在,它的主要功能就是从大的数据中抽取一定数量的数据子集,它的应用格式是如下的:

subset.py [options] dataset number [output1] [output2]

op tions:

-s method : method of selection (default 0)

0 -- stratified selection (classification only)

1 -- random selection

dataset :数据文件

number:要选定的subset的个数

output1:the subset(optional)

output2:the rest of data(optional)

例如: python subset.py heart_scale 100 file1 file2

From heart_scale 100 samples are randomly selected and stored in

file1. All remaining instances are stored in file2.

(注:具体参见C:\libsvm-3.0\tools下的README,使用记事本或者写字板打开)

12 checkdata.py使用方法

checkdata.py 用于检测样本集存储格式是否正确在控制台下定位到subset.py所在的目录(将其拷贝到C:\libsvm-3.0\windows下)运行:

python checkdata.py heart_scale

运行结果:

No error. (表示数据文件heart_scale格式没有错误,可以进行后续的调用)

13 easy.py使用方法

文件easy.py对样本文件做了“一条龙服务”,从参数优选,到文件预测。因此,其对grid.py、svm-train.exe、svm-scal.exe和svm-predict.exe都进行了调用(当然还有必须的python和gnuplot)。因此,运行easy.py需要保证这些文件的路径都要正确。当然还需要样本文件和预测文件,再简单的测试中,可以使用heart_scale作为训练样本,预测文件同样使用heart_scale,只是我们复制一份后将其改名为heart_test,下面说一下使用方法:

第一步:将easy.py拷贝到C:\libsvm-3.0\windows目录下,用python打开(不能双击,而要右键选择“Edit with IDLE”),修改# example for windows下的几个路径:svmscale_exe = r"C:\libsvm-3.0\windows\svm-scale.exe"

svmtrain_exe = r"C:\libsvm-3.0\windows\svm-train.exe"

svmpredict_exe = r"C:\libsvm-3.0\windows\svm-predict.exe"

gnuplot_exe = r"C:\gnuplot\binary \pgnuplot.exe"

grid_py = r"C:\libsvm-3.0\windows\grid.py"

第二步:运行cmd,进入dos环境,定位到放置easy.py的目录C:\libsvm-3.0\windows。第三步:输入命令:

python easy.py heart_scale heart_test

你就会看到一个gnuplot的动态绘图窗口。大约20s以后停止,dos窗口显示为:Scaling training data...

Cross validation...

Best c=2048.0, g=0.0001220703125 CV rate=84.0741

Training...

Output model: heart_scale.model

Scaling testing data...

Testing...

Accuracy = 85.1852% (230/270) (classification)

Output prediction: heart_test.predict

这就是最终预测结果,可以看到第三行就是调用grid.py的结果。在C:\libsvm-3.0\windows 下你会看到又多了7个文件,都是以前我们碰到的过程文件,都可以用记事本打开。

14 具体的应用实例

1) 以libsvm-3.0中的heart_scale作为训练数据和测试数据,同时已经将python2.6安装至c 盘,并将grid.py文件中关于gnuplot路径的默认值修改为实际解压缩后的路径,将heart_scale、grid.py和python.exe拷贝至C:\libsvm-3.0\windows文件夹下。

2)运行cmd,定位到目录C:\libsvm-3.0\windows如下所示:

3)输入如下命令

svm-train.exe heart_scale

得到结果图:

optimization finished, #iter = 162

nu = 0.431029

obj = -100.877288, rho = 0.424462

nSV = 132, nBSV = 107

Total nSV = 132

(注:参数的意义上面有介绍)

4)此时,已经得到heart_scale.model,进行预测:

svm-predict heart_scale heart_scale.model heart_scale.out

Accuracy = 86.6667% (234/270) (classification)

正确率为Accuracy = 86.6667%。

5)进行参数最优估计,运行命令

python grid.py heart_scale

大概运行10s的样子,命令如下所示

运行到最后得到

注意到最后一行的参数了吧,就是最有参数:

最优参数c=2048,g=0.0001220703125.

6)然后在调用命令

svm-train.exe -c 2048 -g 0.0001220703125 heart_scale得到model

7)调用命令:

svm-predict.exe heart_scale heart_scale.model heart_scale.out

得到结果窗口如下:

得到的正确率为Accuracy = 85.1852%.这块还有点迷惑?为什么正确率降低了?当然也可以结合subset.py 和easy.py 实现自动化过程。详见上面的相关介绍

15 备注

常见问题的解决办法

网址为:https://www.360docs.net/doc/7817456032.html,/content/11/0103/11/5316402_83555125.shtml

1)

Scaling training data...

Cross validation...

Traceback (most recent call last):

File "easy.py", line 61, in ?

c,g,rate = map(float,last_line.split())

ValueError: need more than 0 values to unpack

[解析] 说明你的grid.py运行出现错误,你可以参照上部分“grid.py使用方法”运行一下就会发现问题。另外,有的说是相对路径的问题,建议找到easy.py的以下部分:cmd = "%s -svmtrain %s -gnuplot %s %s" % (grid_py, svmtrain_exe, gnuplot_exe, scaled_file)

改成

cmd = "%s %s -svmtrain %s -gnuplot %s %s" % (python_path, grid_py, svmtrain_exe,

gnuplot_exe, scaled_file)

2)

Traceback (most recent call last)

File "grid.py", line 349, in ?

main()

File "grid.py", line 344, in main

redraw(db)

File "grid.py", line 132, in redraw

gnuplot.write("set term windows\n")

IOError [Errno 22] Invalid argument

[解析] 说明你的gnuplot.exe在调用过程中出现问题,要么是你的路径不对,要么是你的版本不对,请检查。

3)

Traceback (most recent call last):

File "C:\Python24\lib\threading.py", line 442, in __bootstrap

self.run()

File "c:\libsvm\tools\gridregression.py", line 212, in run

self.job_queue.put((cexp,gexp,pexp))

File "C:\Python24\lib\Queue.py", line 88, in put

self._put(item)

File "c:\libsvm\tools\gridregression.py", line 268, in _put

self.queue.insert(0,item)

AttributeError: 'collections.deque' object has no attribute 'insert

[解析] 很显然,你调用的是gridregression.py,其是用来做回归用的。如果你调用easy.py 也出现这种问题按照原作者的说法,这里是因为你的python调用出现错误,很可能是版本不对,如果是2.4的版本,请把easy.py中的

self.queue.insert(0,item)

改成

if sys.hexversion >= 0x020400A1:

self.queue.appendleft(item)

else

self.queue.insert(0,item)

F2812外部接口XINTF资料

F2812外部接口XINTF 什么是外部接口,外部接口有什么作用,怎么去配置和使用这一块。今天了解了这部分的知识,现将其详细的记录下来。先看一下什么是外部接口。外部接口是F2812与外部设备进行通信的重要接口,这些外部接口对应着CPU内部的某个存储空间,CPU通过对存储空间进行的读写操作间接控制外部接口。书本上抄下来的定义,很是官方啊,不好懂。再来看一下接的是一些什么,估计是不是会好理解一些呢?一般用于RAM,FLASH等。哦...估计是内部数据或者是程序存不下了,找一个外面的片子来做存储区扩展用的接口。 外部接口有哪一些线呢?有片选信号线、数据总线、地址总线、读写使能信号线、以及其他信号线。 F2812中外部接口被映射到5个固定的存储空间区域,每个区域都有一个片选信号。当系统使能片选信号后,数据自动存储到对应的存储空间内。嘻嘻!就喜欢这一句自动存储。 所有的数字芯片不能少的一条主线就是时钟,这个模块的时钟怎样呢?答:XINTF模块的时序都是参照F2812的内部时钟XTIMCLK。大小可以人为设定为系统时钟或系统时钟的一半。 F2812中XINTF的使用

想使用XINTF先要弄清楚里面有些什么,外面有些什么引 脚需要接线。 XINTF一共有5个空间,分别是Zone0、Zone1、Zone2、Zone6、Zone7,每个空间有相应的片选信号线连接到外面。其中1、2共用一根片选线,6、7共用一根片选线;2、6共用相同的外 部地址,外部首地址0x0 0000、尾地址0x7 ffff;1、2占用的 外部总线地址不同,0的为0x2000~0x3fff、1的为0x4000~0x5fff;空间7可以作为外部启动的存储空间,由于这个空间的特殊性,所以暂时不打算用,也就不放在这里讨论了。 观察了一下开发板,CPLD的接线为8根数据线,五根地址线,空间0、1共用的片选线,还有R/W读写信号线,WE写使能信号线,RD读使能信号线。 对XINTF空间的操作分为以下三个部分,引导、激活、跟踪。 引导:访问区域的片选信号为低,相应地址放在外设总线上,引导部分的周期通过XTIMCLK来配置时序。 激活:访问外部设备,由于我只进行读操作,所以将读使能信号线拉低,外部接口的数据被锁存到DSP中。暂不打算使 用XREADY信号采样。 跟踪:跟踪周期是指读写信号置成高电平之后片选信号仍然保持低电平一段时间。

page的用法总结大全

page的用法总结大全 page这个单词你知道是什么意思吗?page的用法是怎样的呢,快来了解一下吧,今天小编给大家带来了page的用法 ,希望能够帮助到大家,一起来学习吧。 page的意思 n. 页,(计算机的)页面,年史, vt. 标记…的页数,翻页,喊出名字以寻找,(在公共传呼系统上)呼叫 vi. 翻书页,浏览 变形:过去式: paged; 现在分词:paging; page用法 page可以用作名词 page的基本意思是“页”,指书刊、杂志等的一页或报纸等的一版,也可指纸的一张,还可指报纸的“专页”。 page也可指可写入书中的历史事件或时期。 page用作动词的意思是“标记…的页数”或“翻页”。 page用作名词的用法例句 There are several faults in the page of figures.那一页的数字中有几个差错。 Open your German readers at page 28.把德语课本翻到第28页。 The page number is shown at the foot of the page.在页脚处可以看到页码。 page可以用作动词 page用作动词的意思是“标记…的页数”或“翻页”。 page也可作“呼叫…”解,指在公共场所通过扩音器呼喊找人。 page是及物动词,接名词或代词作宾语。 page用作动词的用法例句 When the book is ready for printing,someone has to page it up.书在付印前,必须有人排好页码。 He tore the sheet in his hurry to turn over the page.他匆忙翻页的时候,把杂志都撕坏了。 Absorbed, she licked her index finger absently each time she turned a page.她读得出神,每次翻页就不自觉地舔一下食指。

TMS320F28335外部中断总结

TMS320F28335外部中断总结 作者:Free 文章来源:Free 点击数:93 更新时间:2010-8-26 在这里我们要十分清楚DSP的中断系统。C28XX一共有16个中断源,其中有2个不可屏蔽的中断RESET和NMI、定时器1和定时器2分别使用中断13 和14。这样还有12个中断都直接连接到外设中断扩展模块PIE上。说的简单一点就是PIE 通过12根线与28335核的12个中断线相连。而PIE的另外 一侧有12*8根线分别连接到外设,如AD、SPI、EXINT等等。这样PIE共管理12*8=96个外部中断。这12组大中断由28335核的中断寄存器IER来控 制,即IER确定每个中断到底属于哪一组大中断(如IER |= M_INT12;说明我们要用第12组的中断,但是第12组里面的什么中断CPU并不知道需 要再由PIEIER确定)。接下来再由PIE模块中的寄存器PIEIER中的低8确定该中断是这一组的第几个中断,这些配置都要告诉CPU(我们不难想 象到PIEIER共有12总即从PIEIER1-PIEIER12)。另外,PIE模块还有中断标志寄存器PIEIFR,同样它的低8位是来自外部中断的8个标志位,同 样CPU的IFR寄存器是中断组的标志寄存器。由此看来,CPU的所有中断寄存器控制12组的中断,PIE的所有中断寄存器控制每组内8个的中断。 除此之外,我们用到哪一个外部中断,相应的还有外部中断的寄存器,需要注意的就是外部中断的标志要自己通过软件来清零。而PIE和CPU的 中断标志寄存器由硬件来清零。 EALLOW; // This is needed to write to EALLOW protected registers PieVectTable.XINT2 = &ISRExint; //告诉中断入口地址 EDIS; // This is needed to disable write to EALLOW protected registers PieCtrlRegs.PIECTRL.bit.ENPIE = 1; // Enable the PIE block使能PIE PieCtrlRegs.PIEIER1.bit.INTx5= 1; //使能第一组中的中断5 IER |= M_INT1; // Enable CPU 第一组中断

网络分析仪使用方法总结

如何使用网络分析仪 德力网络分析仪NA7682A NA7682A矢量网络分析仪吸取了前几代和国内外各款网络分析仪使用的经验,结合了最新国际仪器发展的技术和态势,是Deviser德力仪器最新推出的第四代矢量网络分析仪,作为国内主流的网络分析仪,下面介绍网络分析仪的使用技巧如下。 频率范围从100kHz到8.5GHz频段,为无线通信、广播电视、汽车电子、半导体和医疗器件等行业射频器件、组件的研发和生产的使用提供了高效、灵活的测试手段,进入了民品、工业、科研教育和军工等领域。其主要的特点是和主流网络分析仪是德的E507X系列指标和指令上做到兼容,在客户使用的性价比上非常优秀的选择。 在射频器件、基站天线、手机天线、GPS天线等、通信系统模块分析等领域成功的测试经验使越来越多的客户开始使用这款网络分析仪,在低频、800/900M、1800/1900M、2100M、5G/5.8G等的产品频率使用领域内广泛使用。 深圳市良源通科技有限公司专业服务和销售射频和通信仪表多年,是德力仪器国内最重要的合作伙伴和一级代理商,结合自己多年的技术积累和客户使用的配合测试,得到丰富经验。在仪器的售前和售后服务上面具有自己的优势。提供大量仪器试用和使用方案的设计,给客户在设备开发、产品研制和批量生产上都提供方便和最有优势的选择。 产品特点: 1、12.1英寸1280*800 TFT触摸屏 2、频率覆盖范围: 100 kHz 至 8.5 GHz 3、阻抗:50Ω 4、动态范围: >125 dB (比E5071C宽7-12dB) 5、极低的迹线噪声: <0.005 dBrms (在 3 kHz IFBW) 6、快速的测量速度: 80usec/点 7、分析和误差修正和校准功能 8、通过USB、LAN 和 GPIB 接口进行系统互联 9、时域分析(选件):时域传输、反射特性分析;距离上的故障定位。 10、数据变换:涉及多种形式的阻抗、导纳变换。 11、滤波器分析:自动分析出:插损、3dB带宽、6dB带宽、带内纹波、带外抑制、Q值、矩形系数

Seated的用法小结

Seated的用法小结 seated是一个比较特别的过去分词,说它特殊一是因为它的词性尚有不确定性——它有时是过去分词,有时又具有形容词的性质,像是一个形容词;二是因为这样一个很少引人注意的过去分词,在近几年的高考英语考题中经常“露脸”,一下子变成了一个热点词汇。下面我们先来看几道高考题: 1. Please remain __________ until the plane has come to a complete stop. (山东卷) A. to seat B. to be seated C. seating D. seated 2. Please remain __________; the winner of the prize will be announced soon. (辽宁卷) A. seating B. seated C. to seat D. to be seated 3. Can those _________ at the back of the classroom hear me? (福建卷) A. seat B. sit C. seated D. sat 对于seated的用法,首先要从动词seat说起。 同学们可能只知道seat的名词用法,即只知道它表示“座位”。 其实,seat还可用作动词,且是一个典型的及物动词,其意为“给某人座位”“让人坐”或“能容纳……”句式:sb be seated 或seat sb / oneself 。 如: Seat the boy next to his brother. 让那个孩子坐在他哥哥旁边。 We can seat 300 in the auditorium. 我们这个礼堂可容纳300人。

C语言extern使用方法总结

extern使用方法总结! 作者:VIP用户提交日期:2007-5-16 20:53:00 Extern的问题在于不知道这个关键词出现的时候到底是声明还是定义。 谨记:声明可以多次,定义只能一次。 函数的声明extern关键词是可有可无的,因为函数本身不加修饰的话就是extern的。但是引用的时候一样是需要声明的。 而全局变量在外部使用声明时,extern关键词是必须的,如果变量无extern修饰且没有显式的初始化,同样成为变量的定义,因此此时必须加extern,而编译器在此标记存储空间在执行时加载如内存并初始化为0。而局部变量的声明不能有extern的修饰,且局部变量在运行时才在堆栈部分分配内存。 引用性声明、定义性声明 强符号、弱符号 出现在linux的gcc链接分析中,可以加深链接的理解。 全局变量或函数本质上讲没有区别,函数名是指向函数二进制块开头处的指针。而全局变量是在函数外部声明的变量。函数名也在函数外,因此函数也是全局的。 在使用中,要形成一种风格。 头文件 首先说下头文件,其实头文件对计算机而言没什么作用,她只是在预编译时在#include的地方展开一下,没别的意义了,其实头文件主要是给别人看的。 我做过一个实验,将头文件的后缀改成xxx.txt,然后在引用该头文件的地方用 #include"xxx.txt" 编译,链接都很顺利的过去了,由此可知,头文件仅仅为阅读代码作用,没其他的作用了!

不管是C还是C++,你把你的函数,变量或者结构体,类啥的放在你的.c或者.cpp文件里。然后编译成lib,dll,obj,.o等等,然后别人用的时候最基本的gcc hisfile.cpp yourfile.o|obj|dll|lib 等等。 但对于我们程序员而言,他们怎么知道你的lib,dll...里面到底有什么东西?要看你的头文件。你的头文件就是对用户的说明。函数,参数,各种各样的接口的说明。 那既然是说明,那么头文件里面放的自然就是关于函数,变量,类的“声明”了。记着,是“声明”,不是“定义”。 那么,我假设大家知道声明和定义的区别。所以,最好不要傻嘻嘻的在头文件里定义什么东西。比如全局变量: #ifndef _XX_头文件.H #define _XX_头文件.H int A; #endif 那么,很糟糕的是,这里的int A是个全局变量的定义,所以如果这个头文件被多次引用的话,你的A会被重复定义 显然语法上错了。只不过有了这个#ifndef的条件编译,所以能保证你的头文件只被引用一次,不过也许还是会岔子,但若多个c文件包含这个头文件时还是会出错的,因为宏名有效范围仅限于本c源文件,所以在这多个c文件编译时是不会出错的,但在链接时就会报错,说你多处定义了同一个变量, Linking... incl2.obj : error LNK2005: "int glb" (?glb@@3HA) already defined in incl1.obj Debug/incl.exe : fatal error LNK1169: one or more multiply defined symbols found 注意!!! extern

软件使用手册总结

1测控系统简介 本测控系统专为拉力机、压力机、电子万能材料试验机而研制。适用于测定各种材料在拉伸、压缩、弯曲、剪切、撕裂、剥离、穿刺等状态下的力学性能及有关物理参数。可做拉伸、压缩、三点抗弯、四点抗弯、剪切、撕裂、剥离、成品鞋穿刺、纸箱持压、泡棉循环压缩、弹簧拉压及各种动静态循环测试。 1.1主要功能特性 1. 硬件 主控制器采用21世纪最先进的32位ARM处理器, 处理速度达到奔腾级通用计算机的水平,相比传统的8位单片机测控系统整体性能大大提高,运算速度更快,控制精度更高. 数据采集核心器件采用美国最新型超高精度24位AD,采样速率可达2000次/秒,可捕捉到力量的瞬间变化过程,全程不分档分辨力最高达500000分度。并采用独创的6点校准技术进一步提高精度,力量测量精度优于国家0.5级(最高级)标准。 位移编码器计数采用4倍频技术,使位移分辨力提高4倍,最高可达0.0005mm。 脉冲和电压两种输出控制方式,可控制具有脉冲或电压控制接口的任意伺服马达、变频马达或直流马达实现平滑无级调速,另还有上升、下降及停止等开关量信号输出可用于直接驱动外部继电器或电磁阀,可用于控制直流电机或气动、液压等动力装置。 先进的速度、位移、力量三闭环技术,可以实现精确的任意波形控制。 丰富的接口扩展能力:多达4路24位模拟量输入,3路16位模拟量输出,3路脉冲输出,3路AB相光电编码器输入,9路开关量输入,8路开关量输出,1路USB接口,1路RS232接口,1路RS485接口,4种LCD接口,1个并口微型打印机接口,1个串口微型打印机接口,1个8×4矩阵键盘接口。 所有输入输出接口均采用高速光电隔离技术,具备强大的抗干扰能力。 2. 软件 Windows标准风格,层次分明的操作方式加上详尽的帮助文档和提示使之成为目前试验机行业最简单易用的软件,您的调试和软件培训效率将显著提高。 采用多线程并行处理技术,测试过程中实时同时显示力量-位移、力量-时间、位移-时间、应力-应变等曲线,可随意切换到想看的曲线画面,并可查看用户设置等。 标准化的测试过程控制和报表输出模版,使可以定义任意多个测试标准供用户调用,范围涵盖GB、ASTM、DIN、JIS、BS…等几乎所有测试标准。灵活强大的测试方法自定义方式,具备定速速、定位移、定力量、定力量速率、定应力、定应力速率、定应变、定应变速率等各种控制模式,可实现复杂的多步嵌套循环控制.可设置自动返回、自动判断断裂、自动归零等功能。 强大的数据分析统计和曲线图形分析辅助工具,具备放大、缩小、平移、十字光标、取点等功能。多次历史测试数据可调入图形同时显示做对比分析。多达7个区间设置、40个手动取点、120个自动取点功能。具备最大值、最小值、平均值、去高低平均值、中位数、标准差、总体标准差、CPK值等多种统计功能。 完全开放的测试结果编辑方法,用户可得到任何想要的测试结果。最大力、断裂力、剥离力、拉伸强度、剪切强度、撕裂强度、最大变形、屈服力、伸长率、弹性模量、环刚度、非比例延伸率、区间最小力、区间平均力、定伸长取力、定力量取伸长等多达400多个计算结果均由计算机自动算出,供用户选择调用。 业界创新的Microsoft Word报表格式,简单易用,只要您会使用Word,就可编辑出您想要的精美报表。 权限管理系统使您可以锁定软件的任意功能模块,将软件操作分为多个权限级别,没被授权的操作人员无法触及没被授权的模块,软件操作更加安全可靠。 全数字化的校准系统,校准过程简单高效,校准数据上下位机双重保护。 功能强大的单位系统,可以适应世界上任何单位制,如力值单位有gf、kgf、N、kN、tf、lbf、ozf、tf(SI)、tf (long)、tf(short)等供选择,更可扩展任意多种单位。 更多重的保护机制:力量、行程、位移超量程保护设定,上下限位行程开关硬件保护设定。 测试数据管理简单直观高效:单次测试数据以Windows标准的文档形式存储,自由设置储存路径和文件名。避免了传统测控软件以数据库格式储存测试数据时数据库文件会越来越大而导致软件运行越来越慢的缺点。只要您的硬盘足够大,测试数据可以无限量保存。 所有操作均具有快捷键,并可连接外部手动控制盒,可外接快上、快下、中上、中下、慢上、慢下、置零、回位、测试、暂停、结束等全部常用按健. 多国语言一键切换:简体中文、繁体中文、英文,十国语言版更有日文、韩文、俄文、德语、法语、西班牙文、葡萄牙文等即将推出。 绿色软件,无需安装,直接拷贝到计算机即可使用(需先安装串口驱动),维护升级更加简单。

const,static,extern用法总结

--------------------------CONST--------------------------------------- const应用: 一、对于基本声明 const int r=100;//标准const变量声明加初始化,编译器经过类型检查后直接用100在编译时替换。 二、对于指针 1. int x=10; const int *r=&x; //指针指向的内容是常量,r指向的内容不能够通过r改变,但如果是非const,内容可以通过自己改变,而且r指针可以改变,可以指向其它的整形. //*r=*r+1;NO //x++;YES //r=&y;YES 2. int const *r=&x; 与1完全相同 3. int * const r=&x; //指针指向是常量,不能修改去指向其它内容,但指向的内容可以修改 //r=&y;NO //*r=*r+1;YES //x++;YES 4.const int * const r=&x; //综合1、3用法,r是一个指向常量的常量型指针,指针指向不能改变,指针内容不能改变,内容可以自身改变 //r=&y;NO //*r=*r+1;NO //x++;YES 三、对于类型检查 可以把非const对象赋予const指针,这样就不能改变.但是不能把const赋给非const,除非先强制转换 const int x=100; int *p=(int*)&x; *p++; 四、对于函数 1.void Fuction1(const int r); //此处为参数传递const值,意义是变量初值不能被函数改变 2.const int Fuction1 (int); //此处返回const值,意思指返回的原函数里的变量的初值不能被修改,但是函数按值返回的这个变量被制成副本,能不能被修改就没有了意义,它可以被赋给任何的const或非const类型变量,完全不需要加上这个const关键字。 3.Class CX; //内部有构造函数,声明如CX(int r =0) CX Fuction1 () { return CX(); } const CX Fuction2 () { return CX(); } Fuction1() = CX(1); //没有问题,可以作为左值调用 Fuction2() = CX(1); //编译错误,const返回值禁止作为左值调用。 4.函数中指针的const传递和返回: int F1 (const char *pstr); //作为传递的时候使用const修饰可以保证不会通过这个指针来修改传递参数的初值 const char *F2();//意义是函数返回的指针指向的对象是一个const对象,它必须赋给一个同样是指向const对象的指针 const char * const F3(); //比上面多了一个const,这个const的意义只是在他被用作左值时有效,它表明了这个指针除了指向const对象外,它本身也不能被修改,所以就不能当作左值来处理。 五、对于类 1.首先,对于const的成员变量,只能在构造函数里使用初始化成员列表来初始化,试图在构造函数体内进行初始化const成员变量会引起编译错误。初始化成员列表形如:X:: X ( int ir ): r(ir) {} //假设r是类X的const成员变量 注意:类的构造和析构函数都不能是const函数。 2.建立了一个const成员函数,但仍然想用这个函数改变对象内部的数据。(函数不能修改类的数据成员)

confident的详细用法总结大全

confident的详细用法总结大全 你知道confident的用法吗?快来一起学习吧,下面就和大家分享,来欣赏一下吧。 confident的用法总结大全 confident的意思 adj. 确信的,深信的;有信心的,沉着的;大胆的,过分自信的;厚颜无耻的 n. 知己;心腹朋友; confident的用法 用作形容词(adj.) 用作定语 ~+n. We need a confident leader to overcome these difficulties. 我们需要一个有信心的领导者来克服这些困难。 He noticed her confident smile.

他注意到她充满自信的微笑。 用作表语 S+be+~+prep.-phrase I feel confident about the future of rock-and-roll music in China. 我对摇滚乐在中国的前景充满信心。 I am confident in him. 我对他充满信心。 He is confident in his ability to achieve success. 他坚信自己有能力取得成功。 We are confident in saying that the new record will be broken soon. 我们充满信心地说新的纪录很快会被打破。 S+be+~+that-clause I feel confident that we will win. 我确信我们将胜利。 confident的用法例句

1. He was confident the allies would make good on their pledges. 他相信盟友们会履行他们的承诺。 2. She has now changed into a happy, self-confident woman. 如今她已经变成一个快乐、自信的女人。 3. If there has to be a replay we are confident of victory. 如果重新比赛,我们有信心取得胜利。 4. Management is confident about the way business is progressing. 管理层对业务发展的态势充满信心。 5. Hes very forward and confident and chats happily to other people. 他很自以为是,喜欢和别人攀谈。 6. Police say they are confident of catching the gunman. 警方说他们有信心抓住那个持枪歹徒。 on holiday 还是on holidays

公司战略流程内外部信息收集流程

内外部信息收集流程 1范围 适用于神马集团所有战略相关信息的收集和汇总活动过程,包括内部(财务资源、市场与销售、研发、生产运作、供应链、人力资源和组织资产等)和外部(行业趋势及市场竞争分析、买方行为、供应商及宏观政治/经济/法律环境等)方面的相关信息

2控制目标 -确保企业内、外部信息收集过程的规范化和程序化 -确保企业内、外部信息收集的时效性、完整性和准确性 -确保企业内所有的相关人员能及时参与收集信息并共享所需信息 3主要控制点 -战略分析员对内、外部信息进行实时收集,判断信息收集是否完整并取得了战略分析所需的关键信息 -战略分析员对原始信息进行分类筛选,判断原始信息是否准确、可量化和有价值 -战略管理部经理审阅经战略分析员每月筛选出对战略规划决策有用的信息及附件 -战略分析员每季对信息提供部门提供的原始信息进行评估,并将评估结果反馈给信息收集部门 4特定政策 -信息收集人员每月必须收集相应的内、外部信息;对竞争对手和重要客户的信息必须每日跟踪,每周总结;对于所有行业重大事件和信息要做到即时跟踪和收集,如政府部门的会议,行业重大会议,重大新闻发布会等-内部信息收集主要内容: -切片、工程塑料等各主要产品的成本信息 -各部门预算执行情况分析 -切片、工程塑料等各主要产品在不同区域的销售价格,销售量和价格浮动范围 -对切片、工程塑料等主要产品开展的市场调研报告 -神马集团产品的市场占有率,在同类产品中的优劣势信息 -神马集团开发的新产品的定价基础,依据和最终定价情况

-神马集团开发的新产品的上市计划 -各部门信息简报,各部门信息专题分析报告 -公司经营业绩(包括集团财务报表、管理报表、相关销售数据统计等) -各部门战略计划的实施情况 -外部信息收集主要内容: -国际国内相关政策、经济形势、技术发展趋势及法律环境 -国际国内市场需求动态 -竞争对手的新产品信息,研发信息、重大经营举措信息(如兼并和收购项目,重大项目的引进和谈判等) -重要客户的经营举措和财务状况等重要信息 -供应商经营举措等相关信息,及潜在供应商信息 -外部信息中相关市场信息可以来自市场部的市场调研报告,同时战略管理部还可以从以下基本来源收集信息: -产业研究、商会、商业杂志、报刊、专业杂志(如PCI等)、相关专业调研机构和行业协会(如中国工程塑料协会等)、相关网站(包括行业协会网站、客户网站、供应商网站等) -其他公司的招股说明书、公司指南和统计资料、新闻剪报、政府会议纪要、网站、政府各部门资料源 -对于通过上述方法仍无法获得所需信息时可以由战略管理部组织跨部门的项目小组开展针对性的问卷调查、客户访谈等 -针对不同的信息和对象可以采用不同的收集方法,亦可以同时进行,互相补充 -在进行资料查找的过程中进行原始资料整理,记下资料源的详细的引文有助于在研究末期节省编辑资料目录的时间,也可避免调查组成员的重复工作

干货site的使用方法总结

语法格式: site : 网址关键词 或者关键词site : 网址 注意事项: 1、site:后边跟的冒号必须是英文的“:”,中文的全角冒号“:”无用 2、url前不能带http:// 3、url后边不能带斜杠“/”,其实是哪里都不能带/ 4、url中不要用www,除非你有特别目的,用www会导致错过网站内的内容,因为很多网站的频道是没有www的,也就是二级域名。 其他说明: 1、关键词既可以在“site:”前,也可以在“site:”后,搜索结果是一样的,但是不管谁前谁后,关键词和“site:”之间必须空一格。 2、对于“site:”搜索,关键词一样可以是多个,多个关键词之间以空格隔开。 3、支持与其他复杂搜索语法混用,各语法和关键词之间空一格 4、除了网站,还可以搜索网站的频道,但仅限于不用“/”的。 5、一个网站可能有多种语言,所以选择“搜索所有网站”和“搜索中文(简体)网页”是有差别的 当然,如果指定的网站只有一种语言,怎么选择就都一样了 用途: 1、可用于限制网站类型,学术资料在edu、org中会更精练,政府相关的在gov中也许更容易找。 2、用了edu、org、net、gov之类的域名后缀,并不会搜索所有含这个后缀的网站。只会搜索以这个后缀结尾的网站,带cn、us、si等各国家和地区域名后缀的edu.jp、https://www.360docs.net/doc/7817456032.html,、org.it 等是不搜的,所以你要另外搜 3、搜索某种语言或某个关键词在指定国家的网站。 4、有的网站没有提供站内搜索,或者它的信息结构混乱,内容又多,不好找东西,那么可以用“site:”对这个网站进行检索。 google的“site:”功能比多数网站自己的站内检索还要好用,如果你查的不是动态数据库,而且对时效性要求不高的话。 5、搜索不欢迎你搜索和免费使用的网站、数据库的部分内容。 6、用“site:”搜索死链接网站、已关闭网站内的信息。

(完整版)matlab课程学习总结

目录 VC++ & Matlab 混合编程的快速实现 (2) 摘要 (2) 关键词 (2) 简介: (2) 实例分析 (3) 1、编写Matlab函数 (3) 2、Matlab6.5编译器设置 (3) 3、建立C++控制台工程 (5) 4、启用Matlab Add-in 工具条 (6) 5、VC++6.0环境及工程设置 (7) 6、Matlab到C++的代码转换 (10) 7、C++函数的使用 (11) 特别说明一: (12) 特别说明二: (13) 8、程序的发布 (13) 总结 (13)

VC++ & Matlab 混合编程的快速实现摘要: 许多工程软件需要用到复杂的数学算法。VC++能够形成各种用户界面,并可以直接与系统及底层硬件交换数据。因此研究VC++和Matlab的混合编程具有很大的实际意义。 该文讨论了如何使用Matlab 的Complier 将*.m函数编译为动态链接库DLL,提供VC++ 调用的方法,提供了一种VC++与Matlab 混合编程的快速实现。 关键词:Matlab VC++ MCC Complier 动态链接库DLL 简介: Matlab 作为当今世界上应用最为广泛的数学软件,具有非常强大的数值计算、数据分析处理、系统分析、图形显示甚至符号运算的功能。已经在如生物工程,图像处理,语音处理,雷达探空,声纳探水,地震探地,以及控制论,系统论等各个领域得到广泛的应用。它是一个完整的数学平台,在这个平台上,用户只需寥寥数语就可以完成十分复杂的功能,大大提高了工程分析计算、图像处理的效率。但是Matlab 强大的功能只能在它所提供的平台上才能使用,即用户必须在安装Matlab 系统的机器上才能执行*.m文件。这样当用户需要将在Matlab下已开发完毕的复杂算法应用到高级语言开发环境下时就带了问题,是将现成的东西集成高级语言开发的程序中呢?还是用高级语

SiteMaster的使用方法

一、测试仪表预调 选择测试天线的频率范围 (1)按ON/OFF按钮打开SiteMaster。 (2)按MODE键。测量模式选择频率-驻波比域,然后按F1 软键。输入天线系统的下限(“Lower”)频率MHz值,按ENTER 键。 (3)再按F2 软键。输入天线系统的上限(“Higher”)频率MHz值,按ENTER键。在显示区域显示新的频率数值范围FREQ scale。检查是否与输入的频率范围一致。 二、测试仪表较准 (1)将测试口扩充电缆(the test port extension cable)连到测试端口。若在扩充电缆端口校准,则测出的天馈线长度以此点为参考点。若在标准测试端口校准,则测出的天馈线长度以点为参考点。 (2)接校准器,按START CAL 键,开始校准。 三、输入天馈线的参数 (1)按MODE 键。选择故障定位-驻波比菜单。 (2)按DTF帮助软键。 (3)按电缆损耗(LOSS)菜单。 输入要测试的天馈线类型的每米的损耗dB值(7/8硬馈线,型号为LDF5-50A,cable loss=0.043dbm/m;1/2的软跳线,型号为LDF4-50A,cable loss=0.077dbm/m) ,然后按ENTER.

注意: 只有采用供货商提供的正确值,才能保证测试结果的可靠性。 (4)再按传播速率PROP V 菜单。输入relative velocity (7/8硬馈线,型号为LDF5-50A,Vf=0.89; 1/2的软跳线,型号为LDF4-50A,Vf=0.88),然后按ENTER键。 注意:也可调出电缆表,直接选中所用的电缆型号。若有几种电缆混用,则选择使用最长的电缆型号。可省略(3)(4)两步。 (5)按ENTER键返回主菜单。

个人学法用法情况总结

个人学法用法情况总结 我镇20××年普法依法治理工作在镇党委统一领导下,认真践行"三个代表"重要思想,围绕社会稳定、经济发展开展各项工作,为构建平安和谐先市营造了良好的法制环境。现将今年以来我的学法用法情况报告如下: 一、加强领导,健全制度,确保依法治镇工作顺利进行。一是调整充实了真法建办成员,完善了矛盾调处中心建设,制定和健全了矛盾纠纷排岔调处制、党委中心组学习学法制度、干部职工学习学法制度、普法依法治理工作宣传教育和普法依法治理工作责任制度等。二是年初根据工作实际,及时制?1?7?1?7了《法制宣传教育和普法依法治理工作意见》,10 月份又研究制定了《全民法制宣传教育的第五个五年规划》,使学法用法工作有安排,有措施,做到了有条不紊地进行。三是落实责任,明确目标。年初与各村(社区)各单位签订目标责任书落实责任,政府机关各办所及职能部门制定出依法行政、公正执法、争创平安办所计划,并通过验收合格。二、认真总结经验教训,切实开展形势多样的宣传活动。一是推广"四五"普法工作中全民学法的经验,召开现场推广会,把后坝、庙高村的经验予以推广。http:///3221788 (使用请双击此处删除页眉文字) 专业好文档为您倾心整理,谢谢使用二是及时表彰在普法依法治理工作涌现的先进单位和个人,有4 个村(社区) 单位和6 个个人获得表彰。三是充分利用三月法制宣

传月、"6.26"禁毒日、"12.4"法治宣传日、流行性传染病防治等重要日期开展多种形式的法制宣传教育。据不完全统计,宣传活动中散发宣传资料2 万多份,上街设点咨询4 次,接受群众咨询80 多次,有力地宣传了法律法规和党在农村的各项政策。四是认真搞好青少年学生的法制教育,落实了师资、教材、课时、计划,并组织法制副校长、关工委负责人等到校上法制课4 次,使3000 多学生普遍接受到了法制林剑教育。五是组织开展了"一日助贫"和向受灾户送暖和活动,机关职工、村社区干部、单位职工等140 多人次参与,捐款捐物折合人民币8000 多元。三、不断推进依法治理工作。政府继续聘请常年法律顾问,做好规范性文件清理。坚持按季度公开政务、财?1?7?1?7、村务,将依法治村(社区)、治企、校列入工作议事日程。认真开展打击两抢一盗、禁毒、非法生产烟花爆竹、乙脑防治、森林火灾防治等专项治理活动。加强部门之间的配合协作,清理整顿教育、卫生、城建、网吧等违法经营行为。按时排查调处各类矛盾纠纷,维护社会稳定。全年共排查调处纠纷公文写作首选网站-- 公文网74 件,成功71 件,调处率100,成功率96。四、努力做好信息收集上报工作。http:///3221788 (使用请双击此处删除页眉文字) 专业好文档为您倾心整理,谢谢使用鼓励干部职工群众积极收集上报信息,综治办、司法所等写出"四

外部审核总结报告

年换证审核总结报告 1.审核目的 验证质量、环境、职业健康安全的三合一管理体系是否符合策划的安排、标准的要求、管理体系文件要求、以及法律法规,是否得到有效的实施和保持。 2.审核范围 管理体系手册所要求的相关活动及各职能部门(包括人力资源科、仓管科、总经办、生产管理部办、生产管理科、生产技术科、制作一科、制作二科、资材科、信息科、价格管理科、财务科以及品质保证科)。 3.审核准则 ⑴ISO9001、ISO14001、OHSAS18001标准; ⑵管理体系手册、程序文件、作业指导书、记录以及其他相关文件; ⑶本公司适用的法律法规及其他规章要求; 4.审核组成员 审核组长: 审核A 组: 审核B 组: 审核C组: 陪同人员: 5.审核时间 2010年 6.审核报告发布范围 审核报告发放范围为本公司总经理、管理者代表、各部门科长以及体系责任人。 一、审核过程中发现的问题点

二、不符合项分布图: 三、审核问题总结 1、 各部门应制定工作目标作为公司的质量目标,实施跟踪,并提交品质部门进行定期核查; 2、 各部门危险源与环境因素识别不全面,并没有有效的控制措施; 3、 广日物流叉车手在我司没有直属管理部门,也没有进行人力资源备案,不利于人员与生产的管 理; 4、 特殊生产过程控制焊接、喷涂,无论是新、老设备都应定期进行特殊过程的确认; 5、 公司应急预案制订不全,如产品供货途中车辆事故、产品丢失的事中管理应急文件、电脑系统 软件瘫痪应急文件等;应急预案要定期进行模拟演练; 6、 公司进行内审应组织各部门领导参加审核工作,杜绝“三不管”现象;

7、记录必须有批号及检测人、自检有操作人名字,方便追溯,一个单号对应一套流程; 8、公司级目标指标应修改增加“交通事故为零”,“职业病发病率为零”要分清管理目标和考核目 标; 9、公司级职业健康安全目标指标,责任部门应为制作一科、制作二科,安全员只是监管,制作科 为主责部门,并由制作科制订有效控制措施; 10、自检记录应和检查记录分开进行,品证确认会误以为确认是否填写数据,而不能体现抽检了数 据有效性,同时记录也应体现品证抽检的数据; 四、整改要求 此次提出的所有问题,请各部门认真对待外审中提出的一般不符合项和观察项及《换证审核不符合项报告》。不符合项整改报告(需得到改善确认)于4月23日前提交到认证系,认证系将对不符合项的整改情况进行核查跟进,并将整改文件提交华夏认证中心,请各部门领导给予支持协作。 编制:校对:审批:日期: 品质保证

face的用法精析小结

face的用法精析小结 你知道face的用法吗?快来一起学习吧,下面就和大家分享,来欣赏一下吧。 面对面:face的用法精析 The significant problems we face cannot be solved at the same level of thinking we were at when we created them. ——Albert Einstein 面对问题时,我们不能用制造它们时同一水平的思维来解决它们。 ——阿尔伯特·爱因斯坦 一、下面我们来看看face有几种含义 n. 1.脸,面孔;面容,面部表情the front part of the head between the forehead and the chin She has a lovely oval face.

她长着一张可爱的椭圆脸。 2.外表,外貌facial expression A fair face is half a portion. 美貌等于一半嫁妆。 3.表面,正面outward appearance The sea have erode the cliff face over the years. 海水经年累月冲刷着峭壁的表面。 4.面子,威严assurance, confidence To cancel the airport would mean a loss of face for the present governor. 撤销机场对现任州长来说将是件丢脸的事情。 5.有…面容的;有…表情的a facial expression of distaste or displeasure He came to me with a very long face. 他拉长了脸来找我。 6.钟面;表盘a front, upper, or outer surface

自己总结的Kettle使用方法和成果

KETTLE使用自己总结的Kettle使用方法和成果说明 简介 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。 Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。 Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。 Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 Kettle可以在https://www.360docs.net/doc/7817456032.html,/网站下载到。 注:ETL,是英文Extract-Transform-Load 的缩写,用来描述将数据从来源端经过萃取(extract)、转置(transform)、加载(load)至目的端的过程。ETL 一词较常用在数据仓库,但其对象并不限于数据仓库。 下载和安装 首先,需要下载开源免费的pdi-ce软件压缩包,当前最新版本为5.20.0。 下载网址:https://www.360docs.net/doc/7817456032.html,/projects/pentaho/files/Data%20Integration/然后,解压下载的软件压缩包:pdi-ce-5.2.0.0-209.zip,解压后会在当前目录下上传一个目录,名为data-integration。 由于Kettle是使用Java开发的,所以系统环境需要安装并且配置好JDK。 ?Kettle可以在https://www.360docs.net/doc/7817456032.html,/网站下载 ? 下载kettle压缩包,因kettle为绿色软件,解压缩到任意本地路径即可。运行Kettle 进入到Kettle目录,如果Kettle部署在windows环境下,双击运行spoon.bat 或Kettle.exe文件。Linux用户需要运行spoon.sh文件,进入到Shell提示行窗口,进入到解压目录中执行下面的命令: # chmod +x spoon.sh # nohup ./spoon.sh &后台运行脚本 这样就可以打开配置Kettle脚本的UI界面。

相关文档
最新文档