作家
登录

如何用自动机器学习实现神经网络进化

作者: 来源: 2017-07-27 16:19:39 阅读 我要评论

  •                                lr=build_info['weight_decay']['val'], 
  •                                weight_decay=build_info['weight_decay']['val'], 
  •                                momentum=0.9) 
  •        self.optimizer = optimizer 
  •        self.cuda = False 
  •        if CUDA: 
  •            self.model.cuda() 
  •            self.cuda = True 
  • 膳绫擎的类别将会实例化模型的“基因组”。

    如今,我们已经具备了建立一个随便率性收集、变革其架构并对其进行练习的根本构件,那么接下来的步调就是建立“遗传算法”,“遗传算法”将会对最佳个别进行选择和变异。每个模型的练习都是自力进行的,不须要其他有机体的任何信息。这就使得优化过程可以跟着可用的处理节点进行线性扩大。

    GP优化器的编码

    1. """Genetic programming algorithms.""" 
    2. from __future__ import absolute_import 
    3.  
    4. import random 
    5. import numpy as np 
    6. from operator import itemgetter 
    7. import torch.multiprocessing as mp 
    8. from net_builder import randomize_network 
    9. import copy 
    10. from worker import CustomWorker, Scheduler 
    11.         
    12.  
    13. class TournamentOptimizer: 
    14.    """Define a tournament play selection process.""" 
    15.  
    16.    def __init__(self, population_sz, init_fn, mutate_fn, nb_workers=2, use_cuda=True): 
    17.        """ 
    18.        Initialize optimizer. 
    19.  
    20.            params:: 
    21.                 
    22.                init_fn: initialize a model 
    23.                mutate_fn: mutate function - mutates a model 
    24.                nb_workers: number of workers 
    25.        """ 
    26.         
    27.        self.init_fn = init_fn 
    28.        self.mutate_fn = mutate_fn 
    29.        self.nb_workers = nb_workers 
    30.        self.use_cuda = use_cuda 
    31.         
    32.        # population 
    33.        self.population_sz = population_sz 
    34.        self.population = [init_fn() for i in range(population_sz)]         
    35.        self.evaluations = np.zeros(population_sz) 
    36.         
    37.        # book keeping 
    38.        self.elite = [] 
    39.        self.stats = [] 
    40.        self.history = [] 
    41.  
    42.    def step(self): 
    43.        """Tournament evolution step.""" 
    44.        print('\nPopulation sample:') 

        推荐阅读

        百度前首席科学家吴恩达:AI短期内不会超越人类

      吴恩达认为,根本收入筹划的目标不该该是让人们持续给打车公司开车,他欲望根本收入筹划可以或许资世人们进修更多的器械,赞助他们找到有意义的工作。 腾讯科技讯 据外媒报道,固然比来有很>>>详细阅读


      本文标题:如何用自动机器学习实现神经网络进化

      地址:http://www.17bianji.com/lsqh/36435.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)