支持向量机(SVM)学习笔记
支持向量机(SVM)学习笔记
SVM 简介
在机器学习中,支持向量机(SVM,又名支持向量网络)是在分类与回归分析中分析数据的监督式学习模型与相关的学习算法。给定一组训练实例,每个训练实例被标记为属于两个类别中的一个或另一个,SVM 训练算法创建一个将新的实例分配给两个类别之一的模型,使其成为非概率二元线性分类器。
简单点讲,SVM 就是一种二类分类模型,他的基本模型是的定义在特征空间上的间隔最大的线性分类器,SVM 的学习策略就是间隔最大化。
SVM 算法原理
线性可分
以下图为例,可以发现,图中的实线刚好把两种样本一分为二,此时,我们说这两类样本在其特征空间里线性可分。
严格的数学定义是
D0D_0D0 和 D1D_1D1 是 n 维欧氏空间中的两个点集,如果存在 n 维向量 w 和实数 b,使得所有属于 D0D_0D0 的点 xix_ixi 都有 wxi+b>0wx_i+b>0wxi+b>0,而对于所有属于 D1D_1D1 的点 xjx_jxj 则有 wxj+b<0wx_j+b<0wxj+b<0,则我们称 D0D_0D0 ...
量化分析因子研究
量化分析因子研究
前言
所谓的因子也就是某个衡量标准,选择不同的因子作为选股的参考,往往会得到不同的结果,本文简单介绍了一些因子以及它所表示的意义。
估值和资本结构因子
账面市值比(BM)
账面市值比 = 股东权益 / 公司市值 = 每股净资产 / 每股股价
BM 因子属于估值因子,即通过对于 BM 值的高低可以直观反映出股票估值是否符合公司价值。
结合 BM 值可以直观表达为:BM 值高于 1,说明股份对应的公司权益的价值高于股价,也就是说股票的价值被低估了
最大 1 % BM 策略为每次选取可行股票池 BM 值最大 1 % 的股票买入,每月调仓一次。而最小策略选取的 BM 指标刚好相反,最小的 1 %。最大 1 % 因子策略中包含了均值回归的逻辑,即高 BM 可能表示其被低估,在后期有上涨反弹的可能。
最小 1% 优于最大 1%,最小 5% 优于最大 5%
盈利收益率(EP)
盈利收益率 = 1 / 市盈率
市盈率 = 股价 / 每股盈利 = 公司市值 / 公司盈利
EP 因子属于估值因子
比如市盈率为 40 的股票,盈利收益率为 2.5 %,也就是买了这只股票每年能为你带来 2. ...
HED 和 RCF 图像边缘检测
HED 和 RCF 图像边缘检测
引言
虽然传统边缘检测算法在不断发展的过程中也取得了很大的进步,但仍然无法做到精细的边缘检测处理。随着近年来深度学习的快速发展,计算机视觉领域因此获益颇丰,当下最先进的计算机视觉应用几乎都离不开深度学习,深入我们生活的各个领域如目标检测、工业、农业、医疗等。由于深度学习的特性,使得它成为最适合处理计算机视觉任务的工具之一,特别是卷积神经网络(CNN),得益于它强大的自动学习能力,图像边缘检测任务得到了长足的发展,涌现出了许多优秀的方法,如 N4-field、DeepContour、HED、RCF,基于神经网络的边缘检测算法成为了研究热点之一。
本文主要介绍基于 HED 网络的图像边缘检测的基本情况,对 HED 的网络架构和损失函数进行分析讨论。此外也将对另一个基于 HED 的网络,RCF 网络进行探究,对其进步之处进行分析。
HED 图像边缘检测
Holistically-Nested Edge Detection(简称 HED)由 Xie 等人提出。作为图像边缘检测领域一种比较经典的网络,HED 网络的出现对之后出现的各种图像边缘检测算法都有着启发式 ...
思维工程学习笔记
思维工程学习笔记
前言
本文主要记录了我在学习《思维工程》(钱小一·著)这本书时的学习笔记,以及一些想法。
基于符号主义的方法,将人类的思维逻辑工程化,通过符号来描述人的认知过程,基于逻辑推理的智能模拟方法模拟人的智能行为
所有对人类智能表象的讨论,需要有机制层面的总结,所有机制层面的总结需要在工程上定义实现的模块。
思维导图
意识流结构
如果我们认同意识或感知来源于某种信息,就把这个 信息创造意识和感受的地方 叫作意识流(Conscions Flow,CF)
在工程上,我们可以这样理解意识流,如果把人类大脑中流转的信息类比为食物,那么意识流就像日本寿司餐馆中的传送带,我们可以把人工智能系统中的其他子系统想象成是食客,他们会从传送带上拿走一些信息进行加工,同时也是信息的生产者,因为它们会把加工完的信息放回来。
思维工程的起点——意识流
我们意识到的的内容,会被记忆系统存储起来,然后会在特定条件下把这个信息放回到意识流中去创造回忆体验,这样我们就能对意识流进行反思了。
对意识流的反思 是思维工程的起点
仿生 AI 的方法论:对意识流中的信息生成关系的考察,基于生成关系猜想 ...
量化分析经典策略总结
本文转载自:掘金量化
量化分析经典策略总结
菲阿里四价(期货)
原理
菲阿里四价同 R Breaker 一样,也是一种 日内 策略交易,适合短线投资者。
菲阿里四价指的是:昨日高点、昨日低点、昨天收盘、今天开盘四个价格。
菲阿里四价上下轨的计算非常简单。昨日高点为上轨,昨日低点为下轨。当价格突破上轨时,买入开仓;当价格突破下轨时,卖出开仓。
策略逻辑
第一步:获取昨日最高价、最低价、收盘价、开盘价四个数据。
第二步:计算上轨和下轨。当价格上穿上轨时,买入开仓;当价格下穿下轨时,卖出开仓。
第三步:当日平仓。
策略代码
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 ...
便利工具和网站分享
本文转载自:微信公众号『CodeSheep』
便利工具和网站分享
在线画图工具
首先就是画图工具,我想了一下,程序员经常接触的无非也就是流程图、思维导图、原型图、UML 图、网络拓扑图、组织结构图等等这些。
下面这三个在线画图网站我想应该足够了,其中那个 processon 是我用得最多的,历史文章中几乎所有相关的图形都是用它绘制,然后导出图片的。
在线画图工具 ProcessOn:https://www.processon.com/
在线画图工具 draw.io:https://app.diagrams.net/
在线思维导图工具:http://www.mindline.cn/webapp
PlantUML 在线编辑器:http://haha98k.com/
在线开发辅助工具
在做开发和写代码的过程中,经常要用到的辅助工具其实还挺多,这段时间我重点就在整理归纳这个。
以我个人的情况为例,日常开发经常会用到一些辅助工具我总结为 8 大类,包括:编解码工具、转换工具、正则工具、编译工具、网络工具、格式化工具、可视化工具、在线生成器、以及其他工具等等。
具体列表如下。
在线编解码工具 ...
Linux 速查备忘手册
本文转载自:微信公众号『CodeSheep』
Linux 速查备忘手册
关机/重启/注销
常用命令
作用
shutdown -h now
即刻关机
shutdown -h 10
10 分钟后关机
shutdown -h 11:00
11:00 关机
shutdown -h +10
预定时间关机(10 分钟后)
shutdown -c
取消指定时间关机
shutdown -r now
重启
shutdown -r 10
10 分钟之后重启
shutdown -r 11:00
定时重启
reboot
重启
init 6
重启
init 0
立刻关机
telinit 0
关机
poweroff
立刻关机
halt
关机
sync
buff 数据同步到磁盘
logout
退出登录 Shell
系统信息和性能查看
常用命令
作用
uname -a
查看内核/OS/CPU 信息
uname -r
查看内核版本
uname -m
查看处理器架构
arch
查看处理器架构
hostname
...
卷积神经网络
卷积神经网络
前言
卷积神经网络(Convolutional Neural Networks,CNN)是一种神经网络模型,是深度学习的代表算法之一。它广泛应用于计算机视觉、语音处理等领域,在图像处理,语音识别方面具有非常强大的性能。针对计算机视觉任务,卷积神经网络能够很好的从大量的数据中做到特征的提取,并且降低网络的复杂度。
概述
卷积神经网络在各个领域得到广泛的应用,但就其本质来说,卷积神经网络只是一个特征提取器,它通过强大的特征学习能力,进行不断的特征提取,通过不断地卷积、池化等操作,过滤掉无用的信息,最终将一幅图像转化为特征图,通过提取出来的特征进行图像分类,边缘检测等任务,卷积神经网络的应用,都建立在特征图之上。
术语解释
在 CNN 中,主要的参数有下面几个:
卷积核(kernel)
步长(stride)
填充(padding)
通道数(channel)
卷积核
卷积核无疑是 CNN 中最重要的一个部分,那么什么是卷积核呢?
或者说,什么是卷积?
(f⋅g)(n)=∫−∞∞f(τ)g(n−τ)dτ(f \cdot g)(n) = \int_{-\infty}^{\inft ...
背包九讲学习笔记
背包九讲学习笔记
本文内容基本涵盖了 dd_engi 的背包九讲,在此基础上加上了自己的理解和代码实现
背包九讲原版 pdf 已由作者崔添翼(dd_engi)上传至 github,你可以 点击这里 进行下载
1. 01 背包问题
题目
有 NNN 件物品和一个容量为 VVV 的背包。放入第 iii 件物品耗费的费用是 CiC_iCi ,得到的价值是 WiW_iWi 。求解将哪些物品装入背包可使价值总和最大。
基本思路
这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。
用子问题定义状态:即 F[i,v]F[i,v]F[i,v] 表示前 iii 件物品恰放入一个容量为 vvv 的背包可以获得
的最大价值。则其状态转移方程便是:
F[i,v]=max{F[i−1,v],F[i−1,v−Ci]+Wi}F[i, v] = max\{F[i - 1, v], F[i - 1, v - C_i] + W_i\}
F[i,v]=max{F[i−1,v],F[i−1,v−Ci]+Wi}
这个方程非常重要,基本上所有跟背包相关的问题的方程都是由它衍生出来的。所以有必要将它详细解释 ...
常用算法模板——数学知识
本文作者:yxc
来源: AcWing
原文地址:https://www.acwing.com/blog/content/406/
常用算法模板——数学知识
试除法判定质数
123456bool is_prime(int x) { if (x < 2) return false; for (int i = 2; i <= x / i; i++) if (x % i == 0) return false; return true;}
试除法分解质因数
12345678910void divide(int x) { for (int i = 2; i <= x / i; i++) if (x % i == 0) { int s = 0; while (x % i == 0) x /= i, s++; cout << i << ' ' << s << ...