design matrix(设计矩阵) 是统计学上的概念,一般标记为 X,是由一组对象的解释变量(explanatory variables)构成的矩阵。

1. explanatory variables

刻画的是属性列(feature column),也即一个样本、一个对象都可视为,或者抽象为,符号化为,一个多维向量,向量的每一个 component 表示一定的特征,比如身高,体重等信息,起到解释的作用和目的,也即为 explanatory variable。

命名及翻译有赖于具体的语言环境,一个独立变量(independent variable,这说的是性质上,不同的 independent variables 之间没有依赖、约束和影响关系,彼此独立,互不影响)有时也称为(这说的又是物理意义):

  • predictor variable
  • regressor
  • controlled variable
  • manipulated variable
  • explanatory variable
  • feature/input variable (机器学习与模式识别中又被称为属性)

与 independent variable 相对的概念,自然是 dependent variable,同样在不同的语言环境下,它被称为:

  • “response variable”,
  • “regressand”,
  • “predicted variable”,
  • “explained variable”, (被解释,由 explanatory variables 所解释)
  • “outcome variable”, “output variable” /”label”

对于函数 y=x2−x−2 从变量是否独立的角度可以理解为:

  • x 是 independent variable,是自变量,也即是可以自由变化的,取遍全体实数轴;
  • y 是 dependent variable,是因变量,随着自变量变化而变化,不一定能取遍全体实数轴;

2. Design matrix

统计学上,由 X 所表示,每一行表示一个单个的对象,对象的各个列对应不同的属性变量,记录着属性的值。

design matrix 常用于统计模型中,比如一般的线性模型,Y=XB+U(Y 是观测值,X 是design matrix,B 是参数矩阵,U 是误差和错误)。

design matrix X 其第 i 行的第 j 列 Xij 表示的是第 i 个对象的第 j 个属性变量的值,

一个回归模型(regression model)其实是对 explanatory variables 的线性组合,因此可以通过矩阵乘法来表示:

y=Xβ

其中:

  • X 是 design matrix
  • β 是模型的系数(参数),每一个系数对应一个变量;
  • y 样本的预测输出构成的向量;

3. example

  • 单线性回归(single linear regression),比如共 7 个样本点,则模型可表示为:

    yi=β0+β1xi+ϵi
    • β0 表示截距;
    • β1 回归直线的斜率;
    ⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢y1y2y3y4y5y6y7⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢1111111x1x2x3x4x5x6x7⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥[β0β1]+⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢ϵ1ϵ2ϵ3ϵ4ϵ5ϵ6ϵ7⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

explanatory variable(independent vs dependent)、design matrix的更多相关文章

  1. 重构手法之Introduce Explaining Variable(引用解释性变量)

    返回总目录 6.5Introduce Explaining Variable(引用解释性变量) 概要 你有一个复杂的表达式. 将该复杂表达式(或其中一部分)的结果放进一个临时变量,以此变量名称来解释表 ...

  2. 重构手法之Split Temporary Variable(分解临时变量)

    返回总目录 本小节目录 Split Temporary Variable(分解临时变量) Remove Assignments to Parameters(移除对参数的赋值) 6.6Split Tem ...

  3. 重构改善既有代码设计--重构手法05:Introduce Explaining Variable (引入解释性变量)

      发现:你有一个复杂的表达式. 解决:将该复杂的表达式(或其中的部分)的结果放进一个临时变量,并以此变量名称来解释表达式用途. //重构前 if((platform.toUpperCase().in ...

  4. 什么是遗传方差(Genetic variance)、加性遗传方差(Additive genetic variance)、显性遗传方差(Dominance genetic variance)、上位遗传方差(Epistatic genetic variance)

    遗传方差:遗传方差又称表型方差(phenotypic variance),通常结合基因型方差(genotype variance)和环境方差(environmental variance).遗传方差主 ...

  5. SQL SERVER统计服务器所有的数据库(数据库文件)、表(表行数)、字段(各字段)等详细信息

    原文:SQL SERVER统计服务器所有的数据库(数据库文件).表(表行数).字段(各字段)等详细信息 USE STAT GO SET NOCOUNT ON IF EXISTS(SELECT 1 FR ...

  6. C#GDI+ 绘制线段(实线或虚线)、矩形、字符串、圆、椭圆

    C#GDI+ 绘制线段(实线或虚线).矩形.字符串.圆.椭圆 绘制基本线条和图形 比较简单,直接看代码. Graphics graphics = e.Graphics; //绘制实线 )) { pen ...

  7. ElementUI(vue UI库)、iView(vue UI库)、ant design(react UI库)中组件的区别

    ElementUI(vue UI库).iView(vue UI库).ant design(react UI库)中组件的区别: 事项 ElementUI iView ant design 全局加载进度条 ...

  8. 五、jdk工具之jmap(java memory map)、 mat之四--结合mat对内存泄露的分析、jhat之二--结合jmap生成的dump结果在浏览器上展示

    目录 一.jdk工具之jps(JVM Process Status Tools)命令使用 二.jdk命令之javah命令(C Header and Stub File Generator) 三.jdk ...

  9. 【python】-- Django路由系统(网址关系映射)、视图、模板

    Django路由系统(网址关系映射).视图.模板 一.路由系统(网址关系映射) 1.单一路由对应: 一个url对应一个视图函数(类) urls.py: url(r'^test', views.test ...

随机推荐

  1. ArcGIS Spatial Query

    Creates a spatial query which performs a spatial search for features in the supplied feature class a ...

  2. linux跟踪线程的方法:LWP和strace命令

    摘要:在使用多线程程序时,有时会遇到程序功能异常的情况,而这种异常情况并不是每次都发生,很难模拟出来.这时就需要运用在程序运行时跟踪线程的手段,而linux系统的LWP和strace命令正是这种技术手 ...

  3. dmalloc arm-linux平台使用

    话说“工欲善其事,必先得其器”,用C语言写程序,最怕遇到个什么内存泄漏,内存越界访问了,心里那个急啊... 如果在i368-linlux上,valgrind工具是首选,但在arm-linux平台上,如 ...

  4. (三)Unity5.0新特性------动画的StateMachineBehaviours

    出处:http://blog.csdn.net/u010019717 author:孙广东      时间:2015.3.31 (State machine behaviours)状态机的行为在Ani ...

  5. [tmux] Handle history in tmux sessions

    In this lesson, we'll look at how to manage your history between tmux sessions, and ensure that your ...

  6. iframe父页面与子页面的交互

    iframe子页面调用父页面的变量.js方法.元素(非跨域): window.parent.varName; //获取父页面js全局变量 window.parent.fnName; //获取父页面js ...

  7. CSDN站点CODE配置记录

    为了出门写代码方便.决定还是开个项目.因此才有了这次经历. 原来有在windows下用过git,只是使用方法跟svn一样.尽管曾经也在souceforge或者git上看一些代码,可是对操作一直没有了解 ...

  8. [Django] Start a new django project

    Assume we already have a env created call 'demo-env': cd demo-env . bin/activate pip install django ...

  9. Oracle数据库零散知识06 -- Package的定义与简单触发器

    CREATE OR REPLACE PACKAGE pak_02 IS--包头 --这里可定义公共参数 FUNCTION fun_01 RETURN NUMBER; PROCEDURE pro_01 ...

  10. Tomcat下部署SpringBoot

    SpringBoot默认支持Tomcat7及以上版本(SpringBoot默认支持servlet3.1版本及以上,Tomcat6只支持到servlet2.5) 测试环境:jdk1.8 + tomcat ...