Releases: joelself/FannCSharp
v0.1.7
@AndresN1 found a bug in NeuralNet(NetworkType netType, ICollection<uint> layers) where I was accessing the layers ICollection before the first element by using its IEnumerator. The MSFT docs say that an IEnumerator starts before the first element in the collection and the preferred method of using an IEnumerator is with the foreach statement. So, I changed all my ICollection iteration to use foreach.
Upgrade to v0.1.7 if you use the NeuralNet(NetworkType netType, ICollection<uint> layers) constructor. If you don't use that constructor you can safely keep using earlier versions.
v0.1.6
Pre-release of FANNCSharp. See the README.md to see what goes where and how to use the library.
v0.1.5
Pre-release of FANNCSharp. See the README.md to see what goes where and how to use the library.
v0.1.3
Pre-release of FANNCSharp. See the README.md to see what goes where and how to use the library.
This release has the following changes:
- Renamed Float and Double vectors to match their actual on-disk name. Removed callback delagate from NeuralNetFixed.
- Merged with upstream master. Removed callback functions from fannfixed and fixed an error in documentation of ActivationFunctions enum.
- Merge branch 'master' of https://github.com/libfann/fann
Now Releasing Debug Binaries
Debug and Release Binaries Have Their Own Directory
I'm now producing both debug and release binaries. They each have their own directory in the bin directory.
Zip Files Aren't Empty Any More
My previous zip utility was producing empty zip files. I switched to 7zip and am now making zip files of individual Float\Fixed\Double dlls sets. You can find the dlls and zip files here under Debug/Release and then x86/x64.
Pre-release
No longer marking as pre-release so it will show up on the releases page..
Initial release of FANNCSharp, the C# wrapper for the FANN library
Change From v0.1 to v0.1.1
This release accidentally includes some empty zip files. Try v0.1.2 or the latest release on the releases page.
The only change from v0.1 are the links on the README.md and these release notes have been made relative so they will point to the correct files no matter what tag is being edited.
Initial Release
This the first release of FANNCSharp. It wraps the FANN C++ classes and methods and makes them available to use in C# .NET framework 2.0 and higher. The wrapper doesn't just use the C++ class and method names, it turns getters and setters into properties, snake case naming has been replaced with camel case names, names with "num" in them have been replaced with "Count" (or sometimes Length). Basically it makes the interface conform to C# standards more to make it easier to pick up for C# programmers. This has only been tested by me in a limited fashion so consider this a pre-release until I get feedback from users.
Additional Functionality and Future Releases
The release also includes the FANN parallel methods and a few extra methods and constructors that make coding a bit easier. Since all FANN functionality has been implemented you can count on existing methods continuing to exist in future releases. The only changes I anticipate making will be behind the scenes, changes in the documentation, additions to the interface, bug fixes, debug releases, etc.
Examples For Getting started
I've replicated all of the C examples in the FANN project and checked them to make sure they have matching outputs. The examples also serve as a starting point to help you build your own application using FANNCSharp, as they use different parts of the NeuralNet and TrainingData classes in different ways. The README.md file has information on how to get started with a new project using FANNCSharp.
Release Binaries
The README.md has links to all the binaries you need, but you can also find them below. The difference is that everything is zipped. Any time two files are needed, they are added to a zip file together.
| x64 Builds | x86 Builds |
|---|---|
| FANNCSharp.Doublex64.zip | FANNCSharp.Doublex86.zip |
| FANNCSharp.Fixedx64.zip | FANNCSharp.Fixedx86.zip |
| FANNCSharp.Floatx64.zip | FANNCSharp.Floatx86.zip |
| FANNCSharpx64.zip | FANNCSharpx86.zip |
FANNCSharp.Doublex64.zip contains the fanndouble.dll and FANNCSharp.Double.dll for using FANN with doubles compiled for x64 platforms. FANNCSharp.Doublex86.zip is the same, but compiled for x86 platforms. FANNCSharp.Fixedx64.zip, FANNCSharp.Fixedx86.zip, FANNCSharp.Floatx64.zip, FANNCSharp.Floatx86.zip are the same as their Double counterparts, only the Fixed files are for fixed point NeuralNets using ints and Float files use floats internally in the NeuralNet. FANNCSharpx64.zip and FANNCSharpx86.zip contain a dll that lets you use all 3 types of NeuralNet just by switching the namespace and data type. Use this one if you want to easily switch between the 3 different types of NeuralNet.
Initial release of FANNCSharp, the C# wrapper for the FANN library
Initial Release
This the first release of FANNCSharp. It wraps the FANN C++ classes and methods and makes them available to use in C# .NET framework 2.0 and higher. The wrapper doesn't just use the C++ class and method names, it turns getters and setters into properties, snake case naming has been replaced with camel case names, names with "num" in them have been replaced with "Count" (or sometimes Length). Basically it makes the interface conform to C# standards more to make it easier to pick up for C# programmers. This has only been tested by me in a limited fashion so consider this a pre-release until I get feedback from users.
Additional Functionality and Future Releases
The release also includes the FANN parallel methods and a few extra methods and constructors that make coding a bit easier. Since all FANN functionality has been implemented you can count on existing methods continuing to exist in future releases. The only changes I anticipate making will be behind the scenes, changes in the documentation, additions to the interface, bug fixes, debug releases, etc.
Examples For Getting started
I've replicated all of the C examples in the FANN project and checked them to make sure they have matching outputs. The examples also serve as a starting point to help you build your own application using FANNCSharp, as they use different parts of the NeuralNet and TrainingData classes in different ways. The README.md file has information on how to get started with a new project using FANNCSharp.
Release Binaries
The README.md has links to all the binaries you need, but you can also find them below. The difference is that everything is zipped. Any time two files are needed, they are added to a zip file together.
| x64 Builds | x86 Builds |
|---|---|
| FANNCSharp.Doublex64.zip | FANNCSharp.Doublex86.zip |
| FANNCSharp.Fixedx64.zip | FANNCSharp.Fixedx86.zip |
| FANNCSharp.Floatx64.zip | FANNCSharp.Floatx86.zip |
| FANNCSharpx64.zip | FANNCSharpx86.zip |
FANNCSharp.Doublex64.zip contains the fanndouble.dll and FANNCSharp.Double.dll for using FANN with doubles compiled for x64 platforms. FANNCSharp.Doublex86.zip is the same, but compiled for x86 platforms. FANNCSharp.Fixedx64.zip, FANNCSharp.Fixedx86.zip, FANNCSharp.Floatx64.zip, FANNCSharp.Floatx86.zip are the same as their Double counterparts, only the Fixed files are for fixed point NeuralNets using ints and Float files use floats internally in the NeuralNet. FANNCSharpx64.zip and FANNCSharpx86.zip contain a dll that lets you use all 3 types of NeuralNet just by switching the namespace and data type. Use this one if you want to easily switch between the 3 different types of NeuralNet.