0.序

园子里介绍Accord.NET的文章不少,但是具体讲如何使用的反而不多,可能跟.NET在机器学习领域应用不多有关。诚然,如果做项目的话,可能用Python更好一些,但是如果把了解Accord.NET作为进入机器学习领域的一个接入点,对于.NET开发者来说可能更合适,并且Accord.NET还在不断的更新,源代码的注释和测试都很详细,配合自身的Samples,做一些简单的应用开发,还是很快的。所以权当作学习笔记,来入门使用Accord.NET。

1.本系列使用的资料

Accord.NET官网:http://accord-framework.net/index.html

Accord.NET的Github页面:https://github.com/accord-net/framework

入门用到的资料全部来源以上两个链接,源码可以在Github上下载,介绍Accord.NET的可以在官网上看看,总之Accord.NET是持续更新,有真实案例应用的开源项目。

2.临门一脚

安装Accord.NET,可以通过NuGet添加。但是这里,我们把源码的有关工程在本地编译成功,这样也更方便学习。本地编译的话,需要根据使用的VS版本,下载不同的Accord版本,现在最新的发行版是3.6.0,但是3.4.0及以后的版本更新到.NET4.6和VS2015了。这个在Github介绍页面上有,其实如果用的是比较新的VS(2017/2015),可以下载最新的版本,如果是VS2013,就下载3.3.0版本。

在机器学习方面,Accord.NET都遵循同一个模式:

--选择合适的学习算法,学习算法都有Learn(x,y)/Learn(x)函数;

--用Learn函数和训练数据创建模型;

--用模型的Transform/Decide/Scores/Probabilities/LogLikelihoods方法预测。

这个套路在学习源码和例程时会经常看到。我还是先打开Accord的源码吧。

所有的发行版的Github链接:https://github.com/accord-net/framework/releases

我下载了Accord.NET-3.3.0-archive.rar,下载后直接解压即可。

解压后,Sources是源代码,Samples就是自带的示例程序,大多数都是WinForm。打开Sources文件夹中的Accord.NET.sln和Samples文件夹中的Samples.sln,就打开了源代码工程和示例工程,至此也算进入了Accord.NET的大门了。

Accord.NET入门的更多相关文章

  1. AI Accord.NET入门

    Accord.NET官网:http://accord-framework.net/index.html Accord.NET的Github页面:https://github.com/accord-ne ...

  2. .NET平台开源项目速览(13)机器学习组件Accord.NET框架功能介绍

    Accord.NET Framework是在AForge.NET项目的基础上封装和进一步开发而来.因为AForge.NET更注重与一些底层和广度,而Accord.NET Framework更注重与机器 ...

  3. Accord.NET Framework 介绍

    阅读目录 1.基本功能与介绍 Accord.NET Framework是在AForge.NET项目的基础上封装和进一步开发而来.因为AForge.NET更注重与一些底层和广度,而Accord.NET  ...

  4. Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求

    上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...

  5. ABP入门系列(1)——学习Abp框架之实操演练

    作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...

  6. Oracle分析函数入门

    一.Oracle分析函数入门 分析函数是什么?分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计 ...

  7. Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数

    上一篇:Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数 之前介绍了简单的路由以及传参,这篇文章我们将要学习复杂一些的路由以及传递其他附加参数.一个好的路由系统可以使我们 ...

  8. Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数

    上一篇:Angular2入门系列教程-服务 上一篇文章我们将Angular2的数据服务分离出来,学习了Angular2的依赖注入,这篇文章我们将要学习Angualr2的路由 为了编写样式方便,我们这篇 ...

  9. Angular2入门系列教程4-服务

    上一篇文章 Angular2入门系列教程-多个组件,主从关系 在编程中,我们通常会将数据提供单独分离出来,以免在编写程序的过程中反复复制粘贴数据请求的代码 Angular2中提供了依赖注入的概念,使得 ...

随机推荐

  1. HDU 4771 (DFS+BFS)

    Problem Description Harry Potter has some precious. For example, his invisible robe, his wand and hi ...

  2. HDU3265 线段树(扫描线)

    Posters Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  3. Bigbluebutton中文乱码问题

    Bigbluebutton中文乱码问题 Libreoffice安装中文 桌面版:在新立得软件包管理器中搜索下面两个文件,之后安装: libreoffice-l10n-zh-cn 和 libreoffi ...

  4. notify()与notifyAll()

    notify() :随机唤醒一个线程. notifyAll():唤醒等待某个锁的所有任务. 在技术上,可能会有多个任务在所创建的任务上处于wait()状态,调用notifyAll()比只调用notif ...

  5. [技巧篇]03.关于MyBatis的简单批量处理

  6. Java 中 给静态方法 添加泛型 (static <T>)

    今天在用到static方法的时候.想要用泛型.结果不能通过编译. 上网查了一下.其具体写法如下:

  7. 使用TSQL语句操作MySQL数据库

    使用TSQL语句创建数据库 以前用的是鼠标在界面上手动创建,这样创建会比较麻烦,而且还会经常出问题.在其它电脑上要用的话还需要重复操作.所以要使用程序代码操作,能通过代码的就不用手动操作. 在数据库界 ...

  8. MSSQL备份脚本

    ) ) ) ),),':',''),' ',''),'-',''),'.','') set @name=N'DEMO'+@temp+'-完整 数据库 备份' set @disk=N'F:\Backup ...

  9. Django-【views】decorators.csrf

      views下导入方法 from django.views.decorators.csrf import csrf_exempt,csrf_protect csrf_exempt是全局需要,唯独这个 ...

  10. C++学习之路(七):以const,enum,inline替换#define

    这篇博文主要是编程中的一些问题和技巧.如题目所示,这些关键字的作用不再进行描述.直接描述功能和实例代码. 首先,在头文件中对类进行定义,是不会为类分配内存空间的,在这一点上类定义可以和普通变量类型的声 ...