基于C#的机器学习--机器学习的基本知识
机器学习的基本知识
,…用n个观测值测量。但我们不再对Y的预测感兴趣,因为我们不再有Y了,我们唯一感兴趣的是在已有的特征上发现数据模式:

在前面的图中,我们可以看到这样的数据本身更适合于非线性方法,在这种方法中,数据似乎是按重要性分组的。它是非线性的,因为我们无法得到一条直线来准确地分离和分类数据。无监督学习允许我们在几乎不知道结果会是什么或应该是什么的情况下解决问题。结构来自于数据本身,而不是应用于输出标签的监督规则。这种结构通常由数据的聚类关系导出。
例如,假设我们有许多个基因来自我们的基因组数据科学实验。我们希望将这些数据分组为类似的片段,如头发颜色、寿命、体重等等。
第二个例子是众所周知的酒会效应,它基本上指的是大脑能够将注意力集中到一件事上,并过滤掉周围的噪音。
这两个示例都可以使用集群来实现它们的目标。
强化学习
强化学习是一种机器被训练为一个特定的结果,唯一的目的是最大化的效率和/或性能。该算法因做出正确的决策而得到奖励,因做出错误的决策而受到惩罚。持续的训练是为了不断提高绩效。持续的学习过程意味着更少的人为干预。马尔可夫模型是强化学习的一个例子,自动驾驶汽车就是这样一个应用的很好的例子。它不断地与环境进行交互,监视障碍物、速度限制、距离、行人等等,以便(希望如此)做出正确的决策。
我们与强化学习最大的不同是我们没有处理正确的输入和输出数据。这里的重点是性能,这意味着需要在看不见的数据和算法已经学过的东西之间找到一种平衡。
算法将一个动作应用到它的环境中,根据它所做的、重复的等行为接受奖励或惩罚,如下图所示。你可以想象一下每秒有多少次这种情况发生在刚刚在酒店接你的自动驾驶出租车上。

