Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Как сделать! / 1 сообщений из 1, страница 1 из 1
10.01.2013, 19:15
    #38105439
10012013
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать!
Тема: Сайт, где будут приниматься решения нейросетью. Как его сделать?

Я не очень разбираюсь в этих вещах, нужна помощь!
Есть задача создать систему предварительной оценки заявок по параметрам, используя нейросети. Мне это видется, как сайт. Много читал о CGI,но как это применить к нейросетям, совсем не идет в голову. Может есть идеи, примеры, информация?

Есть обученная сеть в JavaNNS, она сгенерированна в C Source file. Код внизу. Что с ним делать – идей нет.

/*********************************************************
result.c
--------------------------------------------------------
generated at Thu Jan 10 11:34:50 2013
by snns2c ( Bernward Kett 1995 )
*********************************************************/

#include <math.h>

#define Act_Logistic(sum, bias) ( (sum+bias<10000.0) ? ( 1.0/(1.0 + exp(-sum-bias) ) ) : 0.0 )
#ifndef NULL
#define NULL (void *)0
#endif

typedef struct UT {
float act; /* Activation */
float Bias; /* Bias of the Unit */
int NoOfSources; /* Number of predecessor units */
struct UT **sources; /* predecessor units */
float *weights; /* weights from predecessor units */
} UnitType, *pUnit;

/* Forward Declaration for all unit types */
static UnitType Units[37];
/* Sources definition section */
static pUnit Sources[] = {
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23, Units + 24, Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30,
Units + 31, Units + 32, Units + 33,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23, Units + 24, Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30,
Units + 31, Units + 32, Units + 33,
Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10,
Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20,
Units + 21, Units + 22, Units + 23, Units + 24, Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30,
Units + 31, Units + 32, Units + 33,

};

/* Weigths definition section */
static float Weights[] = {
0.272920, -0.450990, -0.461570, 0.869850, 0.701060, 0.725890, 1.825080, -0.709570, 0.165960, 0.351930,
1.620250, 0.559850, -0.478080, 0.436250, 0.107880, -0.751470, -0.533630, 0.693510, -0.220170, 0.250090,
1.248020, -0.563120, -0.918950,
1.165610, 0.259220, -3.129780, -1.216300, 0.090520, 1.670670, 2.080650, -3.747580, 1.480010, -0.987160,
2.025760, -0.889050, 1.006620, 1.738150, 0.757030, -3.605920, -1.078820, 2.668430, -1.054090, 1.319030,
2.427420, -0.919550, 0.978310,
0.112880, -0.449060, -3.087260, 0.344060, 0.803430, 1.505070, 3.042710, -3.492780, 1.061570, -0.871480,
2.558140, 0.876660, 0.957010, 1.918810, 0.583440, -3.828160, -0.556460, 2.578360, -1.652430, -0.259340,
3.367070, -1.251490, 0.151790,
-0.991370, 0.305190, 0.219970, -0.273730, -0.723670, 0.484130, 0.525820, 0.950820, -0.930620, 0.474100,
0.918450, -0.354830, -0.069790, -0.467100, 0.556110, 0.183750, -1.058680, 1.293160, -2.000710, 0.675620,
0.754450, -0.735000, 0.172810,
1.598820, -2.083930, 1.033900, -1.407430, 0.289860, 0.603130, 0.027470, -3.658210, 1.564300, 0.862030,
-0.275380, -0.636090, 0.818100, -1.021000, -2.184210, 0.765990, 0.093540, -0.067050, -0.850460, -0.518610,
-0.751420, 0.318270, 1.209510,
0.042020, -0.248270, -0.250470, 0.268930, 0.489230, -0.672040, 0.583710, -0.211470, -0.288880, 0.710830,
-1.206360, 0.115120, -0.799490, -0.056620, 0.918810, 1.314830, -0.720000, -0.039730, 2.789880, -1.756060,
0.623850, -1.043100, -0.404950,
-0.835760, -0.719610, -0.112850, -0.328190, -0.412220, 0.623750, 0.494590, -0.372910, -1.348780, -0.583290,
-0.586800, 0.628780, 0.217140, 0.159270, 1.047430, 0.382270, -0.431280, -0.427000, -1.189410, 1.350430,
-0.231190, 0.663610, -0.616320,
-0.283460, 0.691960, -0.516220, -0.414530, -1.051400, 0.700910, 0.434110, 1.353410, -0.550240, -0.694620,
-0.093200, -0.184390, -0.094850, -0.552440, -0.605720, 0.080510, 0.155590, -0.856020, 1.077810, -1.867180,
-0.233600, 0.219680, 0.291370,
-0.112420, 0.008770, -0.391670, 0.737720, -0.215510, 0.215710, 1.058590, 0.175460, -1.203300, -0.099610,
0.750830, -0.645870, -0.301930, 1.014250, -1.079090, -0.866180, 0.044350, -0.835210, 1.251630, -1.285740,
-0.206520, -0.114940, -0.948770,
1.206060, -0.303010, 0.690710, 0.099670, 1.725670, -0.786750, 0.106930, -1.601280, 2.238930, 0.196090,
0.713150, -0.257480, 0.566370, -0.728870, 0.400880, -0.344100, 0.512440, -0.706840, -3.311010, 2.609520,
0.531640, 0.746770, -0.108120,
0.608630, -0.317870, -3.300360, 0.527490, 0.573120, 1.421100, 3.295350, -1.853270, 0.148990, -1.299820,
2.207550, 0.651890, 0.645500, 1.332160, -0.809050, -2.426700, -1.371980, 2.250470, -1.753990, -1.500630,
2.163050, -0.953490, -0.249170, 1.926870, 3.726570, 4.775030, 0.005830, -0.793310, -0.362660, 0.443260,
-0.022040, 1.222360, -0.107770,
0.907940, -0.917550, 1.590160, 0.890200, 0.702490, -0.492780, -3.575960, -0.515520, 0.670750, 0.826670,
-1.025620, -0.051110, 0.623440, -1.768500, -0.259760, 1.090510, 1.168570, -2.441730, -3.246140, 2.462250,
-0.439310, 0.723220, 0.315340, -0.752430, -6.187940, -5.743400, 1.280470, 5.475790, -2.326730, 0.984410,
-1.638590, -1.299420, 3.803370,
-1.816300, -0.106210, 0.591490, 0.870280, -2.029370, -1.864500, -1.029310, 2.445840, -1.665950, -1.307720,
-1.836220, -0.974910, -0.365660, 0.018460, 0.311480, 2.481930, -0.096640, -1.658140, 2.938290, -2.369880,
-2.151550, -0.600280, -0.158460, -0.911680, -2.770150, -2.774850, -2.197920, -2.412030, 1.624640, -0.758440,
0.856810, 1.033140, -2.718360,

};

