Click here to Skip to main content
15,879,184 members
Articles / Artificial Intelligence

Artificial Neural Networks made easy with the FANN library

Rate me:
Please Sign up or sign in to vote.
4.93/5 (46 votes)
28 Aug 2013CPOL24 min read 194K   10.6K   206  
Neural networks are typically associated with specialised applications, developed only by select groups of experts. This misconception has had a highly negative effect on its popularity. Hopefully, the FANN library will help fill this gap.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML
><HEAD
><TITLE
>fann_create_array</TITLE
><link href="../style.css" rel="stylesheet" type="text/css"><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="Fast Artificial Neural Network Library"
HREF="index.html"><LINK
REL="UP"
TITLE="Creation, Destruction, and Execution"
HREF="c253.html#api.sec.create_destroy"><LINK
REL="PREVIOUS"
TITLE="fann_create"
HREF="r258.html"><LINK
REL="NEXT"
TITLE="fann_create_shortcut"
HREF="r315.html"></HEAD
><BODY
CLASS="refentry"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Fast Artificial Neural Network Library</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="r258.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="r315.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="api.fann_create_array"
></A
>fann_create_array</H1
><DIV
CLASS="refnamediv"
><A
NAME="AEN286"
></A
><H2
>Name</H2
>fann_create_array&nbsp;--&nbsp;Create a new artificial neural network, and return a pointer to it.</DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN289"
></A
><H2
>Description</H2
><code
class="methodsynopsis"
>&#13;  <span
class="type"
>struct fann * </span
>fann_create_array(<span
class="methodparam"
><span
class="type"
>float </span
><span
class="parameter"
>connection_rate</span
></span
><span
class="methodparam"
>, <span
class="type"
>float </span
><span
class="parameter"
>learning_rate</span
></span
><span
class="methodparam"
>, <span
class="type"
>unsigned int </span
><span
class="parameter"
>num_layers</span
></span
><span
class="methodparam"
>, <span
class="type"
>unsigned int * </span
><span
class="parameter"
>neurons_per_layer</span
></span
>);&#13;</code
><P
>&#13;            <CODE
CLASS="function"
>fann_create_array</CODE
> will create a new artificial neural network, and return a pointer to
	    it. It is the same as <CODE
CLASS="function"
>fann_create</CODE
>, only it accepts an array as its final parameter
	    instead of variable arguments.
	  </P
><P
>&#13;	    <DIV
CLASS="example"
><A
NAME="example.api.fann_create_array"
></A
><P
><B
>Example 5-1. <CODE
CLASS="function"
>fann_create_array</CODE
> example</B
></P
><PRE
CLASS="programlisting"
>&#13;
unsigned int neurons_per_layer[3] = {2, 3, 1};

// The following two calls have identical results
struct fann * ann = fann_create_array(1.0f, 0.7f, 3, neurons_per_layer);
struct fann * ann2 = fann_create(1.0f, 0.7f, 3, 2, 3, 1);

fann_destroy(ann);
fann_destroy(ann2);

	      </PRE
></DIV
>
	  </P
><P
>This function appears in FANN &#62;= 1.0.5.</P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="r258.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="r315.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>fann_create</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="c253.html#api.sec.create_destroy"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>fann_create_shortcut</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Publisher
Poland Poland
Software Developer's Journal (formerly Software 2.0) is a magazine for professional programmers and developers publishing news from the software world and practical articles presenting very interesting ready programming solutions. To read more

Comments and Discussions