sigma

HDU 4705 Y (树形DP)

一笑奈何 提交于 2020-02-16 12:22:56
题意 给定一棵树,计算数集{A,B,C}的个数,其中A,B,C是树上的节点,且不存在一条路径覆盖A,B,C。 思路 朴素的想法是枚举“Y”的中点,然后枚举三条树枝i,j,k,答案就是sigma(Si*Sj*Sk) = [( sigma(Si) )^3 - 3*sigma(Si)*sigma(Si^2) + 2*sigma(Si^3)] / 6,其中Si表示i子树上节点个数。但是这样太麻烦了。 我们考虑用 补集 来做。计算A,B,C被一条路径覆盖的个数。那么这样假设A<B<C,我们就可以枚举B,然后枚举两个树枝i,j,答案就是sigma(Si*Sj) =[ ( sigma(Si) )^2 - sigma ( Si^2 ) ] / 2,时间复杂度O(n)。 代码 [cpp] #include <iostream> #include <cstdio> #include <cmath> #include <algorithm> #include <string> #include <cstring> #include <vector> #include <set> #include <stack> #include <queue> #define MID(x,y) ((x+y)/2) #define MEM(a,b) memset(a,b,sizeof(a)) #define REP(i,

HDU 4705 Y (树形DP)

早过忘川 提交于 2020-02-16 12:22:28
题意 给定一棵树,计算数集{A,B,C}的个数,其中A,B,C是树上的节点,且不存在一条路径覆盖A,B,C。 思路 朴素的想法是枚举“Y”的中点,然后枚举三条树枝i,j,k,答案就是sigma(Si*Sj*Sk) = [( sigma(Si) )^3 - 3*sigma(Si)*sigma(Si^2) + 2*sigma(Si^3)] / 6,其中Si表示i子树上节点个数。但是这样太麻烦了。 我们考虑用 补集 来做。计算A,B,C被一条路径覆盖的个数。那么这样假设A<B<C,我们就可以枚举B,然后枚举两个树枝i,j,答案就是sigma(Si*Sj) =[ ( sigma(Si) )^2 - sigma ( Si^2 ) ] / 2,时间复杂度O(n)。 代码 [cpp] #include <iostream> #include <cstdio> #include <cmath> #include <algorithm> #include <string> #include <cstring> #include <vector> #include <set> #include <stack> #include <queue> #define MID(x,y) ((x+y)/2) #define MEM(a,b) memset(a,b,sizeof(a)) #define REP(i,

夜空中最亮的星

