精华内容
下载资源
问答
  • 最小错误率贝叶斯决策

    千次阅读 2016-12-12 19:33:50
    在一般的模式识别问题中,人们的目标往往是尽量减少分类的错误,追求最小的错误率。根据之前的文章,即求解一种决策规则,使得: minP(e)=∫P(e|x)p(x)dx 这就是最小错误率贝叶斯决策。 在上式中,P(e|...

    原文链接:http://blog.csdn.net/angel_yuaner/article/details/47042817 

    在一般的模式识别问题中,人们的目标往往是尽量减少分类的错误,追求最小的错误率。根据之前的文章,即求解一种决策规则,使得:

    minP(e)=P(e|x)p(x)dx

    这就是最小错误率贝叶斯决策

    在上式中,P(e|x)0,p(x)0对于所有的x均成立,故minP(e)等同于对所有的x最小化P(e|x),即:使后验概率P(wi|x)最大化。根据贝叶斯公式: 

    P(wi|x)=p(x|wi)P(wi)p(x)=p(x|wi)P(wi)kj=1p(x|wj)P(wj),i=1,2,...,k

    在上式中,对于所有类别,分母都是相同的,所以决策的时候实际上只需要比较分子,即: 

    p(x|wi)P(wi)=maxkj=1P(wj|x)P(wi),xwi

    先验概率P(wi)和类条件概率密度p(x|wi)是已知的。概率密度p(x|wi)反应了在wi类中观察到特征值x的相对可能性(likelihood)。

    举个简单的例子还说明最小错误贝叶斯决策。 
    假设某地区检测到细胞为正常细胞的概率w1和癌细胞的概率w2分别为: 

    w1=0.9,w2=0.1

    现在对于一个待决策的细胞,其特征的观察之为x,且从类条件概率密度曲线上分别查得: 
    p(x|w1)=0.2,p(x|w2)=0.4

    现在需要对该细胞进行决策,判断是正常细胞还是癌细胞。根据贝叶斯公式,分别计算出w1w2的后验概率: 
    P(w1|x)=p(x|w1)P(w1)2j=1p(x|wj)P(wj)=0.2×0.90.2×0.9+0.4×0.1=0.818

    P(w2|x)=1P(w1|x)=0.182

    因为:P(w1|x)=0.818>0.182=P(w2|x),所以更合理的决策是将x归类为w1,即正常细胞。

    说白了,贝叶斯决策就是将待分类物x归类于最大后验概率的那一类,即: 

    P(wi|x)=maxj=1,...,cP(wj|x),xwi

    等价于:p(x|wi)P(wi)=maxkj=1P(wj|x)P(wi),xwi 
    贝叶斯公式是用来计算后验概率的工具。

    对于多类别决策,错误率的计算量较大,可以转化为计算平均正确率P(c)来计算错误率: 

    P(e)=1P(c)=1j=1kP(xRi|wj)P(wj)1j=1kP(wj)Rjp(x|wj)dx
    展开全文
  • // 图片放大倍数,增强识别(很多图片本身无法识别,放大5倍时就可以轻易识,但是考滤到客户电脑配置低,针式打印机打印不连贯的问题,这里就放大5倍) textImage = ImageHelper.getScaledInstance(textImage, text...

    这是一款由HP实验室开发由Google维护的开源OCR(Optical Character Recognition , 光学字符识别)引擎,与Microsoft Office Document Imaging(MODI)相比,我们可以不断的训练的库,使图像转换文本的能力不断增强;如果团队深度需要,还可以以它为模板,开发出符合自身需求的OCR引擎。

    git地址为:https://github.com/tesseract-ocr/tesseract

    首先创建一个java项目 并集成 tesseract引擎库

    集成方式:

    1.jar包导入 需要导入以下jar包,集成方式比较繁琐

    2.maven库依赖导入 在maven项目中的pom文件中加入以下依赖

    <dependency>
        <groupId>net.sourceforge.tess4j</groupId>
        <artifactId>tess4j</artifactId>
        <version>4.1.1</version>
        <exclusions>
            <exclusion>
                <groupId>com.sun.jna</groupId>
                <artifactId>jna</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    java识别代码

       private static String ocr(String filePath) {
            String result = null;
            try {
                double start = System.currentTimeMillis();
                BufferedImage textImage = ImageIO.read(new File(filePath));
                // 这里对图片黑白处理,增强识别率.这里先通过截图,截取图片中需要识别的部分
                textImage = ImageHelper.convertImageToGrayscale(textImage);
                // 图片锐化
                textImage = ImageHelper.convertImageToBinary(textImage);
                // 图片放大倍数,增强识别率(很多图片本身无法识别,放大5倍时就可以轻易识,但是考滤到客户电脑配置低,针式打印机打印不连贯的问题,这里就放大5倍)
                textImage = ImageHelper.getScaledInstance(textImage, textImage.getWidth() * 1, textImage.getHeight() * 1);
    
                textImage = ImageHelper.convertImageToBinary(textImage);
                ImageIO.write(textImage, "png", new File("E:\\accccccccccccc\\img_temp.jpg"));
    
                Tesseract instance = new Tesseract();
                instance.setDatapath(System.getProperty("user.dir") + "\\tessdata");//设置训练库的位置
                instance.setLanguage("chi_simmm");//中文识别
                instance.setLanguage("chi_simm");//中文识别
                instance.setLanguage("chi_sim");//中文识别
    //            instance.setLanguage("chi_tra");//中文识别
    //            instance.setLanguage("eng");//英文识别
                result = instance.doOCR(textImage);
                double end = System.currentTimeMillis();
                System.out.println("耗时" + (end - start) / 1000 + " s");
            } catch (Exception e) {
                e.printStackTrace();
            }
            return result;
        }

    识别的图片为:

    这里可以通过动态的对图片做黑白、锐化、放大等操作来提高中文识别率

    经过处理后的图片为:

    识别结果为:

    可以看出经过训练后的库识别经过处理的图片的精度还是比较不错的,但是识别比较复杂场景的文字识别率还是有待提升;

    库文件需要自己识别训练生成训练库来提高识别率,不过目前网上的训练方法比较繁琐,后续文章会说明训练方法;

    *中文训练库文件以及demo文件下载地址https://download.csdn.net/download/intenttao/10812148

    *tesseract本地化引入jar文件下载地址https://download.csdn.net/download/intenttao/10812225

    展开全文
  • 最小错误率贝叶斯分类器

    万次阅读 2017-03-29 19:32:14
    最后,调用self_mvnrnd()函数可以用最小错误率贝叶斯分类器对其进行分类,统计正确分类的百分比,并在二维图上用不同的颜色画出正确分类和错分的样本。 一、 技术论述 二、 实验步骤及实验结果 ...

    摘要:本次实验的主要内容是编程实现一个可以对两类模式样本进行分类的贝叶斯分类器,其中假设两个模式类的条件概率分布均为高斯分布。本次实验自定义一个函数self_mvnrnd(varargin) ,输入8个参数,其中,参数1,2,3,4分别为一类模式样本的均值矢量,协方差矩阵,样本数,先验概率,参数5,6,7,8分别为另一类模式样本的均值矢量,协方差矩阵,样本数,先验概率。最后,调用self_mvnrnd()函数可以用最小错误率贝叶斯分类器对其进行分类,统计正确分类的百分比,并在二维图上用不同的颜色画出正确分类和错分的样本。

    一、 技术论述

    这里写图片描述
    这里写图片描述

    二、 实验步骤及实验结果

    1、基本实验

    (1) 生成两类模式样本,模式类1的均值矢量为m1=(1,3)T,协方差矩阵为S1=(1.5,0;0,1),模式类2的均值矢量为m2=(3,1)T,协方差矩阵为S2=(1,0.5;0.5,2),先验概率P(w1)=P(w2)=0.5。在MATLAB中为两个模式类各生成100个随机样本点,并在一幅图中分别用蓝色和绿色画出这两类样本的二维散点图,其中红色的上三角形表示第一类错误分为第二类,红色的下三角形表示第二类错误分为第一类,实验结果如图1所示:
    具体调用函数:self_mvnrnd([1 3],[1.5,0;0,1],100,0.5,[3,1],[1,0.5;0.5,2],100,0.5)

    这里写图片描述

    从图1分类后的二维散点图可知正确分类的百分比:第一类为91%,第二类为91%。

    (2) 改变先验概率P(w1)=0.4,P(w2)=0.6,对上述200个样本重新进行分类,实验结果如下图2所示:
    改变先验概率,具体调用函数:self_mvnrnd([1 3],[1.5,0;0,1],100,0.4,[3,1],[1,0.5;0.5,2],100,0.6)

    这里写图片描述

    从图2可以看出,正确分类的百分比:第一类为85%,第二类为89%。

    2、 扩展实验

    (1) 在上述基本实验中,协方差矩阵不变,但类均值向量分别变为m1=(1,3)T,m2=(2,2)T,重新进行基本实验中(1)、(2)、(3)的实验,得到实验结果如下图3所示:
    具体调用函数:self_mvnrnd([1 3],[1.5,0;0,1],100,0.5,[2,2],[1,0.5;0.5,2],100,0.5)

    这里写图片描述

    从图3可以看出正确分类的百分比:第一类为77%,第二类为81%。

    改变先验概率,具体调用函数:self_mvnrnd([1 3],[1.5,0;0,1],100,0.4,[2,2],[1,0.5;0.5,2],100,0.6)

    这里写图片描述

    从图4可以看出正确分类的百分比:第一类为70%,第二类为90%。

    (2) 在1实验中,协方差矩阵不变,但类均值向量分别变为m1=(1,3)T,m2=(4,0)T,重新进行基本实验中(1)、(2)、(3)的实验,得到实验结果如下图5所示:
    具体调用函数:self_mvnrnd([1 3],[1.5,0;0,1],100,0.5,[4,0],[1,0.5;0.5,2],100,0.5)

    这里写图片描述

    从图5可以看出正确分类的百分比:第一类为97%,第二类为97%。

    改变先验概率,具体调用函数:self_mvnrnd([1 3],[1.5,0;0,1],100,0.4,[4,0],[1,0.5;0.5,2],100,0.6)

    这里写图片描述

    从图6可以看出正确分类的百分比:第一类为97%,第二类为99%。

    (3)在1实验中,两个类均值向量不变,但协方差矩阵分别变为S1=(1.5,1;1,1),S2=(1,0.5;0.5,2)重新进行基本实验中(1)、(2)、(3)的实验,实验结果如下图7所示:
    具体调用函数:self_mvnrnd([1 3],[1.5,1;1,1],100,0.5,[3,1],[1,0.5;0.5,2],100,0.5)

    这里写图片描述

    从图7可以看出正确分类的百分比:第一类为97%,第二类为94%。

    改变先验概率,具体调用函数:self_mvnrnd([1 3],[1.5,1;1,1],100,0.4,[3,1],[1,0.5;0.5,2],100,0.6)

    这里写图片描述

    从图8可以看出正确分类的百分比:第一类为97%,第二类为97%。

    三、 实验结果讨论

    1.先验概率问题:由公式(1-2)与公式(1-3)可知,改变了先验概率P(w)使得判决函数gj(x)发生变化,分类的正确率也相应的发生了变化。对比图1与图2,图3与图4,图5与图6,图7与图8,可以发现,P(w1)由原来的0.5减小到0.4,第一类样本的分类正确率也减小了;P(w2)由原来的0.5增大到0.6,第二类样本的分类正确率也增大了,即最优判决偏向于先验概率较大的类别。

    2.类均值向量问题:已知均值表示许多样本的代数平均值,服从多元正态分布的数据样本趋向于聚集在均值向量的周围。在图1、图3及图5中第一类样本的均值向量均为m1=(1,3)T,而第二类样本的均值向量分别为m2=(3,1)T、(2,2)T、(4,0)T。m1与m2的平方距离 分别为8、2、18,因此生成的两类样本之间密集程度不同。从图1与图3的对比中可以发现,越密集分类的正确率越低;从图3与图8的对比中可以发现,两类样本分得越开,分类的正确率越高。

    3.协方差矩阵问题:图1与图7中两个类样本均值向量不变,但协方差矩阵由S1=(1.5,0;0,1)变为S1=(1.5,1;1,1),S2不变,S1由对角矩阵变成非对角矩阵。可以看到第一类样本的分布形状发生了变化而第二类样本的分布形状未变,可知样本的分布形状决定于其协方差矩阵。

    附录:

    %基础实验
    self_mvnrnd([1 3],[1.5,0;0,1],100,0.5,[3,1],[1,0.5;0.5,2],100,0.5) 
    self_mvnrnd([1 3],[1.5,0;0,1],100,0.4,[3,1],[1,0.5;0.5,2],100,0.6) 
    %拓展实验(e)
    self_mvnrnd([1 3],[1.5,0;0,1],100,0.5,[2,2],[1,0.5;0.5,2],100,0.5) 
    self_mvnrnd([1 3],[1.5,0;0,1],100,0.4,[2,2],[1,0.5;0.5,2],100,0.6) 
    %拓展实验(f)
    self_mvnrnd([1 3],[1.5,0;0,1],100,0.5,[4,0],[1,0.5;0.5,2],100,0.5)
    self_mvnrnd([1 3],[1.5,0;0,1],100,0.4,[4,0],[1,0.5;0.5,2],100,0.6) 
    %拓展实验(g)
    self_mvnrnd([1 3],[1.5,1;1,1],100,0.5,[3,1],[1,0.5;0.5,2],100,0.5) 
    self_mvnrnd([1 3],[1.5,1;1,1],100,0.4,[3,1],[1,0.5;0.5,2],100,0.6) 
    
    %功能:函数输入参数为8,画出二类样本的二维散点图和贝叶斯分类后的二维散点图
    %参数1,2,3,4分别为一类模式样本的均值矢量,协方差矩阵,样本数,先验概率;
    %参数5,6,7,8分别为另一类模式样本的均值矢量,协方差矩阵,样本数,先验概率;
    %例子:self_mvnrnd([1 3],[1.5,0;0,1],100,0.5,[3,1],[1,0.5;0.5,2],100,0.5)
    function self_mvnrnd(varargin)%可自定义参数的函数
    if(nargin==8)%判定输入参数是否为8
    w1=mvnrnd(varargin{1},varargin{2},varargin{3});%第一类
    w2=mvnrnd(varargin{5},varargin{6},varargin{7});%第二类
    figure(1);
    plot(w1(:,1),w1(:,2),'bo');%蓝色o为第一类
    hold on
    plot(w2(:,1),w2(:,2),'g*');%绿色*为第二类
    title('200个随机样本,蓝色o为第一类,绿色*为第二类');
    w=[w1;w2];
    n1=0;%第一类正确个数
    n2=0;%第二类正确个数
    figure(2);
    %贝叶斯分类器
    for i=1:(varargin{3}+varargin{7})
        x=w(i,1);
        y=w(i,2);
        g1=mvnpdf([x,y],varargin{1},varargin{2})*varargin{4};
        g2=mvnpdf([x,y],varargin{5},varargin{6})*varargin{8};
        if g1>g2
            if 1<=i&&i<=varargin{3}
                n1=n1+1;%第一类正确个数
                plot(x,y,'bo');%蓝色o表示正确分为第一类的样本
                hold on;
            else
                plot(x,y,'r^');%红色的上三角形表示第一类错误分为第二类
                hold on;
            end
        else
            if varargin{3}<=i&&i<=(varargin{3}+varargin{7})
                n2=n2+1;%第二类正确个数
                plot(x,y,'g*');%绿色*表示正确分为第二类的样本
                hold on;
            else
                plot(x,y,'rv');%红色的下三角形表示第二类错误分为第一类
                hold on;
            end
        end
    end
    r1_rate=n1/varargin{3};%第一类正确率
    r2_rate=n2/varargin{7};%第二类正确率
    gtext(['第一类正确率:',num2str(r1_rate*100),'%']);
    gtext(['第二类正确率:',num2str(r2_rate*100),'%']);
    title('最小错误率贝叶斯分类器');
    else disp('只能输入参数个数为8');
    end
    
    展开全文
  • 1、贝叶斯公式 首先要知道贝叶斯公式: 其中,是先验概率,是条件概率,我们要求的是后验概率。...在模式分类时,我们的目标是尽量减少分类的错误,即追求最小的错误率,用式子表达就是: 这个...

    1、贝叶斯公式

    首先要知道贝叶斯公式:

    其中,是先验概率,是条件概率,我们要求的是后验概率。

    由于分母项在不管求样本的哪个后验概率时都是一样的,实际上我们需要关注的只是分子,因此有

    2、基于最小错误率的贝叶斯分类理论

    接下来阐释基于最小错误率的思想,以及贝叶斯公式在其中如何发挥作用。

    假设现在有两类模式,w1和w2

    就是当x属于w1时却分到了w2的概率,当x属于w2时却分到了w1的概率,这两种概率构成了错误概率

    画个样本空间X的后验概率图:

    在模式分类时,我们的目标是尽量减少分类的错误,即追求最小的错误率,用式子表达就是:

    这个式子的意思就是对所有的样本x,我们要最小化他们的P(e|x)。

    这样看其实还不知道怎么算,但如果使用贝叶斯公式来表达的话就很清楚了。

    可以看出最小化错误率就是最大化后验概率,因此在决策的时候我们只需要比较后验概率P(w|x)的大小,

    如果则判别为w1,反之则判别为w2。这样我们就能最小化错误率了。

    而后验概率可以用贝叶斯公式计算,因此使用贝叶斯公式对样本进行分类的分类器为最小错误率贝叶斯分类器,它的判别函数为:

    上面即为最小错误率贝叶斯分类器。

    要计算判别函数值(后验概率),就要先知道先验概率和条件概率。

    1)先验概率可以通过计算各类样本在总样本数占的比例来得到,如w1类样本数为5,总样本数为11,那么P(w1)=5/11

    2)条件概率使用高斯分布计算:

    若样本x为d维向量,第i类wi样本的条件概率密度函数服从均值为mi,协方差为Si的多元高斯分布,条件概率函数为:

    3)取对数,最终的判别函数为:

     

    (推导的时候有一项为常数项可以省略)

    推到这里已经知道我们要做什么了,就是算样本的平均值,协方差,以及先验概率

    4)算出样本x的每类Gi(x)值后,取最大的Gi(x)值对应的i,即样本x属于wi类

    3、matlab实现

    这里使用了教材《模式识别与人工智能(基于matlab)》的一段代码

    clear;
    clc;
    %% 加载样本dataset,包含训练数据和测试数据,数据shape为[样本数,特征维数] %%
    load('dataset.mat');
    train_data = [A_train;B_train;C_train;D_train];
    test_data = [A_test;B_test;C_test;D_test];
    N1_train = size(A_train, 1); N2_train = size(B_train, 1); N3_train = size(C_train, 1); N4_train = size(D_train, 1); % 各个类别的训练样本数
    N_train = N1_train + N2_train + N3_train + N4_train; % 训练样本总数
    N1_test = size(A_test, 1); N2_test = size(B_test, 1); N3_test = size(C_test, 1); N4_test = size(D_test, 1); % 各个类别的测试样本的数量
    N_test = N1_test + N2_test + N3_test + N4_test; % 测试样本总数
    w = 4; % 类别数
    n = 3; % 特征数
    
    %% 初始样本数据计算 %%
    % 求样本均值
    X1 = mean(A_train)'; X2 = mean(B_train)'; X3 = mean(C_train)'; X4 = mean(D_train)';
    % 求样本协方差矩阵
    S1 = cov(A_train); S2 = cov(B_train); S3 = cov(C_train); S4 = cov(D_train); 
    % 求协方差矩阵的逆矩阵
    S1_ = inv(S1); S2_ = inv(S2); S3_ = inv(S3); S4_ = inv(S4); 
    % 求协方差矩阵的行列式
    S11 = det(S1); S22 = det(S2); S33 = det(S3); S44 = det(S4); 
    % 先验概率
    Pw1 = N1_train/N_train; Pw2 = N2_train/N_train; Pw3 = N3_train/N_train; Pw4 = N4_train/N_train; 
    
    %% 计算测试样本的后验概率 %%
    for k = 1 : N_test
        P1 = -1/2*(test_data(k,:)'-X1)'*S1_*(test_data(k,:)'-X1)-1/2*log(S11)+log(Pw1);
        P2 = -1/2*(test_data(k,:)'-X2)'*S2_*(test_data(k,:)'-X2)-1/2*log(S22)+log(Pw2);
        P3 = -1/2*(test_data(k,:)'-X3)'*S3_*(test_data(k,:)'-X3)-1/2*log(S33)+log(Pw3);
        P4 = -1/2*(test_data(k,:)'-X4)'*S4_*(test_data(k,:)'-X4)-1/2*log(S44)+log(Pw4);
        P = [P1 P2 P3 P4];
        Pmax = max(P); % 取后验概率最大的那一类
        if Pmax == P1
            w = 1;
            plot3(test_data(k,1), test_data(k,2), test_data(k,3),'ro');
            grid on;hold on;
        elseif Pmax == P2
            w = 2;
            plot3(test_data(k,1), test_data(k,2), test_data(k,3),'b>');
            grid on;hold on;
        elseif Pmax == P3
            w = 3;
            plot3(test_data(k,1), test_data(k,2), test_data(k,3),'g+');
            grid on;hold on;
        elseif Pmax == P4
            w = 4;
            plot3(test_data(k,1), test_data(k,2), test_data(k,3),'y*');
            grid on;hold on;
        else
            return
        end
    end
        
    

    运行结果:

    分类的结果还是比较好的

     

    欢迎继续学习下一篇【最小风险贝叶斯分类和matlab实现】

    展开全文
  • CAN数据发送错误率高问题解决

    千次阅读 2019-07-08 09:28:07
    在调试程序的时候,发现控制器跟充电桩电源模块通信的时候,总线的错误率很高,通过试验,发现如果发包比较频繁,比如以5ms的时间间隔向总线发送数据,总线就会出现错误帧,将发送间隔改成40ms,错误帧几乎没有了,...
  • 同样的,在神经网络训练当中,当神经网络的输出与标签不一样时,也就是神经网络预测错了,这时我们希望神经网络可以很快地从错误当中学习,然后避免再预测错了。那么现实中,神经网络真的会很快地纠正错误吗? 我们...
  • 简述多元正态分布下的最小错误率贝叶斯如果特征的值向量服从d元正态分布,即其概率密度函数为: 即其分布可以由均值向量和对称的协方差矩阵 唯一确定。如果认为样本的特征向量在类内服从多元正态分布: 即...
  • adaboost之所以每次训练后,将分类器错误的权值加大,是因为如果加大后,下一次计算的错误率就会加大,这样,在我们最后一步分类器的整合的时候,它整合原理就是加大误差率小的权重,减少误差率大的权重,这样误差率...
  • 如何减少换页错误

    千次阅读 2010-01-12 15:09:00
    有这么一道笔试题:如何减少换页错误?1,进程倾向于占用CPU2,访问局部性(localilty of reference)满足进程要求3,进程倾向于占用I/O4,使用基于最短剩余时间(shortest remaining time)的调度机制5,减少页大小...
  • 如何减少换页错误

    千次阅读 2016-07-15 20:09:48
    如何减少换页错误? 正确答案: B 你的答案: B (正确) 进程倾向于占用CPU 访问局部性(locality of reference)满足进程要求 进程倾向于占用I/O 使用基于最短剩余时间(shortest ...
  • 个人认为应该是选二,局部性是指: 1、程序顺序执行 2、程序跳转不会太远 ...局部性好,导致下一个要找的东西就在当前内存的前后不远处,很有可能就在同一页里,所以就不需要频繁换页,换页错误也就少了。
  • 搜索“如何减少换页错误

    千次阅读 2009-06-02 14:28:00
    有这么一道笔试题:如何减少换页错误?1,进程倾向于占用CPU2,访问局部性(localilty of reference)满足进程要求3,进程倾向于占用I/O4,使用基于最短剩余时间(shortest remaining time)的调度机制5,减少页大小...
  • 很难说某个流程、某个会议、某个报告是不必要的,没有意义的,但是为了减少错误,肆意的增加流程、会议、报告后,这就成为了公司不能承受之重,不仅降低公司运行的效率,甚至影响正常工作的开展。 对于个人而言,...
  • 如何减少C++编写程序的CPU使用

    千次阅读 2015-03-03 14:55:44
    因此每一份函数拷贝仅仅在自己的编译单元中可见,这样链接错误就解决了,但是在程序中却会留下多份函数拷贝。在这种情况下,程序的性能不但没有提升,反而增加了编译和链接时间以及最终可执行体的大小。  但是...
  • Mysql错误编码和解释表

    万次阅读 2017-09-19 20:58:54
    Mysql错误编码和解释表1.错误消息的组成一共由三部分组成 1.mysql数字错误代码,这个数字的mysql的特定值,不可以移植到其它数据库系统。 2.一个五位长度的sqlstate值,这些值取自ANSI SQL和ODBC,并且更加标准化。...
  • 查准与查全

    万次阅读 多人点赞 2018-07-16 16:27:58
    我们在平时常用到的模型评估指标是精度(accuracy)和错误率(error rate),错误率是:分类错误的样本数站样本总数的比例,即E=n/m(如果在m个样本中有n个样本分类错误),那么1-a/m就是精度。除此之外,还会有查准...
  • findBug 错误修改指南

    万次阅读 2014-06-25 19:30:04
    FindBugs错误修改指南  1. EC_UNRELATED_TYPES Bug: Call to equals() comparing different types Pattern id: EC_UNRELATED_TYPES, type: EC, category: CORRECTNESS 解释: 两个不同类型的对象调用equals方法...
  • 前端构建工具

    千次阅读 2016-09-22 17:19:20
    所以每一个团队都希望有一种工具,能帮助整个团队在开发中能精简流程、提高效率、减少错误率。随之讨论自动化部署也越来越多,并且国内很多大型团队也都有自己成熟的自动化部署工具。据我所知,百度有FIS,腾讯有...
  • KeilC开发过程中的错误集锦,减少错误的重复度和错误的发生,提高开发效率!
  • grunt安装及使用

    千次阅读 2016-06-14 18:30:51
    Grunt是一个基于JavaScript上的一个很强大的任务管理器(task runner),简单来说就是你可以在你的终端机上,用JavaScript去执行一些程序来完成一些任务。...他可以更好的帮助一个团队更好的提高效率、减少错误率
  • 在模式分类问题中,人们往往希望尽量减少分类的错误,从这样的要求出发,利用概率论中的贝叶斯公式,就能得出使错误率为最小的分类规则,称之为基于最小错误率的贝叶斯决策。 设有M类模式,分类规则为 若则。 上式...
  • 1. beyond compare 超级好用文件的比较工具,虽然我...这个对我的工作效率提高和减少错误率有着非常大的帮助。 2.jd-gui.exe JAVA反编译文件,当你不知道一个class文件发生了什么改动时,使用它反编译吧,可以让
  • 机器学习--学习

    千次阅读 2017-04-14 09:20:03
    本文从梯度学习算法的角度中看学习对于学习算法性能的影响,以及介绍如何调整学习的一般经验和技巧。 在机器学习中,监督式学习(Supervised Learning)通过定义一个模型,并根据训练集上的数据估计最优参数...
  • VS错误代码列表

    千次阅读 2017-07-28 16:38:55
    547-试图降低配额限制,使低于当前的使用。  548-试图连接到已附加到其他设备的设备。  549-试图在未分配的地址上执行指令,且主机系统不支持未分配的命令引用。  550-未启动配置文件。  551-未停止...
  • 如果要同时减少犯第一类错误和第二类错误的概率,那就只能通过增加恋爱的次数 n n n ,比如一个经历过 n = 100 n=100 n = 1 0 0 次恋爱的女生,第101次恋爱犯第一类错误和第二类错误的概率就会小很多了。 例子二 ...
  • Windows 错误代码

    千次阅读 2018-11-30 12:56:28
    数据错误(循环冗余检查)。 24 程序发出命令,但命令长度不正确。 25 驱动器找不到磁盘上特定区域或磁道。 26 无法访问指定的磁盘或软盘。 27 驱动器找不到请求的扇区。 28 ...
  • c/c++ 代码优化及常见错误

    千次阅读 多人点赞 2019-03-01 21:45:59
    减少函数参数 递归(搜索)剪枝 数组按行访问 分块 2.常出的错误 判断相等 拼写错误 1.代码优化 for循环 未优化代码: for(i=0;i<sqrt(n);i++) for(单次表达式;条件表达式;末尾循环体),结束...
  • 点击预估

    千次阅读 2017-09-14 21:41:49
    点击预估综述 52cs07/24/2017 TwitterFacebookGoogle+PinterestTumblr 作者:张红林,腾讯高级工程师 背景 在计算广告系统中,一个可以携带广告请求的用户流量到达后台时,系统需 要在较短时间...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 208,712
精华内容 83,484
关键字:

如何减少错误率