[Computer-go] 25x25 experiment

Detlef Schmicker ds2 at physik.de
Mon Apr 27 06:12:04 PDT 2015


Sorry, I have some remarks to add:

This is a 19x19 CNN, with a fully connected final layer, therefore it 
can not be used for other than 19x19.

My actual CNNs do not use a fully connected final layer, but I use more 
input layers (which did not improve prediction rate a lot).

If somebody wants to use them it is not problem to offer them too, the 
files are actually not in oakfoam reporitory:(

But I do not use last move features, as my experience was, it is weaker 
in MC intergration....

I did not do any playing tests without MC! On CGOS 13x13 I have two 
players (NiceGo) with 50 and 1k playouts running at the moment...

Detlef

Am 27.04.2015 um 14:24 schrieb Detlef Schmicker:
> Sorry, it is not,
>
>
> but I offer my trained DCNN http://physik.de/net.tgz
>
> it has about 44% prediction rate and uses only the position....
>
> it a a caffe file which is quite easy to use:
>
> void Engine::getCNN(Go::Board *board,Go::Color col, float result[])
> {
>   int size=board->getSize();
>     float *data;
>     data= new float[2*size*size];
>     //fprintf(stderr,"2\n");
>     if (col==Go::BLACK) {
>       for (int j=0;j<size;j++)
>         for (int k=0;k<size;k++)
>           {//fprintf(stderr,"%d %d %d\n",i,j,k);
>           if (board->getColor(Go::Position::xy2pos(j,k,size))==Go::BLACK)
>               {
>               data[j*size+k]=1.0;
>               data[size*size+size*j+k]=0.0;
>               }
>           else if 
> (board->getColor(Go::Position::xy2pos(j,k,size))==Go::WHITE)
>               {
>               data[j*size+k]=0.0;
>               data[size*size+size*j+k]=1.0;
>               }
>           else
>               {
>               data[j*size+k]=0.0;
>               data[size*size+size*j+k]=0.0;
>               }
>         }
>     }
>     if (col==Go::WHITE) {
>       for (int j=0;j<size;j++)
>         for (int k=0;k<size;k++)
>           {//fprintf(stderr,"%d %d %d\n",i,j,k);
>           if (board->getColor(Go::Position::xy2pos(j,k,size))==Go::BLACK)
>               {
>               data[j*size+k]=0.0;
>               data[size*size+size*j+k]=1.0;
>               }
>           else if 
> (board->getColor(Go::Position::xy2pos(j,k,size))==Go::WHITE)
>               {
>               data[j*size+k]=1.0;
>               data[size*size+size*j+k]=0.0;
>               }
>           else
>               {
>               data[j*size+k]=0.0;
>               data[size*size+size*j+k]=0.0;
>               }
>     }
>     }
>
>
>   Blob<float> *b=new Blob<float>(1,2,size,size);
>   b->set_cpu_data(data);
>   vector<Blob<float>*> bottom;
>   bottom.push_back(b);
>   const vector<Blob<float>*>& rr = caffe_test_net->Forward(bottom);
>   //for (int j=0;j<19;j++)
>     //{
>     //for (int k=0;k<19;k++)
>     //    {
>     //    fprintf(stderr,"%5.3f ",rr[0]->cpu_data()[j*19+k]);
>     //    }
>     //fprintf(stderr,"\n");
>     //}
>   for (int i=0;i<size*size;i++) {
>       result[i]=rr[0]->cpu_data()[i];
>     if (result[i]<0.00001) result[i]=0.00001;
>   }
>   delete[] data;
>   delete b;
> }
>
>
>
> Am 27.04.2015 um 13:44 schrieb Petr Baudis:
>> On Mon, Apr 27, 2015 at 12:35:05PM +0200, Detlef Schmicker wrote:
>>> I dont see a reason, why there should be any problems using it with
>>> DNN on 19x19 trained network. If a 25x25 will be sheduled, I will
>>> take part :)
>> I'm sorry for being unclear!  I actually meant DCNN as a standalone
>> player, not part of MCTS.  Is it possible to run oakfoam's DCNN
>> implementation like that?  (Have you measured its stength?)
>>
>> Thanks,
>>
>>                 Petr Baudis
>> _______________________________________________
>> Computer-go mailing list
>> Computer-go at computer-go.org
>> http://computer-go.org/mailman/listinfo/computer-go
>>
>
> _______________________________________________
> Computer-go mailing list
> Computer-go at computer-go.org
> http://computer-go.org/mailman/listinfo/computer-go
>




More information about the Computer-go mailing list