机器学习的战略(2)--错误率

与人类相比较

机器学习的很多任务, 比如识别图像, 听语音, 都是人类非常擅长的. 所以这些任务来说人类的错误率都相当低. 当然人类也分人, 看眼底图的还是得后节大夫, 找普通人看也还是错误率很高的, 最高的准确率应该是一组后节专家讨论会诊后得到的.

阅读更多…

机器学习的战略(1)--目标的设置

调整ML模型的战略

用来描述模型结构的, 比如是y=kx+b, 还是y=ax^2+bx+c, 可能还有y=ax^3+bx^2+cx+d, 叫做"超参数" hyperparamter

调整hyperparamter是一件很麻烦的事情, 以至于很多人把这件事叫做"炼丹". 你可能需要炼上七七四十九天才知道, 哦, 原来y=kx+b这个线性模型不合适啊. 所以除了具体的调整方法(战术), 你还需要战略方案.

阅读更多…

为什么对比敏感度的视标亮度是正弦变化的?(4)

因为,正弦函数sin(x)、余弦函数cos(x),更准确的说是 $$ e^{i x}$$ ,其实就是某种Eigenfunction,甚至,是任意线性不变系统的Eigenfunction。

看这思路,人眼的光学成像近似是线性空间不变系统,如果有个函数是任意线性不变系统的Eigenfunction,那么必然也是人眼光学成像的Eigenfunction。

Otto. H. Schade在1956年把正弦视标引入眼科检查的时候,到底是怎么把这么远的两个概念结合到一起的?

为什么对比敏感度的视标亮度是正弦变化的? 因为正弦函数是线性不变系统的本征函数!

但是,为什么要用Eigenfunction,这得从对比敏感度讲起。

对比敏感度

这得从对比敏感度讲起。对比敏感度的检查方法是让患者看圆形的视标,视标中的条纹亮度按正弦变化,背景的亮度=视标的平均亮度。要求被试指出视标条纹的方向。

对比敏感度的报告是一张二维图片,也就是说有两个参数,一个是空间频率,一个是对比度。

对比敏感度测量的就是在不同空间频率下,眼睛可以看到的最低对比度是多少。

SinVibr

这张图水平方向是空间频率越来越高,垂直方向是对比度越来越低,是不是可以感觉到一个抛物线的痕迹,抛物线的上方是一片灰色,下面是有条纹的。

三角函数的表示还记得吧,如果亮度的变化可以用 I(x) =A sin(B x )+C 来表示,

对比度contrast:

sin是在-1和+1直接变化,所以最大的亮度是Imax=A+C,最小的亮度Imin=-A+C。根据对比度的定义

contrast=(Imax-Imin)/(Imax+lmin)

contrast=2A/2C=A/C

对比度

空间频率frequency

就是在单位长度内,周期重复了多少次。显然B x=2kπ 的时候会重复,把x=1代入,B=2kπ, k=B/2π,所以空间频率

frequency=B/2π

前面说到,对比敏感度测量的时候,要给定一个空间频率,然后测量人眼分辨对比度的能力。如果给好了一个空间频率,而通过眼睛的屈光间质折射以后,空间频率变化了,就不好办了。

那么就是说一个视标图像,在经过任意像差的角膜、晶状体,在视网膜上成像以后,它的空间频率应当和经过一个理想无像差的眼睛一样,而对比度会有不同。

为什么对比敏感度的视标亮度是正弦变化的?(1)

线性系统

线性,是说一个函数如果满足: f(a+b)=f(a)+f(b) f(m x)=m f(x) 那么就说这个函数是线性的,最简单的,比如f(x)=2x。 f(a+b)=2(a+b)=2a+2b=f(a)+f(b) f(m x)=2mx=m(2x)=m f(x)

我们可以把函数当作是一个变换过程,把输入变换成输出。 一个医生看一个结膜炎用3分钟,看2个结膜炎用6分钟。这个医生看病的能力是“线性”的。

阅读更多…

为什么对比敏感度的视标亮度是正弦变化的?(0)

我知道你对此有疑问很久了,查了很多很多眼科书也没有讲清楚的。因为答案根本就不在眼科书上,这大概是个定理:“当你需要深入了解时,一定是眼科书里没有的”。

我将连载几篇仔细讲解一下这个问题。以表达我对眼科先贤的崇敬。

注意,此知识不宜拿去炫耀,可以科普不宜提问,毕竟其中涉及到的东西远超眼科教材。

阅读更多…

安装anaconda记

给python安装各种包绝对是噩梦,按照各种教程安装一定会出错!出各种错,你都不知道是在哪里除了问题。 以下就是我各种出错以后大难不死、绝境逢生、柳暗花明、再接再厉、一鼓作气以后拆拆装装的过程。 由于后面的话题早期过于沉重和压抑,所以我建议大家一起先吸只猫先:

阅读更多…