暂时停用Python程序(和简历)

时间:2014-03-25 14:48:38

标签: python numpy pandas machine-learning neural-network

我正在构建机器学习算法(如神经网络),其中类变量(即numpy matrices )代表系统的各种参数

通过迭代更新所有类变量来完成系统培训。迭代次数越多越好。我想每天早上起床检查班级变量。之后我想恢复该计划

我在交互式终端中调用该程序。这是我能想到的:

  1. 打印到终端 - >矩阵太大,没有帮助
  2. 保存到磁盘并加载到另一个终端
  3. set_trace(),但需要事先知道 暂停
  4. 是否可以暂时暂停程序并使用类变量然后恢复?

    如果有人需要更多详细信息,则该计划位于:github link

2 个答案:

答案 0 :(得分:4)

我不熟悉numpy,但这是一个可以停止和恢复的简单课程:

class Program():

    def run(self):
        while 1:
            try:
                self.do_something()
            except KeyboardInterrupt:
                break

    def do_something(self):
        print("Doing something")


# usage:

a = Program()
a.run()

# will print a lot of statements

# if you hit CTRL+C it will stop
# then you can run it again with a.run()

答案 1 :(得分:3)

如果修改model.do_EM()方法以在每一步保存当前状态并检查配置文件,该怎么办?

 def do_EM(self, n_iteration = 10):
    self.visualizer.visualize(self.param_alpha, self.param_mu, self.param_sigma)
    for i in range(n_iteration):
      print "iteration:", i 
      self.step_E()
      print "done step_E. ",
      self.step_M()
      print "done step_M. "
      self.visualizer.visualize(self.param_alpha, self.param_mu, self.param_sigma)

      # Save current state
      self.log.write( ... )
      # Check for config changes
      self.config.update( ... )