首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在python3模型匹配期间生成日志或打印某些内容

如何在python3模型匹配期间生成日志或打印某些内容
EN

Stack Overflow用户
提问于 2021-07-28 11:16:11
回答 1查看 99关注 0票数 0

我正在调度我的Jupyter Lab notebook,它有cluster algorithm.。如果我不做printlog之类的事情,工作就会失败。(它就是这样设计的)。

代码:

代码语言:javascript
复制
import hdbscan
from sklearn.datasets import make_blobs

data, _ = make_blobs(1000000)

clusterer = hdbscan.HDBSCAN(min_cluster_size=100)
cluster_model = clusterer.fit(data)

对于大数据集,clusterer.fit(data)使用的是7-8小时。

,我如何在拟合时打印或记录一些东西,从而使内核变得不理想?

EN

回答 1

Stack Overflow用户

发布于 2021-07-28 11:42:45

我不确定我是否正确地理解了这一点,但如果您的意思是,如果某个“主管”在很长一段时间内不打印任何内容,那么您可以启动一个单独的threading.Threadmultiprocessing.Process,它只会打印内容,直到匹配完成为止:

代码语言:javascript
复制
from time import sleep
from multiprocessing import Process

def print_target():
  while True:
    print("fit still running...")
    sleep(60)

# your code before fit...

proc = Process(target=print_target)
proc.start()

cluster_model = clusterer.fit(data)
proc.kill()

该示例使用Process而不是Thread,因为前者更容易杀死(Thread没有像Process那样的kill()方法,因此您必须使用threading.Queuethreading.Event来与希望它停止运行的线程通信)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68559389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档