精华内容
下载资源
问答
  • 人脸算法测试

    千次阅读 2019-12-16 21:56:29
    人脸算法测试 本次测试主要测试: Dlib人脸检测 c++ 基于SSD 框架的 ResNet-10 restnet face c++ 基于caffe 框架的MTCNN人脸检测 c++ 基于mxne框架的insightFace人脸识别模型 python 基于Troch的openface模型...

    人脸算法测试

    本次测试主要测试:

    1. Dlib人脸检测 c++
    2. 基于SSD 框架的 ResNet-10 restnet face c++
    3. 基于caffe 框架的MTCNN人脸检测 c++
    4. 基于mxne框架的insightFace人脸识别模型 python
    5. 基于Troch的openface模型 c++

    实验所用的机器 (Intel® Core™ i7-6700K CPU @ 4.00GHz × 8 GeForce GTX 1060 6GB/PCIe/SSE2)

    Dlib(C++)

    使用的是Dlib自带d人脸检测,由于原始算法没有采用Dlib人脸识别,因此只测试了Dlib人脸检测

    1. Dlib代码参考
    数据库 像素大小 检测数 正确率 检测平均耗时 landmark 模式
    cpu 1987 960x540 1336 67.23% 43.3ms 68 Release

    注:

    1. 使用的Release 模式, Debug模式下,耗时很长
    2. 测试代码见TestDlib

    Restnet face (C++ )

    opencv 的sample使用的模型, Caffe框架, SSD framework using ResNet-10 restnet face

    1. 到官网下载模型文件deploy_lowres.prototxt和download_weights.py的文件,运行得到res10_300x300_ssd_iter_140000_fp16.caffemodel模型
    2. 下载resnet_ssd_face.cpp文件,仿照上面即可运行
    3. 关于如何训练对应的模型,详细情况见how_to_train_face_detector.txt
    数据库 像素大小 检测数 正确率 检测平均耗时 landmark 模式
    cpu 1987 960x540 1975 99.39% 19.11ms Release

    注:

    1. Release模式 可以使用opencl 加速
    2. 测试代码见本文件夹TsetDnn

    MTCNN (C++)

    在960x544大小的图像上测试, 数据集大小为1987

    1. github上MTCNN的源码,
    2. 下载Fast_MTCNN和对应的model文件夹里面的模型
    数据库 像素大小 检测数 正确率 检测平均耗时 landmark 模式
    cpu 1987 960x544 1739 87.51% 50.3ms 5 Release
    1. 其中有200多张侧脸,低头,遮挡的图片 landmark 5个
    2. 采用的是5点仿射矫正方法
    3. 测试代码见本文件夹Fast_MTCNN

    insightFace(python)

    insightface 采用的是MTCNN进行人脸检测,使用的是caffe框架下训练的模型在*$INSIGHTFACE/deploy/mtcnn-model/,使用的是cv2.warpAffine函数进行人脸对齐 ,使用model-r1000-ii*模型进行人脸__识别__准备:

    1. 准备好预训练模型
    2. 将模型放到文件夹*$INSIGHTFACE_ROOT/models/文件夹下面, 如$INSIGHTFACE_ROOT/models/model-r1000-ii*
    3. 执行*$INSIGHTFACE/deploy/test.py*

    对于单张人脸图片会被裁剪只*(112x112)* ,并且整个的对齐加获取特征时间22ms

    测试人脸数据,使用python基于mxnet框架,对已有的数据集进行测试

    数据库 数据库总数 识别数 未检测数 正确率 检测耗时 编码耗时
    cpu 39 15139 10203 278 68.66% 149.0635ms 763.379ms
    gpu 39 15139 10203 278 68.66% 40.35655ms 22.178555ms

    注:

    1. 此数据集完全来自现场数据,质量效果较差,但是即使在这样的数据集上仍然有较好的效果,足以说明该算法的独到之处. 另外此数据集的像素普遍偏小,因此检测和编码(特征提取)速度很快
    2. 没有在1987张图片的数据库人脸识别测试
    3. 测试代码见insightFace 文件夹

    openFace (C++)

    使用Torch框架训练的模型,进行人脸识别

    1. 运行参考js_face_recognition.html
    2. 该模型在这两个数据集上面训练的 CASIA-WebFace and FaceScrub
    数据库 数据库总数 识别数 未检测数 正确率 识别耗时 模式
    cpu 39 15139 - - - - Release

    1. 识别人脸,效果不理想,OpenFace version 0.2.0 识别率在92.9% , 但是在我们的数据库上识别效果很差, 可能是没有对齐的原因
    2. 测试代码见TestDnn

    具体的测试代码,在我的GitHub面,感兴趣的自行获取

    展开全文
  • 算法测试:编写算数测试小软件,三个类组成,Teacher类负责出题,并判断回答是否正确;ComputerFrame类负责提供视图,用户可通过此类GUI看到题目,并编写答案;MainClass是软件入口类。 思想:如题目要求,简单实现...

    题目:

    算法测试:编写算数测试小软件,三个类组成,Teacher类负责出题,并判断回答是否正确;ComputerFrame类负责提供视图,用户可通过此类GUI看到题目,并编写答案;MainClass是软件入口类。

    思想:

    1、Teacher类负责出题,因此需要三个属性int num1、int num2、String operator分别表示两个运算数以及一个运算符,保证出题随即性,运算数与运算符均为随机生成;并判断回答是否正确,因此编写函数boolean isRight(double result)用于判断用户输入的答案是否正确。

    2、ComputerFrame类负责提供视图,用户可通过此类GUI看到题目,并编写答案,因此编写ComputerFrame类继承于JFrame类,属性为所需要的各个按钮、输入框、标签、用户输入的答案以及Teacher类对象。

    3、MainClass是软件入口类,即生成ComputerFrame类对象并设置其属性。

    源代码:

    MainClass.java

    package countTest;
    
    import javax.swing.JFrame;
    /**
     * @author TX
     * @time 2016年12月3日 上午10:30:03
     */
    public class MainClass {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		ComputerFrame frame = new ComputerFrame("算术测试");
    		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		frame.setSize(400, 120);
    		frame.setLocation(500, 200);
    		frame.setVisible(true);
    	}
    
    }
    
    Teacher.java
    package countTest;
    
    import java.util.Random; 
    /**
     * @author TX
     * @time 2016年12月3日 上午10:30:34
     */
    public class Teacher {
    	private int num1;
    	private int num2;
    	private String operator;
    	public Teacher()
    	{
    		Random random = new Random();  
    		num1 = random.nextInt(100);  
    	    num2 = random.nextInt(100);
    	    int opNum = random.nextInt(4);
    	    if(opNum == 0) operator = "+";
    	    if(opNum == 1) operator = "-";
    	    if(opNum == 2) operator = "*";
    	    if(opNum == 3) operator = "/";
    	}
    	public boolean isRight(double result)
    	{
    		System.out.println(num1+ operator + num2 + "=" + result);
    		if(operator.equals("+"))
    		{
    			System.out.println(num1+num2);
    			return result == (num1+num2);
    		}
    			
    		else if(operator.equals("-"))
    		{
    			System.out.println(num1-num2);
    			return result == (num1-num2);
    		}
    			
    		else if(operator.equals("*"))
    		{
    			System.out.println(num1*num2);
    			return result == (num1*num2);
    		}
    			
    		else if(operator.equals("/"))
    		{
    			System.out.println(((double)num1/(double)num2));
    			return Math.abs(result-(double)num1/(double)num2) < 0.001;
    		}
    			
    		return false;
    	}
    	public int getNum1() {
    		return num1;
    	}
    	public void setNum1(int num1) {
    		this.num1 = num1;
    	}
    	public int getNum2() {
    		return num2;
    	}
    	public void setNum2(int num2) {
    		this.num2 = num2;
    	}
    	public String getOperator() {
    		return operator;
    	}
    	public void setOperator(String operator) {
    		this.operator = operator;
    	}
    	
    }
    

    ComputerFrame.java

    package countTest;
    
    import java.awt.*;  
    import java.awt.event.ActionEvent;  
    import java.awt.event.ActionListener; 
    import javax.swing.*;  
    /**
     * @author TX
     * @time 2016年12月3日 上午10:30:56
     */
    public class ComputerFrame extends JFrame{
    	 Teacher teacher;
    	 JButton getQuestion, confirmAnswer;  
    	 JTextField text1, text2, text3;  
    	 JLabel label1, label2, checkLabel;  
    	 public int resultNum;
    	 
    	 public ComputerFrame(String s){
    		 super(s);
    		 teacher = new Teacher();
    		 setLayout(new FlowLayout());
    		 text1 = new JTextField(6);  
    	     text1.setEditable(false);  
    	     text2 = new JTextField(6);  
    	     text2.setEditable(false);  
    	     text3 = new JTextField(6);  
    	     label1 = new JLabel("+");  
    	     label2 = new JLabel("="); 
    	     checkLabel = new JLabel();
    	        
    		 getQuestion = new JButton("获取题目");
    		 getQuestion.addActionListener(new ActionListener()
    		 	{public void actionPerformed(ActionEvent arg0) {
    
    				teacher = new Teacher();
    				label1.setText(teacher.getOperator());  
    		        text1.setText(String.valueOf(teacher.getNum1()));  
    		        text2.setText(String.valueOf(teacher.getNum2()));  
    			}});
    		 confirmAnswer = new JButton("确认答案");
    		 confirmAnswer.addActionListener(new ActionListener()
    		 	{public void actionPerformed(ActionEvent arg0) {
    		 		if(text3.getText().length() == 0)
    		 		{
    		 			checkLabel.setText("请输入答案!");
    		 		}
    		 		else
    		 		{
    		 			double result = Double.valueOf(text3.getText());
    		 			if(teacher.isRight(result))
    		 			{
    		 				checkLabel.setText("回答正确!");
    		 			}
    		 			else
    		 			{
    		 				checkLabel.setText("回答错误!");
    		 			}
    		 		}
    			}});
    		 
    	     label1.setText(teacher.getOperator());  
    	     text1.setText(Integer.toString(teacher.getNum1()));  
    	     text2.setText(Integer.toString(teacher.getNum2())); 
    	     
    	     this.add(getQuestion); 
    	     this.add(text1);  
    	     this.add(label1);
    	     this.add(text2);  
    	     this.add(label2);
    	     this.add(text3); 	     
    	     this.add(confirmAnswer); 
    	     this.add(checkLabel);
    	     setVisible(true);  
    	     validate(); 
    	 }
    	 
    }
    

    展开全文
  • 算法测试与传统测试的不同

    千次阅读 2018-12-10 16:44:52
    最近接触到一个概念:算法测试。下面列出这个新名词,与传统测试的不同。 算法测试 传统测试 上线后 上线前 效果 功能 用户感知 用户使用 偏后端 偏UI 数据集     对于近年来流行...

    最近接触到一个概念:算法测试。下面列出这个新名词,与传统测试的不同。

    算法测试 传统测试
    上线后 上线前
    效果 功能
    用户感知 用户使用
    偏后端 偏UI
    数据集  

     

    对于近年来流行起来的新测试类型,还需要更多补充。先mark到这里。

     

    展开全文
  • 随着人工智能的发展与应用,AI测试逐渐进入到我们的视野,传统的功能测试策略对于算法测试而言,心有余而力不足,难以满足对人工智能 (AI) 的质量保障。 结合在人脸检测、检索算法上的测试探索、实践的过程,本文将...

    https://www.toutiao.com/a6708688571563246087/

     

    从人工智能 (AI)发展应用看算法测试的测试策略

     

    随着人工智能的发展与应用,AI测试逐渐进入到我们的视野,传统的功能测试策略对于算法测试而言,心有余而力不足,难以满足对人工智能 (AI) 的质量保障。

    结合在人脸检测、检索算法上的测试探索、实践的过程,本文将从以下几个方面介绍人工智能 (AI) 算法测试策略。

    • 算法测试集数据准备
    • 算法功能测试
    • 算法性能测试
    • 算法效果测试(模型评估指标)
    • 算法指标结果分析
    • 算法测试报告

    我们将算法测试测试流程中的几个核心环节提炼如上几点,也就组成了我们算法测试的测试策略,在此,抛砖引玉的分享一下。


    算法测试集数据准备

    测试集的准备对于整体算法测试而言非常重要,一般测试集准备过程中需考虑以下几点:

    • 测试集的覆盖度
    • 测试集的独立性
    • 测试集的准确性

    测试集的覆盖度

    如果,测试集准备只是随机的选取测试数据,容易造成测试结果的失真,降低算法模型评估结果的可靠性。

    好比我们的功能测试,根据功能测试设计,构造对应的数据进行测试覆盖。算法测试亦然,以人脸检测算法而言,除了考虑选取正样本、负样本外,还需要考虑正样本中人脸特征的覆盖,如人脸占比、模糊度、光照、姿态(角度)、完整性(遮挡)等特征。

    选择好对应的测试数据后,后来后期的指标计算、结果分析,还需对数据进行标注,标注对应的特征,以人脸检测为例,使用工具对人脸图标进行人脸坐标框图,并将对应特征进行标注记录及存储,如下图。

    从人工智能 (AI)发展应用看算法测试的测试策略

     

    另外,除了数据特征的覆盖,也需要考虑数据来源的覆盖,结合实际应用环境、场景的数据进行数据模拟、准备。比如公共场所摄像头下的人脸检索,图片一般比较模糊、图片光照强度不一,因此准备数据时,也需要根据此场景,模拟数据。一般来讲,最好将真实生产环境数据作为测试数据,并从其中按照数据特征分布选取测试数据。

    此外,关于测试数据的数量,一般来讲测试数据量越多越能客观的反映算法的真实效果,但出于测试成本的考虑,不能穷其尽,一般以真实生产环境为参考,选取20%,如果生产环境数据量巨大,则选取1%~2%,或者更小。由于我们的生产环境数据量巨大,考虑到测试成本,我们选取了2W左右的图片进行测试。

    测试集的独立性

    测试集的独立性主要考虑测试数据集相互干扰导致测试结果的失真风险。

    我们以人脸检索为例,我们准备200组人脸测试数据,每组为同一个人不同时期或角度的10张人脸照片,对人脸检索算法模型指标进行计算时,如计算TOP10的精确率,此时若在数据库中,存在以上200组人的其他照片时,便会对指标计算结果造成影响,比如我们200组人脸中包含Jack,但数据库中除了Jack的10张,还存在其他的8张Jack的照片。若算法微服务接口返回的TOP10图片中有我们测试集中的Jack图片6张,非测试集但在数据库中的其他Jack照片2张,还有2张非Jack的照片,测试的精确率该如何计算,按照我们的测试集(已标注)来看,精确率为60%,但实际精确率为80%,造成了精确率指标计算结果的失真。

    因此,我们在测试集数据准备时,需考虑数据干扰,测试准备阶段对数据库的其他测试数据进行评估,比如从200组人脸测试数据组,进行预测试,对相似度非常高的数据进行研判,判断是否为同一人,若是则删除该照片或者不将该人从200组测试集中剔除。

    测试集的准确性

    数据集的准确性比较好理解,一般指的是数据标注的准确性,比如Jack的照片不应标注为Tom,照片模糊的特征不应标注为清晰。如果数据标注错误,那么直接影响了算法模型指标计算的结果。

    对于测试集的准备,为了提高测试集准备效率及复用性,我们尝试搭建了算法数仓平台,实现数据(图片)的在线标注、存储等功能,作为算法测试数据的同一获取入口。


    算法功能测试

    以我现在接触的人工智能系统而言,将算法以微服务接口的形式对外提供服务,类似于百度AI开放平台。

    从人工智能 (AI)发展应用看算法测试的测试策略

     

    因此需要对算法微服务接口进行功能性验证,比如结合应用场景从功能性、可靠性、可维护性角度对必填、非必填、参数组合验证等进行正向、异向的测试覆盖。此处不多做介绍,同普通的API接口测试策略一致。


    算法性能测试

    微服务接口的性能测试大家也比较了解,对于算法微服务同样需要进行性能测试,如基准测试、性能测试(验证是否符合性能指标)、长短稳定性能测试,都是算法微服务每个版本中需要测试的内容,同时产出版本间的性能横向对比,感知性能变化。常关注的指标有平均响应时间、95%响应时间、TPS,同时关注GPU、内存等系统资源的使用情况。

    一般使用Jmeter进行接口性能测试。不过,我们在实际应用中为了将算法微服务接口的功能测试、性能测试融合到一起,以降低自动化测试开发、使用、学习成本,提高可持续性,我们基于关键字驱动、数据驱动的测试思想,利用Python RequestLocust模块分别实现了功能、性能自定义关键字开发。每轮测试执行完算法微服务功能自动化测试,若功能执行通过,则自动拉起对应不同执行策略的性能测试用例,每次测试执行结果都进行存储至数据库中,以便输出该算法微服务接口的不同版本性能各项指标的比较结果。


    算法模型评估指标

    从人工智能 (AI)发展应用看算法测试的测试策略

     

    首先,不同类型算法的其关注的算法模型评估指标不同。

    比如人脸检测算法常以精确率、召回率、准确率、错报率等评估指标;人脸检索算法常以TOPN的精确率、召回率、前N张连续准确率。

    其次,相同类型算法在不同应用场景其关注的算法模型评估指标也存在差异。

    比如人脸检索在应用在高铁站的人脸比对(重点人员检索)的场景中,不太关注召回率,但对精确率要求很多,避免抓错人,造成公共场所的秩序混乱。但在海量人脸检索的应用场景中,愿意牺牲部分精确率来提高召回率,因此在该场景中不能盲目的追求精准率。

    除了上述算法模型评估指标,我们还常用ROC、PR曲线来衡量算法模型效果的好坏。

    从人工智能 (AI)发展应用看算法测试的测试策略

     

    从人工智能 (AI)发展应用看算法测试的测试策略

     

    我们在算法微服务功能、性能测试中介绍到,使用了基于关键字驱动、数据驱动的测试思想,利用Python Request、Locust模块分别实现功能、性能自定义关键字开发。考虑到测试技术栈的统一以及可复用性,我们基于上述设计,实现了算法模型评估指标的自定义关键字开发,每次运行输出相同测试集下的不同版本模型评估指标的横向比较。

    当然除了不同版本的比较模型评估指标的比较,如果条件允许,我们还需要进行一定的竞品比较,比较与市场上相同类似的算法效果的差异,取长补短。


    算法指标结果分析

    我们对算法模型指标评估之后,除了感知算法模型评估指标在不同版本的差异,还希望进一步的进行分析,已得到具体算法模型的优化的优化方向,这时候就需要结合数据的标注信息进行深度的分析,挖掘算法优劣是否哪些数据特征的影响,影响程度如何。比如通过数据特征组合或者控制部分特征一致等方式,看其他特征对算法效果的影响程度等等。

    这时候我们一般通过开发一些脚本实现我们的分析过程,根据算法微服务接口的响应体以及数据准备阶段所标注的数据特征,进行分析脚本的开发。

    另外指标结果的进一步分析,也要结合算法设计,比如人脸检索算法,每张图片的检索流程为“输入图片的人脸检测“ -> “输入图片的人脸特征提取“ -> “相似特征检索“,通过此查询流程不难看出人脸检索的整体精确率受上述三个环节的影响,因此基于指标结果的深度分析也需要从这三个层次入手。


    算法测试报告

    一般算法测试报告由以下几个要素组成:

    • 算法功能测试结果
    • 算法性能测试结果
    • 算法模型评估指标结果
    • 算法指标结果分析

    由于算法微服务测试的复杂度相对普通服务接口较高,在报告注意简明扼要。

    从人工智能 (AI)发展应用看算法测试的测试策略

    展开全文
  • 算法测试的一点浅见

    万次阅读 2018-09-24 00:17:26
    算法测试其实是测试界,特别是第三方测试的一个没有好办法的领域。结合阅读腾讯TMQ的《移动APP性能评测和优化》的第4章(导航评测)、第5章(网络优化),顺便说一下自己的一点想法。  一、前提 1、首先最好有个...
  • 分类算法测试

    2019-11-15 22:51:13
    一、分类算法 按照一定标准将不同个体分成不同种类。 应用:人脸识别、图像识别、作弊监测 主要的分类算法种类:决策树、...二、测试策略 主要从正确率、错误率、灵敏度、鲁棒性等角度出发验证分类效果的优劣。...
  • 算法测试之实践与小结

    千次阅读 2018-12-10 15:52:19
    因项目需要,我从上半年开始接触算法测试。本文主要对于算法测试的类型和方法这里做一下总结。在项目中,所接触算法测试的类型主要包括如下图所示的几个方面 一,算法模型 根据之前的调研,在测试阶段,对于新...
  • MATLAB与carsim联合仿真——简单AEB算法测试

    千次阅读 多人点赞 2019-04-01 19:58:00
    MATLAB与carsim联合仿真——简单AEB算法测试 文章目录MATLAB与carsim联合仿真——简单AEB算法测试0. 前言1.Carsim软件设置1.1界面介绍2.Carsim输入和输出设置3.设置simulink模型4.仿真效果5.后记 0. 前言 原创不易,...
  • 基本算法研究1-冒泡排序算法测试

    千次阅读 2015-09-26 10:15:09
    基本算法研究1-冒泡排序算法测试 (http://www.cnblogs.com/nathan1987/articles/4839497.html) 1、经典冒泡排序法基本原理 先看一个动态图,感觉比较形象:  冒泡排序(Bubble Sort)是一种简单的排序算法。...
  • 简单匹配算法测试

    千次阅读 2013-08-15 00:43:52
    简单匹配算法测试代码: Win7_Ultimate_32_sp1+vs2010测试通过:   // matchTest.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" int matchFuction(const char*DesChar,const char*ShortChar)...
  • 算法测试平台搭建常用代码备份

    千次阅读 2016-06-22 20:37:16
    最近要在windows平台下搭建一个简单的算法测试平台进行算法的测试(又要做windows下算法的开发~)故而把一些常用的MFC代码的的代码总结如下 选择路径对话框 void CMuraDetectDlg::OnMenuChoosePath() { // TODO: 在...
  • 【AI测试】机器学习项目的测试,算法测试

    万次阅读 多人点赞 2018-05-16 17:35:25
    大家好,今天分享的主题是AI算法项目的测试探索。 首先介绍人工智能的一些基本概念,接着说明人工智能和机器学习的关系,然后再叙述机器学习相关的基本概念,包括监督学习,无监督学习,会重点说监督学习。再介绍...
  • AES算法测试用例程序Java实现(密钥长度128比特)   ——2018.10.22 目录 1引言... 1  1.1任务概要... 1  1.2运行环境和开发环境... 1  1.3密码算法原理简单介绍... 1 2 程序各模块详细设计... 3  ...
  • Weisfeiler-Lehman算法测试图同构

    千次阅读 热门讨论 2019-12-19 17:13:47
    Weisfeiler-Lehman算法(威斯费勒-莱曼算法)是测试图同构的经典算法之一,我在这儿记录一下它的实现原理,参考文章为Weisfeiler-Lehman Graph Kernels 伪代码 论文中的伪代码如下所示 假设要测试同构的两张图为G...
  • STM32上实现PID算法测试

    千次阅读 2020-05-04 21:23:32
    PID算法使用STM32进行测试PID测试代码运行结果感谢以下几篇博文,它给我带来了很大的帮助 PID PID即:Proportional(比例)、Integral(积分)、Differential(微分)的缩写。顾名思义,PID控制算法是结合比例、积分...
  • 每次测试一个算法时,都需要手工输入数据,这并不能很好的测试算法的效率,因为测试10个数据好测,但是如果要测试1000个100000个数据靠人工输入数据是不实际的,因此,我们需要编写一个能够随机生成特定数量的函数。...
  • 随机生成算法测试用例和性能测试

    千次阅读 2018-07-27 23:38:49
    2、传入函数指针,对不同的排序算法进行统一的性能测试 //main.cpp #include &lt;iostream&gt; #include &lt;string&gt; #include "SortTestHelper.h" template&lt;typename T&...
  • 国密SM9算法测试数据

    千次阅读 2017-09-02 14:31:40
    国产IBC算法SM9的测试数据:包括:签名验签、秘钥封装、加解密、秘钥协商算法的各步骤测试数据。参见 https://github.com/zweib730/SM9-misc
  • 第一部分:人工智能和测试的介绍 第二部分:人工智能系统的特性和验收标准 第三部分:机器学习的性能指标和基准 第四部分:测试机器学习工作流程 第五部分:人工智能系统测试简介 第六部分:人工智能系统的黑盒测试 ...
  • 今天终于完成了Code Analyser的新算法测试,分析速度和准确度都比以前有了本质的区别。能够分析出代码中的成员变量,属性和成员方法。这将是后续其它功能的基础。 更多内容请参见C# Code Analyser 及其它的开发背景
  • 图书推荐系统的推荐算法测试

    千次阅读 2017-12-06 13:28:03
    2.由于推荐系统中广泛使用的有三种主要的距离计算方法,分别是pearson相似度,欧氏距离和角距离,这三种算法在推荐系统中都具有良好的使用性,为了测试哪种距离计算方法是最适合这个图书推荐系统的,我们进行一次...
  • CDC算法测试问题

    千次阅读 2014-08-05 15:40:58
    测试时发现,对于文件中间部分,即使略作修改,两次
  • 共享租车公司 Lyft 投入大量时间和资源开发工具来测试机器学习算法,近日 Lyft 宣布将向公众开源这些工具。正式投入生产环境之前,一款机器学习算法测试和更替非常耗费时间,Lyft 开发的测试工具,是属于一种...
  • 第一部分:人工智能和测试的介绍 第二部分:人工智能系统的特性和验收标准 第三部分:机器学习 第四部分:机器学习的性能指标和基准 第五部分:人工智能系统测试简介 第六部分:人工智能系统的黑盒测试 第七部分:...
  • 【原创】Structure from Motion (SfM)算法测试—3D重建简介 Author: chad Mail: linczone@163.com 今天整理资料,突然发现之前公司调研摄像头3D扫描方案时做的一个实验小实验,同时联想到前段时间尼泊尔地震百度...
  • 2道Scratch算法测试

    万次阅读 2018-08-29 14:24:11
    1.陶陶摘苹果 题目描述  陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。...
  • 先要测试算法,到处一个实验函数。需要一百组以上的实验数据,其中包含多个可变参数,问用什么工具可以做一个集成化测试,直接到处多组实验数据。
  • 排序算法测试程序入口

    千次阅读 2014-01-08 09:42:43
    //测试排序算法的正确性 private static void Test(int n) { int[] de = GenerateRandomNumber(n).ToArray(); Console.WriteLine("排序前:"); foreach (int dee in de) { Console.WriteLine(dee); } //...
  • 写在前面 质量是企业长远生存的根基,...功能测试,按照测试金字塔模型,又分为三种:单元测试、接口测试和 UI 测试。单元测试是方法级别的测试,是保证代码质量的基础,一般由开发同学自行完成。接口测试和 UI 测试
  • OpenCV内置的超分辨算法测试

    千次阅读 2018-11-22 22:10:45
    最近在做超分辨相关的东西,从网上了解到OpenCV有自带的超分辨算法,于是就有了下面这些尝试。 1、利用OpenCV驱动USB摄像头拍摄视频以及读取视频  读取视频文件或者摄像头视频需要使用OpenCV中的VideoCapture类,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 57,462
精华内容 22,984
关键字:

算法测试