人走茶凉 提交于 2020-02-15 04:46:46
目录 夜空中最亮的星 1- Dirichlet 积分 3-特征函数 4-特征函数性质 5-中心极限定理 夜空中最亮的星 1- Dirichlet 积分 设 \(I(a)=\frac1\pi\int_0^{+\infty}\frac{\sin{at}}{t}dt\) ,则有: \[ I(a)= \begin{cases} \frac12&\text{a>0}\\ 0&a=0\\ -\frac12&a<0 \end{cases} \] 为了证明 \(Dirichlet\ 积分\) ,我们先证明 \(\int_0^{+\infty}\frac{\sin{x}}{x}dx=\frac\pi2\) \[ \begin{align} 设\ \frac1x=&\int_0^{+\infty}e^{-xs}ds\\ \int_0^T\frac{\sin{x}}{x}dx=&\int_0^{T}(\sin{x}{\int_0^{+\infty}e^{-xs}ds)}dx\\ =&\int_0^{+\infty}({\int_0^{T}\sin{x}\ e^{-xs}dx)}ds\\ =&\int_0^{+\infty}[\frac{1}{1+s^2}-\frac{s\cdot\sin T+T\cdot\cos{T}}{s^2+T^2}e^{-s}]ds\\ =&\frac\pi2-\int_0^{+

Coursera 机器学习 第8章(下) Dimensionality Reduction 学习笔记

一笑奈何 提交于 2020-02-13 06:08:33
8 Dimensionality Reduction 8.3 Motivation 8.3.1 Motivation I: Data Compression 第二种无监督问题:维数约简(Dimensionality Reduction)。 通过维数约简可以实现数据压缩(Data Compression),数据压缩可以减少计算机内存使用,加快算法运算速度。 什么是维数约简:降维。若数据库X是属于n维空间的,通过特征提取或者特征选择的方法,将原空间的维数降至m维,要求n远大于m,满足:m维空间的特性能反映原空间数据的特征,这个过程称之为维数约简。 做道题: C 8.3.2 Motivation II: Visualization 数据降维可以可视化数据,使得数据便于观察。 做道题: BD 8.4 Principal Component Analysis 8.4.1 Principal Component Analysis Problem Formulation PCA的正式描述:将n维数据投影至由k个正交向量组成的线性空间(k维)并要求最小化投影误差(投影前后的点的距离)(Projection Error)的平方的一种无监督学习算法。 进行PCA之前,先进行均值归一化和特征规范化,使得数据在可比较的范围内。 PCA和线性回归之间的关系。PCA不是线性回归。左图是线性回归,右图是PCA

回声状态网络(Echo State Network)

青春壹個敷衍的年華 提交于 2020-02-12 02:15:35
文章目录 洛伦兹系统 回声状态网络 动力学模型 python 实现 所需的包 配置文件 Reservoir 类 运行结果 默认的测试样例 lorentz 系统 洛伦兹系统 数据生成见博文: 混沌系统数值模拟 回声状态网络 动力学模型 状态更新函数 输出函数 结构下图所示,虚线连接不是必要的 python 实现 所需的包 import networkx as nx import json from decimal import Decimal from collections import OrderedDict 配置文件 # if config file not exists, use this default config default_config = """{ "input": { "nodes": 2, "functions": [ "lambda x: np.cos(32 * np.pi * x)", "lambda x: np.sin(32 * np.pi * x) + np.cos(128 * np.pi * x)" ], "length": 5000 }, "reservoir": { "start_node": 202, "end_node": 203, "step": 1, "degree_function": "lambda x: np.sqrt(x)",

机器学习(Machine Learning)- 吴恩达(Andrew Ng) 学习笔记(十二)

吃可爱长大的小学妹 提交于 2020-02-11 00:27:42
Support Vector Machines 支持向量机 支持向量机是监督学习算法的一种,在学习复杂的非线性方程时提供了一种更为清晰、更为强大的学习方式。 Optimization objective Alternative view of logistic regression 先介绍一下逻辑回归 \(h_\theta(x) = \frac{1}{1 + e^{-\theta^Tx}}\) If \(y = 1\) , we want \(h_\theta(x) \approx 1\) , \(\theta^Tx >> 0\) If \(y = 0\) , we want \(h_\theta(x) \approx 0\) , \(\theta^Tx << 0\) Cost of example: \(-(y\ logh_\theta(x) + (1-y)log(1-h_\theta(x)))\) = \(-ylog\frac{1}{1+e^{-\theta^Tx}} - (1-y)log(1-\frac{1}{1+e^{-\theta^Tx}}))\) 每个样本都对总的代价函数有影响,下图为具体关系。 扩展: 从代价函数开始修改,实现支持向量机。 如图所示,在左边的图中取 \(z = 1\) 点,画出要用的代价函数(看起来和逻辑回归的曲线有点相似,但它的是直线)

线性回归

一世执手 提交于 2020-02-10 10:57:09
美国房价问题 Alex经过一年的努力,终于拿到了美国波士顿麻省理工学院的研究生录取通知书,在远离家乡的地方上学,Alex想在波士顿买一套房子,他手头有一些积蓄,在网上找了几套自己满意的房子,但是又不敢相信网上的价格,人生地不熟的,Alex怕被宰,就从自己做数据分析的朋友Bachelor手里要到了过去几年一些有关波士顿房价的资料。 import numpy as np import pandas as pd import seaborn as sns import matplotlib . pyplot as plt house_prices = pd . read_csv ( "train.csv" ) Bachelor给的数据非常非常多,包含各个方面。 为了方便分析呢,先提取其中三个特征作为分析素材,分别是LotArea表示房屋面积,TotalBsmtSF表示地下室的总面积,SalePrice表示的就是房价了。 house_prices [ [ 'LotArea' , 'TotalBsmtSF' , 'SalePrice' ] ] 理工科出生的Alex想起了曾经学过的知识,想计算一下自己喜欢的那几套房子的大概房价是多少,到买房的时候心里好有点数。 于是他把数据重新处理了一下。 sample_test_data = house_prices [ [ 'LotArea' ,

Chaos World

倾然丶 夕夏残阳落幕 提交于 2020-02-09 22:55:12
2018年1月31日,月全食,同时位于月球椭圆轨道近地点,152年一遇的超级蓝血月。椭圆曲线和和天文计算,日月星辰轨道与周期,数学的魅力就隐藏在其中。 一个三元函数在一个曲面上的积分,称之为曲面积分。曲面的质量、重心、转动惯量等计算问题导致了第一型曲面积分等概念。 第一型曲面积分 定义 设$Sigma$为分片光滑曲面,$f(x,y,z)$为定义在$Sigma$上的有界函数,$f(x,y,z)$在$Sigma$上对面积的积分为 其中$Delta S_i$为第$i$个小曲面块的面积。如果$f(x,y,z)$在$Sigma$上连续,则$underset{Sigma}iint f(x,y,z)mathrm{d}S$存在。 性质 与曲面$Sigma$的侧的选取无关,即$underset{Sigma}iint f(x,y,z)mathrm{d}S=underset{-Sigma}iint f(x,y,z)mathrm{d}S$,其中$-Sigma$表示曲面$Sigma$的另外一侧。 计算 方法1 直接法 设积分曲面$Sigma$由方程$z=z(x,y)$给出,$Sigma$在$xOy$面上的投影域为$D$,函数$z=z(x,y)$在$D$上有连续的一阶偏导数,$f(x,y,z)$在$Sigma$上连续,则 方法2 利用奇偶性和对称性 利用积分曲面的对称型和被积函数的奇偶性化简

第四章 生成学习算法

浪尽此生 提交于 2020-02-06 12:04:56
到目前为止,我们讨论的学习算法都是以$p(y \mid x;\theta)$为模型 ,即给定x以后y的 条件分布。接下来讨论一个不同类型的学习算法。 举个例子:有一个分类问题,基于动物得而一些特征分辨它是大象(y=1)还是狗(y=0)。对于逻辑回归算法或感知算法会找出一条直线作为判别边界。这里提出一个新的方法:分别建立一个大象特征的模型和狗特征的模型、对于一个新的动物,使之与大象模型和狗的模型分别匹配,以此判断该新的动物与哪个更匹配。 判别学习算法 直接学习$p(y \mid x)$或学习输入空间X到标签{0,1}的映射 生成学习算法 以$p(x \mid y)$为模型 比如,y表示样本是大象(1)还是狗(0),则$p(x \mid y=0)$表示狗特征的分布模型。 建立$p(y)$(类的先验)和$p(x \mid y)$,使用贝叶斯准则推导出给定x以后y的分布: $p(y \mid x) = \frac {p(x \mid y)p(y)}{p(x)}$ 这里的分母可由$p(x)=p(x \mid y=1)p(y=1)+p(x \mid y=0)p(y=0)$得到。然后以我们学习得到的$p(x \mid y)$和$p(y)$来表示 实际上,计算$p(y \mid x)$时,我们并不需要计算分母,因为: $arg~~\underset{y}{max} p(y \mid x)= arg

生成学习算法(Generative Learning algorithms)

∥☆過路亽.° 提交于 2020-02-06 11:43:25
一、引言 前面我们谈论到的算法都是在给定\(x\)的情况下直接对\(p(y|x;\theta)\)进行建模。例如,逻辑回归利用\(h_\theta(x)=g(\theta^T x)\)对\(p(y|x;\theta)\)建模,这类算法称作判别学习算法。 考虑这样一个分类问题,我们根据一些特征来区别动物是大象\((y=1)\)还是狗\((y=0)\)。给定了这样一个训练集,逻辑回归或感知算法要做的就是去找到一个决策边界,将大象和狗的样本分开来。可以换个思路,首先根据大象的特征来学习出一个大象的模型,然后根据狗的特征学习出狗的模型,对于一个新的样本,提取它的特征先放到大象的模型中求得是大象的概率,然后放到狗的模型中求得是狗的概率,最后我们比较两个概率哪个大,即确定这个动物是哪种类型。也即求\(p(y|x)=\frac{p(x|y)p(y)}{p(x)}\),\(y\)为输出结果,\(x\)为特征。 现在我们来定义这两种解决问题的方法: 判别学习算法(discriminative learning algorithm): 直接学习\(p(y|x)\)或者是从输入直接映射到输出的方法 生成学习算法(generative learning algorithm): 对\(p(x|y)\)(也包括\(p(y))\)进行建模。 \(y\)为输出变量,值为0或1,如果是大象取1,狗则取0 \(p(x