- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1000个桶中找一桶毒酒详解
那天师兄去某世界500 强面试,拿回来一套题,其中有道选择题,1000
桶原料,里面混入了1 桶有毒的,用小白鼠做实验,7 天后毒性才会
发作,但是由于时间紧迫,要求7 天后必须找出有毒的一桶,问最少
需要几只小白鼠?
小师妹特好奇这题的答案,拉着我们讨论,也没得出结论,最后大家
开玩笑的说虽然不知道最少需要多少,但是最多1000 只就够了,哈
哈~
前天晚上躺床上琢磨出来了,还是蛮好玩的~
下面是我的思路,如果想自己琢磨的就不要往下看了~
|
|
|
|
|
|
|
|
|
OK,偶来说说当时思路是怎么想的:
看问题想到大概是个分类集合问题,用最小的分类找出特征锁定目
标,1000 个桶有点多,试试少点的情况找找头绪。
思路一、
1.一个桶的情况,需要1 只小白鼠
2.两个桶的情况,遍历的话需要2 只小白鼠,考虑到二桶之间非A 即
B,需要1 只
3.用这种方法,n 桶用n-1 只小白鼠就可以确定
方法可行,但肯定不是什么好方法
思路二、
不能像上面那样把每个桶作为独立的对象来考察,怎么找一种有效的
分类方法来减少需要的小白鼠呢?
最先想到的是矩阵键盘,
像这样3*3 的矩阵键盘,可以辨识9 个点,套用到小白鼠实验中,只
要4 只小白鼠可以识别9 桶原料。
把9 份原料放入九个点中,把每一行和列中三桶原料取样混合,得到
的6 份混合的样本包含了各自行和列的特征。取四只小白鼠分别测试
其中前两行前和两列的毒性,可以确认出具体哪一桶有问题。
扩大到4*4 的矩阵,用6 个小白鼠可以从16 桶中辨识出特定的一桶。
就是说总共A 个点,满足 n −1 2 A ≤n2 ,采用思路二需要2 n −1 次试
( ) ( )
验可以辨识。
这个思路没错,对吧。
提出一个设定,每一个点代表一个样本,像这样从每一行和列取样得
到的称为混合样本,样本有毒没毒的实验结果称为它的特征,从总样
本中找到了唯一特征不同的样本称为辨识。
然后我们回头看2*2 矩阵, 辨识4 个点最少需要2 个特征。
相比思路一,辨识总数相同的样本,需要的特征减少了一个,why ?
思路三、
思路一和二的区别在哪儿?
结合着图,容易想到的是维数的不同。
思路一是一维的,所有点是相互独立的分布在同一根数轴上
思路二是二维的,混合样本的特征包含数据多,彼此间不独立。
(另外,1000 个样本,思路一1000-1=999,思路二2* (32-1)=62 ,
从数量级关系上也隐隐约约的指向阶数的变化)
考查三维,立方体有23 个顶点,
取每个面上四个顶点样本做混合样本,由于每个维度上都只有两个
点,所以只要3 个特征就可以辨识。这里可以看出:
1.借助三维的模型,3 个特征可以完成23 +1共9 个样本的辨识,每一
个混合样本里包含的样本信息越多,辨识需要的混合样本特征数就越
少。
2.在这里我想到了一、3 里面的引申,同一维度下相互独立的 n 个样
本,前n-1 个特征之全体与最后一个的特征相关度是1. (概率里面一
个概念借用过来)
到这儿的时候有两个想法,其一是对立方体模型做细化,增加每个轴
上的点数,比如把每条边上三个点,立方体模型就可以包含33 计 27
个点,再扩大到1000 是 3 ,辨识需要3* (10-1)= 27 个特征值。
10
这个想法一闪就被另一个取代了:
每一个数轴上只有两点,这个模型的的好处在于同一个轴上只要确定
了一个点的特征,另一个也就确定了。
维数
*当样本总数写成(每个维度上的样本数) 的形式,辨识需要的特征数
为维数* (每个维度上的样本数-1 )。
思考的时候这些不是这样串行连贯的想到的,反倒是有点并联的感
觉,同时想到了这么几点,所以想到用2维数这样的高维模型去解决应
该是最好的,不过具体应该怎么做呢?
四、具体实现
还是看立方体模型,数轴上的点其实是整个立方体这一面在数轴上的
投影,对应小白鼠实验就是所有样本分为两类, 其中一类的混合样
本,这个样本的特征值就是实验结果,有毒的一桶在或者不在这一类
中。
210
文档评论(0)