https://github.com/kubeflow/katib
Raw File
Tip revision: 07fd11b119eb0945a09a041d5a90f31880c4b771 authored by Andrey Velichkevich on 13 May 2019, 23:13:45 UTC
Add new filters in job list
Tip revision: 07fd11b
nasjob-example-envelopenet.yaml
apiVersion: "kubeflow.org/v1alpha1"
kind: StudyJob
metadata:
  namespace: kubeflow
  labels:
    controller-tools.k8s.io: "1.0"
  name: nasenvelopenet
spec:
  studyName: nasenvelopenet
  owner: crd
  optimizationtype: maximize
  objectivevaluename: MeanSSS
  optimizationgoal: 0.99
  requestcount: 6
  metricsnames:
    - accuracy
  nasConfig:
    graphConfig:
      numLayers: 3
      inputSize:
        - 32
        - 32
        - 3
      outputSize:
        - 10
    operations:
      - operationType: envelopenet
        parameterconfigs:
          - name: envelopecell
            parametertype: categorical
            feasible:
              list:
              - "1"
              - "3"
              - "5"
              - "3sep"
              - "5sep"
              - "7sep"
          - name: layers_per_stage
            parametertype: categorical
            feasible: 
              list:
              - "3"
              - "3"
              - "3"
          - name: construction
            parametertype: categorical
            feasible: 
              list:
              - "1"
              - "1"
              - "0"
          - name: parameter_limits
            parametertype: categorical
            feasible: 
              list:
              - "0"
              - "0"
              - "0"
          - name: max_filter_prune
            parametertype: categorical
            feasible: 
              list: 
              - "6"
          - name: skip
            parametertype: categorical
            feasible: 
              list:
              - "1"
          - name: outputs
            parametertype: categorical
            feasible:
              list:
              - "64"
              - "128"
              - "256"
              - "512"

  workerSpec:
    goTemplate:
        rawTemplate: |-
          apiVersion: batch/v1
          kind: Job
          metadata:
            name: {{.WorkerID}}
            namespace: {{.NameSpace}}
          spec:
            template:
              spec:
                containers:
                - name: {{.WorkerID}}
                  image: docker.io/anubhavgarg/envelopenet_training_container
                  command:
                  - "python3.5"
                  - "-u"
                  - "run_trial.py"
                  {{- with .HyperParameters}}
                  {{- range .}}
                  - "--{{.Name}}={{.Value}}"
                  {{- end}}
                  {{- end}}
                  resources:
                    limits:
                      nvidia.com/gpu: 1
                restartPolicy: OnFailure
  suggestionSpec:
    suggestionAlgorithm: "nasenvelopenet"
    suggestionParameters:
      - name: "max_layers_per_stage"
        value: "763"
      - name: "gpus"
        value: "01"
      - name: "gpu_usage"
        value: "0.47"
      - name: "steps"
        value: "1000"
      - name: "batch_size"
        value: "50"
      - name: "dataset"
        value: "cifar10"
      - name: "data_dir"
        value: "data/"
      - name: "iterations"
        value: "5"
      - name: "log_stats"
        value: "True"
back to top