我想理解以下代码行在函数中定义的含义

我是一个Python和机器学习的初学者。在完成《动手学习机器学习与scikit-learn和TensorFlow》这本书中的一个项目时,我遇到了使用hashlib创建测试集的方法。您能帮我逐步理解这个返回语句的逻辑吗?

def test_set_check(identifier, test_ratio, hash):    return hash(np.int64(identifier)).digest()[-1]<256 * test_ratio

回答:

假设hash来自hashlib

  • identifier转换为64位的numpy整数
  • 对转换后的identifier进行哈希处理
  • 从哈希值中获取最后一个字节的值
  • 将该值与(256 * test_ratio)进行比较
  • 返回比较的结果

Related Posts

关于k折交叉验证的直观问题

我在使用交叉验证检查预测能力时遇到了一些直观问题,我认…

调整numpy数组大小以使用sklearn的train_test_split函数?

我正在尝试使用sklearn中的test_train_…

如何转换二维张量和索引张量以便用于torch.nn.utils.rnn.pack_sequence

我有一组序列,格式如下: sequences = to…

模型预测值的含义是什么?

我在网上找到一个数字识别器的CNN模型并进行了训练,当…

锯齿张量作为LSTM的输入

了解锯齿张量以及如何在TensorFlow中使用它们。…

如何告诉SciKit的LinearRegression模型预测值不能小于零?

我有以下代码,尝试根据非价格基础特征来估值股票。 pr…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注