构建、购买或开源
接下来,让我们问自己一个非常重要的问题。我们是需要购买、构建还是使用开源?
接触开源世界,这是我的建议,当然也是我写这本书的原因之一。我意识到许多开发人员都有“它不是在这里构建的”综合症,但是在走上这条道路之前,我们应该对自己诚实。我们真的认为我们有能力做得更好、更快、在我们的时间限制内进行测试吗?我们应该先试着看看已经有什么可以使用。有很多很棒的开源工具包可供我们使用,这些工具包的开发人员已经投入了大量的时间和精力来开发和测试它们。显然,开源并不是每个人、每次都可以使用的解决方案,但是即使您不能在应用程序中使用它,也可以通过使用和试验它们获得大量的知识。
购买通常不是一个最佳选择。如果你足够幸运地找到要买的东西,但你可能不会得到批准,因为它将花费一大笔钱!如果你需要修改产品来做你需要的事情,会发生什么?祝您好运,能够访问源代码或者让支持团队为您更改他们的优先级。这中情况几乎不会发生,至少不会像我们需要的那么快。
至于自己构建,嘿,我们是开发者,这是我们都想做的,对吧?但是在您启动Visual Studio之前,请仔细地考虑一下您将要进入的环境。
所以开源应该永远是第一选择。您可以将其引入内部(假设许可允许您这样做),在需要时根据您的标准对其进行调整(代码联系、更多的单元测试、更好的文档,等等)。
总结
在这一章中,我们讨论了机器学习的许多方面,以及实现您的代码的不同策略,如构建、购买或开源,并简单介绍了一些重要的定义。我希望这能让你们为接下来的章节做好准备。
转载请注明出处:https://www.cnblogs.com/wangzhenyao1994/p/10223720.html
文章发表的另一个地址:https://blog.csdn.net/wyz19940328/article/details/85835239
基于C#的机器学习--机器学习的基本知识的更多相关文章
- 机器学习算法的基本知识(使用Python和R代码)
本篇文章是原文的译文,然后自己对其中做了一些修改和添加内容(随机森林和降维算法).文章简洁地介绍了机器学习的主要算法和一些伪代码,对于初学者有很大帮助,是一篇不错的总结文章,后期可以通过文中提到的算法 ...
- H2O是开源基于大数据的机器学习库包
H2O是开源基于大数据的机器学习库包 H2O能够让Hadoop做数学,H2O是基于大数据的 统计分析 机器学习和数学库包,让用户基于核心的数学积木搭建应用块代码,采取类似R语言 Excel或JSON等 ...
- 基于Docker的TensorFlow机器学习框架搭建和实例源码解读
概述:基于Docker的TensorFlow机器学习框架搭建和实例源码解读,TensorFlow作为最火热的机器学习框架之一,Docker是的容器,可以很好的结合起来,为机器学习或者科研人员提供便捷的 ...
- 初识TPOT:一个基于Python的自动化机器学习开发工具
1. TPOT介绍 一般来讲,创建一个机器学习模型需要经历以下几步: 数据预处理 特征工程 模型选择 超参数调整 模型保存 本文介绍一个基于遗传算法的快速模型选择及调参的方法,TPOT:一种基于Pyt ...
- 基于C#的机器学习--机器学习建模的基础
构建ML模型的步骤 现在我们已经看了解到了一些ML应用程序的例子,问题是,我们如何构建这样的ML应用程序和系统? 下图总结了我们使用ML开发应用程序的方法,我们将在下面更详细地讨论这个问题: 如上图所 ...
- 【Numpy】python机器学习包Numpy基础知识学习
一.安装:在之前的博客中已经写过:http://www.cnblogs.com/puyangsky/p/4763234.html 二.python数组切片知识: python中序列类有list.str ...
- 基于ray的分布式机器学习(二)
基本思路:基于parameter server + multiple workers模式.同步方式:parameter server负责网络参数的统一管理,每次迭代均将参数发送给每一个worker,多 ...
- DNS通道检测 国外学术界研究情况——研究方法:基于流量,使用机器学习分类算法居多,也有使用聚类算法的;此外使用域名zif low也有
http://www.ijrter.com/papers/volume-2/issue-4/dns-tunneling-detection.pdf <DNS Tunneling Detectio ...
- 基于steam的游戏销量预测 — PART 3 — 基于BP神经网络的机器学习与预测
语言:c++ 环境:windows 训练内容:根据从steam中爬取的数据经过文本分析制作的向量以及标签 使用相关:无 解释: 就是一个BP神经网络,借鉴参考了一些博客的解释和代码,具体哪些忘了,给出 ...
随机推荐
- ubuntu下面显示隐藏文件快捷键
ubuntu下面显示隐藏文件快捷键 ctrl + H这个快捷键可以在ubuntu系统下显示隐藏的文件夹和文件
- [iOS]UIDynamicAnimator动画
创建动画 UIDynamicAnimator *animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view]; 协议代理 ...
- Ubuntu 16 Java Develop环境快速搭建
安装JDK 1. 更新apt-get: $ sudo apt-get update 2. 安装jdk: $ sudo apt-get install openjdk-8-jdk 部分eclipse现只 ...
- 安装Maven后使用cmd 执行 mvn -version命令 报错JAVA_HOME should point to a JDK not a JRE
1. 可以执行maven指令,说明maven的配置没错 2. 打开cmd,在cmd输入: set JAVA_HOME=D:\Program Files\Java\jdk1.8.0_91 3. 再测试是 ...
- 如何使用yii2的缓存依赖特性
目录 如何使用yii2的缓存依赖特性 概述 页面缓存 缓存依赖 链式依赖 总结 如何使用yii2的缓存依赖特性 概述 缓存是Yii2的强大特性之一,合理使用缓存技术可以有效地减小服务器的访问压力.Yi ...
- 《PHP基础全面总结》系列分享专栏
<PHP基础全面总结>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/201777.html 文章 PHP基础之运算符的使用方法 P ...
- 《C语言程序设计基础1》第二学期第一周学习总结
**<C语言程序设计基础1>第二学期第一周学习总结 一. 本周学习内容总结 一维数组,了解了一维数组的定义(定义一个数组,需要明确数组变量名,数组元素的类型和数组大小,即数组中元素的数量) ...
- 准确率(accuracy),精确率(Precision),召回率(Recall)和综合评价指标(F1-Measure )----转
原文:http://blog.csdn.net/t710smgtwoshima/article/details/8215037 Recall(召回率);Precision(准确率);F1-Meat ...
- ubuntu下刻录优盘的命令
fdisk -l 找到优盘为/dev/sdb4 sudo dd if=/home/alex/Desktop/kali-linux-2016.1-amd64.iso of=/dev/sdb4
- Java技术——Interface与abstract类的区别
)抽象类是对类抽象,是面向整个类的自下而上的设计理念,一般是先有各种子类,再有把这些有关系的子类加以抽象为父类的需求.而接口是对行为的抽象,是面向行为的自上而下的设计理念,接口根本就不需要知道子类的存 ...