首页 > 其他分享 >为什么机器学习习惯设置random_state = 42 ?

为什么机器学习习惯设置random_state = 42 ?

时间:2024-01-18 19:23:54浏览次数:27  
标签:random 42 state 给出 答案 终极

在学机器学习写代码时一直有个小疑问,为什么大家习惯设置random_state=42?甚至许多官方文档也是用的42这个数字。简单上网搜索之后发现原来是在致敬这本道格拉斯·亚当斯所作的幽默荒诞风的科幻小说——《银河系漫游指南》(The hitchhiker's guide to the galaxy)

花了两天时间把这本书读完了,很喜欢作者的文笔,幽默中带着讽刺,无厘头但又致力在每一个细节上给予“逻辑上的合理性”。

地球高寿?科学给出的答案是46亿年。而科幻给出的答案是1000万年。在茫茫宇宙中,一个具有超级智慧的泛维度种族厌烦了对于生命的意义的无休止争论,于是建造了宇宙一切空间和时间中第二强大的电脑“沉思(Deep Thought)”。他们向它寻求关于生命、宇宙、一切终极问题的答案。经过整整750万年的计算,“沉思”给出了答案:42。泛维度物种显然对这样一个不知所谓的答案不满意,对此“沉思”给出的回答是,他们首先要明白生命宇宙以及一切的终极问题本身的含义,才能理解这个问题的答案。“沉思”并不能胜任给出这个意义的艰巨任务,但它能够创造另一台可以计算出这个终极问题的电脑,一台具有无限和微妙的复杂性,有机生命本身也是它操作母体的一部分,泛维度物种自身也会以一种新的生命形式参与其中来操控它的程序的电脑。这台电脑被命名为......“地球”。它需要为期1000万年的时间来给出答案。然而就在这台电脑将要计算出答案前的5分钟,沃贡人宣布要在这里建一条超空间快速通道而将地球清除了。于是关于生命宇宙一切的终极问题随之湮灭,42这个数字也失去了它的意义。

书中有许多我很喜欢的讽刺意味拉满的话,简单分享几句吧:

  • 人就像无知的原始人,对银河事务的了解程度简直和一只非洲蚊子对北京城生活的了解程度差不多。
  • 抬头仰望星空就是仰望无限——距离广阔无垠,因而也就失去了意义。
  • 《银河系漫游指南》已经取代伟大的《银河系百科全书》成为所有知识和智慧的标准。这是因为,尽管显得冗长,并且包含许多虚假或者至少是不够准确的信息,但它却在两个极其重要的方面超越了那部更加陈旧和呆板的著作。第一,它稍微便宜一点儿;第二,在它的封面上以大而友善的字体写着“不要恐慌”这句话。(实际从书中种种细节就可以看出相比于百科全书,漫游指南对于许多事物的解释就是在扯淡)
  • 银河系漫游指南对地球的描述:“无害”,而星际漫游者福特正在向编辑传送一个新的解释:“基本无害”

随机数种子

最后再简单介绍一下"randm_state"这个参数吧。
在一些具有随机性的类或函数中,如果我们希望能够重复给出相同的随机结果时,就会用到random_state这个参数。换句话说,它相当于一个随机数种子(random seed)用来控制类或函数的随机模式。
例如在构建随机森里模型时,我们会用到random_state这个参数:

rf = RandomForestClassifier(n_estimators=100, random_state=42)
rf.fit(X_train, y_train)

标签:random,42,state,给出,答案,终极
From: https://www.cnblogs.com/noemie223/p/17973217

相关文章

  • [AGC044E] Random Pawn题解
    [AGC044E]RandomPawn题解题目链接AtCoder原题链接Step1.拆环原问题是在环上的问题,考虑将环拆开变成链来处理。因此,我们需要找到一个点,使得操作越过这个点一定不优。令使\(a\)的值最大的位置的下标为\(maxp\)。容易发现,如果现在正处在\(maxp\)上,那么继续操作一定不可......
  • P5642 人造感情
    P5642人造感情首先考虑如何求\(W(U)\)。对于路径\((x,y,w)\),我们将它挂在\(u=lca(x,y)\)上,记\(f_u\)表示仅考虑\(u\)子树内的链获得的最大值,\(s_u=\sum_{v\inson_u}f_v\),表示仅考虑\(u\)子树内的链,且钦定\(u\)不被占用的最大值。\(s_u\)易求,若\(u\)不被占用,\(......
  • 开发遇到的问题总结---mysql建表报SQL 错误 [1067] [42000]: Invalid default value f
    报错内容:SQL错误[1067][42000]:Invaliddefaultvaluefor'begin_time'sql语句:CREATETABLE`tb_seckill_voucher`(`voucher_id`bigint(20)UNSIGNEDNOTNULLCOMMENT'关联的优惠券的id',`stock`int(8)NOTNULLCOMMENT'库存',`creat......
  • 42 干货系列从零用Rust编写负载均衡及代理,wmproxy中配置tcp转websocket
    wmproxywmproxy已用Rust实现http/https代理,socks5代理,反向代理,静态文件服务器,四层TCP/UDP转发,七层负载均衡,内网穿透,后续将实现websocket代理等,会将实现过程分享出来,感兴趣的可以一起造个轮子项目地址国内:https://gitee.com/tickbh/wmproxygithub:https://github.com/......
  • P7424 [THUPC2017] 天天爱射击
    [THUPC2017]天天爱射击题目描述小C爱上了一款名字叫做《天天爱射击》的游戏。如图所示,这个游戏有一些平行于\(x\)轴的木板。现在有一些子弹,按顺序沿着\(y\)轴方向向这些木板射去。第\(i\)块木板被\(S_i\)个子弹贯穿以后,就会碎掉消失。一个子弹可以贯穿其弹道上的全部......
  • 洛谷 P8426 [JOI Open 2022] 放学路(School Road)
    洛谷传送门LOJ传送门考虑整个图是一个点双怎么做。显然如果有重边并且两条边边权一样就寄了。否则我们可以把它们当成一条边。考虑一个二度点\(u\)和与它相连的边\((v,u),(u,w)\)。我们可以把它缩成边\((v,w)\)。如果新边已经存在并且边权不等于这两条边边权就寄了。......
  • 洛谷题单指南-模拟和高精度-P1042 [NOIP2003 普及组] 乒乓球
    原题链接:https://www.luogu.com.cn/problem/P1042题意解读:分别针对11分制和21分制,输出每局比分。只需要判断一局的结束条件:得分高者如果达到11或者21,且比分间隔大于等于2分,则表示一局结束,可开始下一局,用模拟法即可解决。100分代码:#include<bits/stdc++.h>usingnamespaces......
  • 【Vue2+3入门到实战】(18)VUE之Vuex状态管理器概述、VueX的安装、核心概念 State状态代
    目录一、[Vuex](https://vuex.vuejs.org/zh/)概述1.是什么2.使用场景3.优势4.注意:二、需求:多组件共享数据1.创建项目2.创建三个组件,目录如下3.源代码如下三、vuex的使用-创建仓库1.安装vuex2.新建`store/index.js`专门存放vuex3.创建仓库`store/index.js`4在main.j......
  • 解决nginx http 429
    当Nginx作为反向代理服务器收到HTTP429TooManyRequests响应时,这通常意味着后端服务由于请求速率过高而拒绝了更多的请求。要解决这个问题,可以从以下几个方面入手:调整客户端请求频率:如果你是客户端应用的开发者,可以通过限制应用程序发出请求的速度来避免触发后端服务的限流策略......
  • 使用RanDom生成不重复的随机数
    首先看一下关键词的傻瓜讲解Random用法Random.Next()返回非负随机数;Random.Next(a)返回一个小于a的非负随机数Random.Next(a,b)返回一个大于a小于b的非负随机数contains用法list.Contains(a)判断列表list里是否含有a,有则返回true接下来看代码staticvoidMain(string[]args)......