概念学习和一般到特殊序

来源:互联网 发布:tensorflow 入门 编辑:程序博客网 时间:2024/06/10 08:33

概念学习和一般到特殊序

许多机器学习问题设计到从特殊训练样例中得到一般概念。给定一样例集合以及每个样例是否属于某一概念的标注,怎样自动推断出该概念的一般定义。这一问题被称为概念学习(concept learning)归纳学习假设:任一假设如果在足够大的训练样例中很好地逼近目标函数,它也能在未见实例中很好地逼近目标函数。

FIND-S:寻找极大特殊假设

举例:

#include <stdio.h>//训练集int examples[4][7] =  {        {1,1,1,1,1,1,1},        {1,1,0,1,1,1,1},        {0,0,0,1,1,0,0},        {1,1,0,1,0,0,1}    };int h[7] = {-1,-1,-1,-1,-1,-1,-1};void train(int*, int*);int main(){    for(int i=0;i<4;i++)        //当为正例时进行训练        if(examples[i][6] == 1) train(h, examples[i]);    return 0;}void train(int* h, int* s){    for(int i=0;i<6;i++){        if(s[i] != h[i]){            //当为极大特殊时,将其具体化            if(h[i] == -1) h[i] = s[i];            //当出现多样值时,将其一般化            else  h[i] = -2;        }        //检测训练结果        printf("%d\t",h[i]);    }    printf("\n");}

该实例中,值-1表示极大特殊,-2表示极大一般。

0 0
原创粉丝点击