/* unit definition section (see also UnitType) */
static UnitType Units[37] =
{
{ 0.0, 0.0, 0, NULL , NULL },
{ /* unit 1 (noName) */
0.0, -0.997500, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 2 (noName) */
0.0, 0.127170, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 3 (noName) */
0.0, -0.613390, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 4 (noName) */
0.0, 0.617480, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 5 (noName) */
0.0, 0.170020, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 6 (noName) */
0.0, -0.040250, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 7 (noName) */
0.0, -0.299420, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 8 (noName) */
0.0, 0.791920, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 9 (noName) */
0.0, 0.645680, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 10 (noName) */
0.0, 0.493210, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 11 (noName) */
0.0, -0.651780, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 12 (noName) */
0.0, 0.717890, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 13 (noName) */
0.0, 0.421000, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 14 (noName) */
0.0, 0.027070, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 15 (noName) */
0.0, -0.392010, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 16 (noName) */
0.0, -0.970030, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 17 (noName) */
0.0, -0.817190, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 18 (noName) */
0.0, -0.271100, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 19 (noName) */
0.0, -0.705370, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 20 (noName) */
0.0, -0.668200, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 21 (noName) */
0.0, 0.977050, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 22 (noName) */
0.0, -0.108620, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 23 (noName) */
0.0, -0.761830, 0,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 24 (noName) */
0.0, -0.377570, 23,
&Sources[0] ,
&Weights[0] ,
},
{ /* unit 25 (noName) */
0.0, -0.162080, 23,
&Sources[23] ,
&Weights[23] ,
},
{ /* unit 26 (noName) */
0.0, 1.087720, 23,
&Sources[46] ,
&Weights[46] ,
},
{ /* unit 27 (noName) */
0.0, 0.366800, 23,
&Sources[69] ,
&Weights[69] ,
},
{ /* unit 28 (noName) */
0.0, -0.921200, 23,
&Sources[92] ,
&Weights[92] ,
},
{ /* unit 29 (noName) */
0.0, -0.652520, 23,
&Sources[115] ,
&Weights[115] ,
},
{ /* unit 30 (noName) */
0.0, -0.564780, 23,
&Sources[138] ,
&Weights[138] ,
},
{ /* unit 31 (noName) */
0.0, -0.587720, 23,
&Sources[161] ,
&Weights[161] ,
},
{ /* unit 32 (noName) */
0.0, 0.319060, 23,
&Sources[184] ,
&Weights[184] ,
},
{ /* unit 33 (noName) */
0.0, -0.031460, 23,
&Sources[207] ,
&Weights[207] ,
},
{ /* unit 34 (noName) */
0.0, -0.765270, 33,
&Sources[230] ,
&Weights[230] ,
},
{ /* unit 35 (noName) */
0.0, -1.355810, 33,
&Sources[263] ,
&Weights[263] ,
},
{ /* unit 36 (noName) */
0.0, -1.302660, 33,
&Sources[296] ,
&Weights[296] ,
}

};



int result(float *in, float *out, int init)
{
int member, source;
float sum;
enum{OK, Error, Not_Valid};
pUnit unit;


/* layer definition section (names & member units) */

static pUnit Input[23] = {Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, Units + 11, Units + 12, Units + 13, Units + 14, Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23}; /* members */

static pUnit Hidden1[10] = {Units + 24, Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33}; /* members */

static pUnit Output1[3] = {Units + 34, Units + 35, Units + 36}; /* members */

static int Output[3] = {34, 35, 36};

for(member = 0; member < 23; member++) {
Input[member]->act = in[member];
}

for (member = 0; member < 10; member++) {
unit = Hidden1[member];
sum = 0.0;
for (source = 0; source < unit->NoOfSources; source++) {
sum += unit->sources[source]->act
* unit->weights[source];
}
unit->act = Act_Logistic(sum, unit->Bias);
};

for (member = 0; member < 3; member++) {
unit = Output1[member];
sum = 0.0;
for (source = 0; source < unit->NoOfSources; source++) {
sum += unit->sources[source]->act
* unit->weights[source];
}
unit->act = Act_Logistic(sum, unit->Bias);
};

for(member = 0; member < 3; member++) {
out[member] = Units[Output[member]].act;
}

return(OK);
}
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Как сделать! / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]