Example #1
0
 def train(self, sess, X_train, Y_train, X_test, Y_test,num_epochs, num_count,logs):
     res = 0.0
     summary_writer = tf.summary.FileWriter(logs+'/train',sess.graph)
     summary_writer1 = tf.summary.FileWriter(logs+'/test',sess.graph)
     sess.run(self.init_op)
     datagen = util.get_generator()
     # 模型持久化器
     saver = tf.train.Saver()
     batch_size = 128
     print('batch_size:', batch_size)
     # 开始迭代
     for e in range(num_epochs):
         yieldData = Data(X_train,Y_train)
         print('Epoch', e)
         batches = 0
         if e != 0 and (e %(num_epochs-1) == 0 or e%20==0): #每迭代一定次数保存下模型
             saver.save(sess, logs+'/'+str(e)+'model')
         #使用原始数据进行迭代
         for i in range(1):
             for batch_X,batch_Y in yieldData.get_next_batch(batch_size):
                 _, lossval, scoreval = sess.run([self.train_op,self.loss, self.score],
                                                 feed_dict={self.X: batch_X, self.keep_prob:self.keep_prob_train, self.y:batch_Y,self.is_training:True})
         summary2, accuval, scoreval, lossval = sess.run([self.merged, self.accuracy_test, self.score,self.loss],
                                              feed_dict={self.X: X_test, self.keep_prob:1, self.y:Y_test,self.is_training:False})
         print("Test accuracy:", accuval)
         print("Test loss:",lossval)
     return 0
Example #2
0
def get_calc_data():
    data = RegsData(sz=16)
    data.add_page('calc0')
    data.add('label0', label='Fmix = Fvco / DIV')
    data.add_page('calc1')
    data.add('Fmix', wdgt='spin', value=Data.spn(356.25, 2850, 0.01), text='1440', msg='Fmix', src=Fmix_src_cb)
    data.add('Fvco1', wdgt='entry', state='readonly', msg='Fvco', src=Fvco_src_cb)
    data.add('DIV', wdgt='combo', state='readonly', text='2', value=['2', '4', '8'], msg='DIV', src=lambda d,v: d.list_src('R22', 3, 4, ['2', '4', '8'], v))
    data.add_page('calc2')
    data.add('label1', label='Fvco = 2 x Fpfd x (INT + FRAC/MOD )')
    data.add_page('calc3')
    data.add('Fvco', wdgt='entry', state='readonly', msg='Fvco', src=Fvco_src_cb)
    data.add('Fpfd1', wdgt='entry', state='readonly', msg='Fpfd', src=Fpfd_src_cb)
    data.add('INT', wdgt='spin', value=Data.spn(21, 123), msg='INT', src=lambda d,v: d.bits_src('R02', 0, 10, v))
    data.add('FRAC', wdgt='spin', value=Data.spn(0, 63535), msg='FRAC', src=lambda d,v: d.bits_src('R03', 0, 15, v))
    data.add('MOD', wdgt='spin', value=Data.spn(1, 63535), msg='MOD', src=lambda d,v: d.bits_src('R04', 0, 15, v))
    data.add_page('calc4')
    data.add('label0', label='Fpfd = REFin x REFSEL')
    data.add_page('calc5')
    data.add('Fpfd', wdgt='entry', state='readonly', msg='Fpfd', src=Fpfd_src_cb)
    data.add('REFin', wdgt='entry', state='readonly', msg='REFin', src=lambda d,v: d.dev_src('refin'))
    data.add('REFSEL', wdgt='combo', state='readonly', value=refsel_list, msg='REFSEL', src=lambda d,v: d.list_src('R21', 0, 2, refsel_list, v))
    data.add_page('calc6')
    data.add('MUXOUT', wdgt='combo', state='readonly', value=muxout_list, label='MUXOUT', width=30, src=lambda d,v: d.list_src('R21', 4, 6, muxout_list, v))
    data.add_page('calc7')
    data.add('VCOSEL', wdgt='combo', state='readonly', value=vcosel_list, label='VCOSEL', src=lambda d,v: d.list_src('R22', 0, 2, vcosel_list, v))
    return data
Example #3
0
def get_mntr(dev):
    mntr = Data(io_cb=dev_serial_io_cb)
    mntr.add_page('mntr0', send=True)
    mntr.add('alarm', wdgt='alarm', msg='Sum Alarm', trace_cb=alarm_trace_cb)
    mntr.add('temp', wdgt='entry', state='readonly', msg='Temperature')
    mntr.add('pwr', wdgt='entry', state='readonly', msg='Power level')
    return mntr
Example #4
0
def get_lpf_ctrl(data=None, cmd=None):
    if not data:
        data = Data(name='LPF', io_cb=util_io_cb)
    if not cmd:
        cmd = 'lpf'
    data.add(cmd, label='LPF, MHz', wdgt='spin', text='15', value={'min':0, 'max':31, 'step':1}, fmt_cb=lpf_fmt_cb, cmd_cb=lpf_cmd_cb, send=True)
    data.add('g3', label='Preamplifier gain', wdgt='radio', text=gain_list[2][0], value=gain_list[2], fmt_cb=lambda v,r: gain_fmt_cb(v,r,2), send=False)
    data.add('g2', label='Postamplifier gain', wdgt='radio', text=gain_list[1][0], value=gain_list[1], fmt_cb=lambda v,r: gain_fmt_cb(v,r,1), send=False)
    data.add('g1', label='VGA max gain', wdgt='radio', text=gain_list[0][0], value=gain_list[0], fmt_cb=lambda v,r: gain_fmt_cb(v,r,0), send=False)
Example #5
0
def get_mntr(dev):
    data = Data(name='mntr', io_cb=lambda d, c: util_io_cb(d, c, prefix='ALT'))
    data.add('pio',
             label='IN',
             wdgt='entry',
             state='readonly',
             cmd_cb=alt_cmd_cb,
             send=True)
    return data
Example #6
0
def get_ctrl(dev):
    spn_max, spn_step = 2.5, 0.05
    if dev['type'] == 'AD5620_2_5V':
        spn_max = 5
    data = Data(name='Voltage', send=True, io_cb=util_io_cb)
    fmt_cb = lambda val, read, spn_max=spn_max: float_fmt_cb(val, read, spn_max)
    cmd_cb = lambda dev, cmd, val: spi_efc_cmd_cb(dev, cmd, val, ncpha='0', cpol='0')
    data.add('out', label='OUT, V', wdgt='spin', value=Data.spn(0, spn_max, spn_step), fmt_cb=fmt_cb, cmd_cb=cmd_cb)
    return data
Example #7
0
File: UC.py Project: ivanovev/tmb
def get_mntr(dev):
    mntr = Data(name='status', send=True, io_cb=dev_io_cb)
    mntr.add('status', wdgt='alarm', trace_cb=alarm_trace_cb, fmt_cb=status_fmt_cb, msg='Power supply')
    add_status = lambda n, msg: mntr.add('status%d' % n, wdgt='alarm', send=False, trace_cb=alarm_trace_cb, fmt_cb=lambda val, read: status_fmt_cb(val,read,n), msg=msg)
    add_status(1, 'Synth1 lock detect')
    add_status(2, 'Synth2 (aux) lock detect')
    add_status(3, 'Output level < threshold')
    mntr.add_page('mntr')
    mntr.add('5_5v', wdgt='entry', label='5.5V', state='readonly', msg='5.5V')
    mntr.add('txl', wdgt='entry', label='TXL', state='readonly', msg='TX signal level')
    return mntr
Example #8
0
def main():
    train_data = pickle.load(
        open('../datasets/' + opt.dataset + '/train.txt', 'rb'))
    test_data = pickle.load(
        open('../datasets/' + opt.dataset + '/test.txt', 'rb'))

    if opt.dataset == 'diginetica':
        n_node = 43097
    elif opt.dataset == 'Tmall':
        n_node = 40727
    elif opt.dataset == 'Nowplaying':
        n_node = 60416
    else:
        n_node = 309
    train_data = Data(train_data, shuffle=True, n_node=n_node)
    test_data = Data(test_data, shuffle=True, n_node=n_node)
    model = trans_to_cuda(
        DHCN(adjacency=train_data.adjacency,
             n_node=n_node,
             lr=opt.lr,
             l2=opt.l2,
             beta=opt.beta,
             layers=opt.layer,
             emb_size=opt.embSize,
             batch_size=opt.batchSize,
             dataset=opt.dataset))

    top_K = [5, 10, 20]
    best_results = {}
    for K in top_K:
        best_results['epoch%d' % K] = [0, 0]
        best_results['metric%d' % K] = [0, 0]

    for epoch in range(opt.epoch):
        print('-------------------------------------------------------')
        print('epoch: ', epoch)
        metrics, total_loss = train_test(model, train_data, test_data)
        for K in top_K:
            metrics['hit%d' % K] = np.mean(metrics['hit%d' % K]) * 100
            metrics['mrr%d' % K] = np.mean(metrics['mrr%d' % K]) * 100
            if best_results['metric%d' % K][0] < metrics['hit%d' % K]:
                best_results['metric%d' % K][0] = metrics['hit%d' % K]
                best_results['epoch%d' % K][0] = epoch
            if best_results['metric%d' % K][1] < metrics['mrr%d' % K]:
                best_results['metric%d' % K][1] = metrics['mrr%d' % K]
                best_results['epoch%d' % K][1] = epoch
        print(metrics)
        for K in top_K:
            print(
                'train_loss:\t%.4f\tRecall@%d: %.4f\tMRR%d: %.4f\tEpoch: %d,  %d'
                % (total_loss, K, best_results['metric%d' % K][0], K,
                   best_results['metric%d' % K][1],
                   best_results['epoch%d' % K][0],
                   best_results['epoch%d' % K][1]))
Example #9
0
 def __init__(self, dev, title='FW upgrade'):
     data = Data()
     data.dev = dev
     data.buttons = OD()
     self.txcrc32 = True
     self.add_tx_cmds(data, txcrc32=self.txcrc32)
     Control.__init__(self, data, dev, title=title)
     data.cmds['send'].w.configure(text='Start upgrade')
     self.fileext = 'bin'
     self.filemode = 'rb'
     self.io_start = lambda *args: asyncio. async (self.io.start())
Example #10
0
 def __init__(self, dev, title='FW upgrade'):
     data = Data()
     data.dev = dev
     data.buttons = OD()
     self.txcrc32 = True
     self.add_tx_cmds(data, txcrc32=self.txcrc32)
     Control.__init__(self, data, dev, title=title)
     data.cmds['send'].w.configure(text='Start upgrade')
     self.fileext = 'bin'
     self.filemode = 'rb'
     self.io_start = lambda *args: asyncio.async(self.io.start())
Example #11
0
def get_ctrl(dev):
    data = Data(name='atten', send=True, io_cb=util_io_cb)
    cmd_cb = lambda dev, cmd, val: spi_efc_cmd_cb(
        dev, cmd, val, cpha='0', cpol='0')
    data.add('atten',
             label='Attenuation, dB',
             wdgt='spin',
             text='0',
             value=Data.spn(-13.5, 18, 0.5),
             fmt_cb=fmt_cb,
             cmd_cb=cmd_cb)
    return data
Example #12
0
File: BR2I.py Project: ivanovev/br
def get_mntr(dev):
    mntr = Data(io_cb=dev_io_cb)
    mntr.add_page('mntr', send=True)
    mntr.add('synth1', wdgt='alarm', trace_cb=alarm_trace_cb, fmt_cb=synth_fmt_cb, msg='Synthesizer 1')
    mntr.add('synth2', wdgt='alarm', trace_cb=alarm_trace_cb, fmt_cb=synth_fmt_cb, msg='Synthesizer 2')
    mntr.add('uout1', wdgt='entry', state='readonly', msg='Uout1, V')
    mntr.add('uout2', wdgt='entry', state='readonly', msg='Uout2, V')
    mntr.add('uout3', wdgt='entry', state='readonly', msg='abs(Uout1-Uout2), V')
    return mntr
Example #13
0
def get_ctrl(dev):
    data = Data(name='ctrl', io_cb=lambda d, c: util_io_cb(d, c, prefix='ALT'))
    data.add('pio',
             label='PIO',
             wdgt='spin',
             value={
                 'min': 0,
                 'max': 0xFF,
                 'step': 1
             },
             cmd_cb=alt_cmd_cb,
             send=True)
    return data
Example #14
0
def get_mntr(dev):
    mntr = Data(name='mntr', send=True, io_cb=dev_io_cb)
    #mntr.add('temp', wdgt='entry', msg='Temperature')
    #am('dma0', 'DMA0')
    #am('dma1', 'DMA1')
    #am('dma2', 'DMA2')
    #am('dma3', 'DMA3')
    avti=lambda k,msg,i,send=False: mntr.add(k,wdgt='alarm',cmd='vtune',send=send,msg=msg,fmt_cb=lambda val,read: vtune_fmt_cb(val,read,i),trace_cb=alarm_trace_cb)
    avti('txvtuneh', 'TX VTUNE_H', 0, True)
    avti('txvtunel', 'TX VTUNE_L', 1)
    avti('rxvtuneh', 'TX VTUNE_H', 2)
    avti('rxvtunel', 'TX VTUNE_L', 3)
    return mntr
Example #15
0
    def get_num_col_index(self):
        '''doc'''
        if self.num_col_index is not None:
            return self.num_col_index

        max_col = self.get_max_col()
        max_row = self.get_max_row()

        num_col_count = 0
        num_col_index = 0

        for col_index in range(1, max_col + 1):
            num_cell_count = 0
            is_str_cell = False
            for row_index in range(1, max_row + 1):
                cell = self.get_cell(row_index, col_index)
                float_val = cell.get_float_val()

                if isinstance(float_val, float):
                    num_cell_count += 1
                    continue

                str_val = cell.get_str_val()

                if isinstance(str_val, str):
                    is_str_cell = True
                    break

            if is_str_cell:
                continue

            if num_cell_count >= 1:
                num_col_count += 1
                num_col_index = col_index

        data = Data()

        if num_col_count == 0:
            data.set("ERR", True)
            data.set("ERR_MSG", "没有数字列")
            return None

        if num_col_count > 1:
            data.set("ERR", True)
            data.set("ERR_MSG", "有%d列是数字" % num_col_count)
            return None

        if num_col_count == 1:
            self.num_col_index = num_col_index

        return self.num_col_index
Example #16
0
def get_ctrl(dev):
    data = Data(name='atten',
                send=True,
                buttons=OD([('Write', write_cb)]),
                io_cb=util_io_cb)
    cmd_cb = lambda dev, cmd, val: spi_efc_cmd_cb(
        dev, cmd, val, ncpha='1', cpol='0')
    data.add('atten',
             label='Attenuation, dB',
             wdgt='spin',
             value=Data.spn(0, 31.5, .5),
             fmt_cb=fmt_cb,
             cmd_cb=cmd_cb)
    return data
Example #17
0
File: POLUS.py Project: ivanovev/hm
def get_mntr(self):
    data = Data(name='Monitor')
    data.add('az', label='Azimuth', wdgt='entry', state='readonly', send=True, cmd_cb=polus_cmd_cb)
    data.add('el', label='Elevation', wdgt='entry', state='readonly', send=True, cmd_cb=polus_cmd_cb)
    def add_alarm(k, bit, msg, cmd_cb=None):
        data.add(k, wdgt='alarm', send=True if cmd_cb else False, cmd_cb=cmd_cb, fmt_cb=lambda val, read: alarm_fmt_cb(val, read, bit), msg=msg, trace_cb=alarm_trace_cb)
    add_alarm('az+', 0, 'az+', cmd_cb=lambda *args: 'POLUS.status')
    add_alarm('az-', 1, 'az-')
    #add_alarm('limaz+', 4, 'limaz+')
    #add_alarm('limaz-', 5, 'limaz-')
    add_alarm('el+', 2, 'el+')
    add_alarm('el-', 3, 'el-')
    #add_alarm('limel+', 6, 'limel+')
    #add_alarm('limel-', 7, 'limel-')
    return data
Example #18
0
 def init_common_layout(self):
     self.add_menu_file(file_save=False)
     self.menu_bank = self.add_menu_bank()
     self.fl = tk.Frame(self.frame)
     self.fl.pack(fill=tk.BOTH, expand=1, side=tk.LEFT)
     self.fr = tk.Frame(self.frame)
     self.fr.pack(fill=tk.BOTH, expand=0, side=tk.RIGHT)
     self.pdata = Data()
     self.ptabs = ttk.Notebook(self.fl)
     self.ptabs.pack(fill=tk.BOTH, expand=1, padx=5, pady=5)
     self.pdata.bind_tab_cb(self.ptabs, self.plot_update)
     self.tabs = ttk.Notebook(self.fr)
     self.tabs.pack(fill=tk.BOTH, expand=1, padx=5, pady=5)
     self.bank_add()
     self.data.bind_tab_cb(self.tabs, self.plot_update)
Example #19
0
 def __init__(self, dev):
     data = Data()
     Control.__init__(self, data=data, dev=dev, title='Pcl edit')
     io.BytesIO.__init__(self)
     self.io_start = lambda *args: asyncio. async (self.io.start())
     self.fileext = 'pcl'
     self.filemode = 'r'
Example #20
0
def get_ctrl(dev):
    spn_max, spn_step = 2.5, 0.05
    if dev['type'] == 'AD5620_2_5V':
        spn_max = 5
    data = Data(name='Voltage', send=True, io_cb=util_io_cb)
    fmt_cb = lambda val, read, spn_max=spn_max: float_fmt_cb(
        val, read, spn_max)
    cmd_cb = lambda dev, cmd, val: spi_efc_cmd_cb(
        dev, cmd, val, ncpha='0', cpol='0')
    data.add('out',
             label='OUT, V',
             wdgt='spin',
             value=Data.spn(0, spn_max, spn_step),
             fmt_cb=fmt_cb,
             cmd_cb=cmd_cb)
    return data
Example #21
0
def get_ctrl(dev):
    ctrl = Data(io_cb=dev_serial_io_cb, send=True, name='ctrl')
    ctrl.add('tx',
             label='Mute/unmute tx',
             wdgt='combo',
             state='readonly',
             value=OD([('ON', '1'), ('OFF', '0')]))
    ctrl.add('gain', label='Gain', wdgt='entry')
    ctrl.add('atten', label='Attenuation', wdgt='entry')
    return ctrl
Example #22
0
File: BR1I.py Project: ivanovev/br
def get_mntr(dev):
    mntr = Data(io_cb=dev_io_cb)
    mntr.add_page('mntr', send=True)
    mntr.add('synth',
             wdgt='alarm',
             trace_cb=alarm_trace_cb,
             fmt_cb=synth_fmt_cb,
             msg='Synthesizer status')
    mntr.add('uout', wdgt='entry', state='readonly', msg='Uout, V')
    return mntr
Example #23
0
def get_ctrl(dev):
    ctrl_buttons = OD([('Reset', reset_cb), ('Write', write_cb)])
    data = Data(buttons=ctrl_buttons, io_cb=dev_io_cb)
    data.add_page('Generator', send=True)
    data.add('freq', label='Frequency, MHz', wdgt='spin', value={'min':0.1, 'max':12400, 'step':0.1}, text='1451')
    data.add('amp', label='Amplitude, dBm', wdgt='spin', value={'min':-40, 'max':-6, 'step':0.5}, text='-40')
    return data
Example #24
0
File: CDMQX.py Project: ivanovev/hm
def get_mntr(dev):
    mntr = Data(io_cb=CDM570.cmd_io_cb, send=True)
    mntr.add_page('mntr0')
    aa = lambda k, send, msg, fltn: mntr.add(k, wdgt='alarm', send=send, msg=msg, cmd='FLT', fmt_cb=lambda val,read=True: flt_fmt_cb(val, read, fltn=fltn), trace_cb=alarm_trace_cb)
    aa('FLT0', True, 'Unit fault', 0)
    aa('FLT1', False, 'Slot 1', 1)
    aa('FLT2', False, 'Slot 2', 2)
    aa('FLT3', False, 'Slot 3', 3)
    aa('FLT4', False, 'Slot 4', 4)
    mntr.add('TMP', wdgt='entry', msg='Temperature')
    if dev['devdata'] == 'mod':
        return mntr
    if dev['devdata'] == 'demod':
        mntr1 = CDM570.get_mntr(dev)
        mntr.add_page(name=mntr1[1].name, cmds=mntr1[1])
        return mntr
Example #25
0
def get_mntr(dev):
    mntr = Data(name='mntr', send=True, io_cb=dev_io_cb)
    #mntr.add('temp', wdgt='entry', msg='Temperature')
    #am('dma0', 'DMA0')
    #am('dma1', 'DMA1')
    #am('dma2', 'DMA2')
    #am('dma3', 'DMA3')
    avti = lambda k, msg, i, send=False: mntr.add(k,
                                                  wdgt='alarm',
                                                  cmd='vtune',
                                                  send=send,
                                                  msg=msg,
                                                  fmt_cb=lambda val, read:
                                                  vtune_fmt_cb(val, read, i),
                                                  trace_cb=alarm_trace_cb)
    avti('txvtuneh', 'TX VTUNE_H', 0, True)
    avti('txvtunel', 'TX VTUNE_L', 1)
    avti('rxvtuneh', 'TX VTUNE_H', 2)
    avti('rxvtunel', 'TX VTUNE_L', 3)
    return mntr
Example #26
0
 def add_memory_cb(self):
     mem = Data(name='mem')
     mem.add('name', label='Name', wdgt='entry', text='new')
     mem.add('addr', label='Start address', wdgt='entry', text='00000000')
     mem.add('sz', label='Size in bytes', wdgt='entry', text='4')
     dlg = Control(data=mem, parent=self.root, title='Add memory', pady=5)
     dlg.add_buttons_ok_cancel()
     dlg.do_modal()
     if not hasattr(dlg, 'kw'):
         return
     if len(dlg.kw.keys()) == 0:
         return
     self.add_memory(dlg.kw['name'], dlg.kw['addr'], dlg.kw['sz'])
Example #27
0
def get_ctrl(dev):
    ctrl = Data(name='Settings', send=True, io_cb=dev_io_cb)
    ctrl.add('channel',
             label='Channel selection',
             wdgt='radio',
             value=OD([('Channel A', '1'), ('Channel B', '0')]))
    ctrl.add_page('System')
    ctrl.add('commit',
             label='EFC commit enable',
             wdgt='combo',
             state='readonly',
             value=['ON', 'OFF'],
             text='ON')
    return ctrl
Example #28
0
File: POLUS.py Project: ivanovev/hm
def get_mntr(self):
    data = Data(name='Monitor')
    data.add('az',
             label='Azimuth',
             wdgt='entry',
             state='readonly',
             send=True,
             cmd_cb=polus_cmd_cb)
    data.add('el',
             label='Elevation',
             wdgt='entry',
             state='readonly',
             send=True,
             cmd_cb=polus_cmd_cb)

    def add_alarm(k, bit, msg, cmd_cb=None):
        data.add(k,
                 wdgt='alarm',
                 send=True if cmd_cb else False,
                 cmd_cb=cmd_cb,
                 fmt_cb=lambda val, read: alarm_fmt_cb(val, read, bit),
                 msg=msg,
                 trace_cb=alarm_trace_cb)

    add_alarm('az+', 0, 'az+', cmd_cb=lambda *args: 'POLUS.status')
    add_alarm('az-', 1, 'az-')
    #add_alarm('limaz+', 4, 'limaz+')
    #add_alarm('limaz-', 5, 'limaz-')
    add_alarm('el+', 2, 'el+')
    add_alarm('el-', 3, 'el-')
    #add_alarm('limel+', 6, 'limel+')
    #add_alarm('limel-', 7, 'limel-')
    return data
Example #29
0
def get_mntr(dev):
    data = Data('mntra', send=True, io_cb=dev_serial_io_cb)
    for ch in range(1, 9):
        data.add('a%d'%ch,cmd='fetch',wdgt='alarm',msg='CH%d'%ch,fmt_cb=lambda val,read,c=ch:fmt_cb1(val,read,c),send=(ch==1),trace_cb=alarm_trace_cb)
    data.add_page('mntre', send=True)
    for ch in range(1, 9):
        v = data.add('CH%d'%ch, wdgt='entry', label='CH%d'%ch, msg='CH%d'%ch)
    data.cmds.columns = 4
    return data
Example #30
0
    def prelabel_data(self, data):
        if data.y.shape[1] is None:
            label_shape = tuple(data.U.shape[0])
        else:
            label_shape = (data.U.shape[0], data.y.shape[1])
        pseudo_labels = self.unlabeled * np.ones(label_shape, dtype=float)

        assert (data.X.shape[0] == data.y.shape[0])
        assert (data.X.shape[1] == data.U.shape[1])
        assert (data.y.shape[1] == pseudo_labels.shape[1])

        X = np.append(data.X, data.U, axis=0)
        y = np.append(data.y, pseudo_labels, axis=0)

        return Data(X, y, None)
Example #31
0
 def __init__(self,
              dev=None,
              parent=None,
              title='Screenshot',
              get_data=None,
              iw=480,
              ih=234):
     data = Data()
     self.fileext = 'bmp'
     self.get_data = get_data
     self.iw = iw
     self.ih = ih
     self.isz = self.iw * self.ih
     self.z = 1
     Control.__init__(self, data=data, dev=dev, parent=parent, title=title)
Example #32
0
 def init_common_layout(self):
     self.add_menu_file(file_save=False)
     self.menu_bank = self.add_menu_bank()
     self.fl = tk.Frame(self.frame)
     self.fl.pack(fill=tk.BOTH, expand=1, side=tk.LEFT)
     self.fr = tk.Frame(self.frame)
     self.fr.pack(fill=tk.BOTH, expand=0, side=tk.RIGHT)
     self.pdata = Data()
     self.ptabs = ttk.Notebook(self.fl)
     self.ptabs.pack(fill=tk.BOTH, expand=1, padx=5, pady=5)
     self.pdata.bind_tab_cb(self.ptabs, self.plot_update)
     self.tabs = ttk.Notebook(self.fr)
     self.tabs.pack(fill=tk.BOTH, expand=1, padx=5, pady=5)
     self.bank_add()
     self.data.bind_tab_cb(self.tabs, self.plot_update)
Example #33
0
def get_mntr(dev):
    mntr = Data('mntr', send=True, io_cb=dev_serial_io_cb)
    mntr.add('pwr',
             wdgt='entry',
             state='readonly',
             msg='current power reading (in dBm)')
    mntr.add('temp',
             wdgt='entry',
             state='readonly',
             msg='current temperature reading')
    return mntr
Example #34
0
 def __init__(self, dev, title='File IO'):
     data = Data()
     data.dev = dev
     data.buttons = OD()
     #data.buttons['TX stop'] = self.dma_stop_cb
     self.add_tx_cmds(data, txcrc32=False)
     data.add('txstop', wdgt='button', text='TX stop', click_cb=self.dma_stop_cb)
     self.add_rx_cmds(data)
     Control.__init__(self, data, dev, title=title)
     self.fileext = 'pcm'
     self.center()
Example #35
0
def get_ctrl(dev):
    gnsw_list = ['6dB', '12dB']
    gnsw_fmt_cb = lambda val, read=True: gpio_list_fmt_cb(val, read, gnsw_list, 0)
    gnsw_cmd_cb = lambda dev, cmd, val: gpio_cmd_cb(dev, cmd, val, 0)

    ofds_list = ['Enable', 'Disable']
    ofds_fmt_cb = lambda val, read=True: gpio_list_fmt_cb(val, read, ofds_list, 1)
    ofds_cmd_cb = lambda dev, cmd, val: gpio_cmd_cb(dev, cmd, val, 1)

    lpf_cmd_cb = lambda dev, cmd, val: spi_efc_cmd_cb(dev, cmd, val, ncpha='1', cpol='1')

    data = Data(name='LPF', send=True, io_cb=util_io_cb)
    data.add('gnsw', label='Gain switch', wdgt='radio', value=gnsw_list, fmt_cb=gnsw_fmt_cb, cmd_cb=gnsw_cmd_cb)
    data.add('ofds', label='Offset correction loop', wdgt='radio', value=ofds_list, fmt_cb=ofds_fmt_cb, cmd_cb=ofds_cmd_cb)
    data.add('lpf', label='LPF, MHz', wdgt='spin', value={'min':1, 'max':30, 'step':1}, fmt_cb=lpf_fmt_cb, cmd_cb=lpf_cmd_cb)

    return data
Example #36
0
def get_mntr(dev):
    mntr = Data(io_cb=dev_io_cb, send=True)
    dd = 'devdata'
    def add_channel(data, ch):
        cmd_cb = lambda dev, cmd, val, c=ch: mntr_cmd_cb(dev, cmd, val, ch=c)
        mntr.add_page('%s.vpp' % ch)
        mntr.add('PKPK', wdgt='entry', msg='Vpp', cmd_cb=cmd_cb, fmt_cb=mntr_fmt_cb)
        mntr.add_page('%s.etc' % ch)
        mntr.add('MAX', label='Vmax', wdgt='entry', msg='Vmax', cmd_cb=cmd_cb, fmt_cb=mntr_fmt_cb)
        mntr.add('MIN', label='Vmin', wdgt='entry', msg='Vmin', cmd_cb=cmd_cb, fmt_cb=mntr_fmt_cb)
        mntr.add('PER', label='Period', wdgt='entry', msg='Period', cmd_cb=cmd_cb, fmt_cb=mntr_fmt_cb2)
        mntr.add('FREQ', label='Frequency', wdgt='entry', msg='Frequency', cmd_cb=cmd_cb, fmt_cb=mntr_fmt_cb2)
    if dd in dev:
        ch = dev[dd]
        add_channel(mntr, ch)
    else:
        for ch in ['C1', 'C2', 'C3', 'C4']:
            add_channel(mntr, ch)
    return mntr
Example #37
0
def get_mntr(dev):
    data = Data('mntra', send=True, io_cb=dev_serial_io_cb)
    for ch in range(1, 9):
        data.add('a%d' % ch,
                 cmd='fetch',
                 wdgt='alarm',
                 msg='CH%d' % ch,
                 fmt_cb=lambda val, read, c=ch: fmt_cb1(val, read, c),
                 send=(ch == 1),
                 trace_cb=alarm_trace_cb)
    data.add_page('mntre', send=True)
    for ch in range(1, 9):
        v = data.add('CH%d' % ch,
                     wdgt='entry',
                     label='CH%d' % ch,
                     msg='CH%d' % ch)
    data.cmds.columns = 4
    return data
Example #38
0
def get_ctrl(dev):
    gnsw_list = ['6dB', '12dB']
    gnsw_fmt_cb = lambda val, read=True: gpio_list_fmt_cb(
        val, read, gnsw_list, 0)
    gnsw_cmd_cb = lambda dev, cmd, val: gpio_cmd_cb(dev, cmd, val, 0)

    ofds_list = ['Enable', 'Disable']
    ofds_fmt_cb = lambda val, read=True: gpio_list_fmt_cb(
        val, read, ofds_list, 1)
    ofds_cmd_cb = lambda dev, cmd, val: gpio_cmd_cb(dev, cmd, val, 1)

    lpf_cmd_cb = lambda dev, cmd, val: spi_efc_cmd_cb(
        dev, cmd, val, ncpha='1', cpol='1')

    data = Data(name='LPF', send=True, io_cb=util_io_cb)
    data.add('gnsw',
             label='Gain switch',
             wdgt='radio',
             value=gnsw_list,
             fmt_cb=gnsw_fmt_cb,
             cmd_cb=gnsw_cmd_cb)
    data.add('ofds',
             label='Offset correction loop',
             wdgt='radio',
             value=ofds_list,
             fmt_cb=ofds_fmt_cb,
             cmd_cb=ofds_cmd_cb)
    data.add('lpf',
             label='LPF, MHz',
             wdgt='spin',
             value={
                 'min': 1,
                 'max': 30,
                 'step': 1
             },
             fmt_cb=lpf_fmt_cb,
             cmd_cb=lpf_cmd_cb)

    return data
Example #39
0
def get_ctrl(dev):
    ctrl_buttons = OD([('Reset', reset_cb), ('Write', write_cb)])
    data = Data(buttons=ctrl_buttons, io_cb=dev_io_cb)
    data.add_page('Generator', send=True)
    data.add('freq',
             label='Frequency, MHz',
             wdgt='spin',
             value={
                 'min': 0.1,
                 'max': 12400,
                 'step': 0.1
             },
             text='1451')
    data.add('amp',
             label='Amplitude, dBm',
             wdgt='spin',
             value={
                 'min': -40,
                 'max': -6,
                 'step': 0.5
             },
             text='-40')
    return data
Example #40
0
 def fircalc_cb1(self):
     cmd = 'read' if self.read else 'write'
     bdata = self.bank_data()
     tdata = Data()
     tdata.add_page('taps',
                    cmds=OD((k, bdata.cmds[k]) for k in ['ntaps', 'nbits']))
     tdata.add('nbank',
               label='bank #',
               wdgt='combo',
               state='readonly',
               text='0',
               value=['0', '1'])
     dlg = Control(data=tdata, parent=self.root, title='%s taps' % cmd)
     dlg.add_buttons_ok_cancel()
     dlg.center()
     dlg.do_modal()
     if not hasattr(dlg, 'kw'):
         return
     ntaps = dlg.kw['ntaps']
     self.nbits = int(dlg.kw['nbits'])
     nbank = int(dlg.kw['nbank'])
     n = ceil(int(ntaps) / 2)
     offset = n if nbank else 0
     dev = self.data.dev
     if self.read:
         self.taps = []
         for i in range(0, n):
             self.qo.put('tap ALT.firii %s %s %d' %
                         (dev['ip_addr'], dev['altname'], i + offset))
     else:
         taps = self.get_taps_fmt(fmt=self.nbits)
         taps[n:] = []
         for i in range(0, n):
             self.qo.put(
                 'tap ALT.firii %s %s %d %s' %
                 (dev['ip_addr'], dev['altname'], i + offset, taps[i]))
     self.pb['maximum'] = self.qo.qsize()
     return True
Example #41
0
File: BR1I.py Project: ivanovev/br
def get_ctrl(dev):
    ctrl = Data(name='CH1', send=True, io_cb=dev_io_cb)
    ctrl.add('freq', label='Frequency, MHz', wdgt='spin', value=Data.spn(1350, 1750, 0.01))
    ctrl.add('rfgain', label='RF Gain, dB', wdgt='spin', value=Data.spn(0, 31.5, 0.5))
    ctrl.add('bbgain', label='BB Gain, dB', wdgt='spin', value=Data.spn(0, 50, 0.1))
    ctrl.add('lpf', label='Filter, MHz', wdgt='combo', state='readonly', value=['2', '4', '10', '20'], text='10')
    ctrl.add('commit', label='EFC commit enable', wdgt='combo', state='readonly', value=['ON', 'OFF'], text='ON')
    return ctrl
Example #42
0
File: DC.py Project: ivanovev/tmb
def get_ctrl(dev):
    ctrl = Data(name='Settings', send=True, io_cb=dev_io_cb)
    ctrl.add('agc_en', label='AGC Enable', wdgt='radio', value=OD([('ON', '1'), ('OFF', '0')]))
    ctrl.add('agc_lvl', label='AGC Level', wdgt='spin', value=Data.spn(0, 2.5, 0.1))
    ctrl.add('bpf', label='Band Pass Filter', wdgt='combo', state='readonly', value=OD([('11MHz', '0'), ('5.5MHz', '2'), ('250kHz', '3')]))
    ctrl.add('bas', label='BAS output', wdgt='radio', value=OD([('Ch1 (sig)', '0'), ('Ch3 (br)', '1')]))
    ctrl.add('test', label='TEST output', wdgt='combo', state='readonly', value=OD([('Synth1(835-1140,1MHz)', '3'), ('Synth2(150,7MHz)', '1'), ('Synth3(1125-1140,1MHz)', '0'), ('XTAL(26MHz)', '2')]))
    ctrl.add('freq', label='Channel1 freq', wdgt='spin', value=Data.spn(975, 1000, 0.01), cmd_cb=freq_cmd_cb)
    ctrl.add('inv', label='Channel1 inv', wdgt='check', fmt_cb=inv_fmt_cb, trace_cb=inv_trace_cb)
    ctrl.add('gain', label='Channel1 gain', wdgt='spin', value=Data.spn(19, 65, 0.5))
    ctrl.add('freqbr', label='Channel3(br) freq', wdgt='spin', value=Data.spn(975, 1000.1, 0.01))
    ctrl.add('gainbr', label='Channel3(br) gain', wdgt='spin', value=Data.spn(29.5, 77.5, 0.5))
    ctrl.add('thrs1', label='Threshold1', wdgt='spin', value=Data.spn(0, 200, 1))
    ctrl.add('thrs2', label='Threshold2', wdgt='spin', value=Data.spn(0, 200, 1))
    ctrl.add('thrsb', label='Threshold (br)', wdgt='spin', value=Data.spn(0, 10, 0.1))
    ctrl.add_page('System')
    ctrl.add('commit', label='EFC commit enable', wdgt='combo', state='readonly', value=['ON', 'OFF'], text='ON')
    return ctrl
Example #43
0
def get_ctrl(dev):
    ctrl = Data(name='RF', send=True, io_cb=dev_io_cb)
    ctrl.add('freq', label='Frequency, MHz', wdgt='spin', value=Data.spn(356.25, 2850, 0.01))
    ctrl.add('rfgain', label='RF Gain, dB', wdgt='spin', text='0.0', value=Data.spn(-13.5, 18, 0.5))
    ctrl.add_page('BB')
    ctrl.add('bbgain', label='Analog Gain, dB', wdgt='spin', value=Data.spn(0, 64.5, 0.5))
    get_lpf_ctrl(ctrl, 'bblpf')
    ctrl.add_page('DSP')
    ctrl.add('dsplpf', label='Filter, MHz', wdgt='combo', state='readonly', value=['10', '20'], text='10')
    ctrl.add_page('TEST')
    ctrl.add('test', label='Nothing', send=False)
    return ctrl
Example #44
0
def get_mntr(dev):
    mntr = Data(io_cb=dev_io_cb)
    mntr.add_page('mntr', send=True)
    mntr.add('synth', wdgt='alarm', trace_cb=alarm_trace_cb, msg='Synthesizer status')
    mntr.add('uout', wdgt='entry', state='readonly', msg='Uout, V')
    mntr.add_page('mntr1', send=True)
    mntr.add('vcm1', label='VCM1', wdgt='entry', state='readonly', msg='VCM1')
    mntr.add('vcm2', label='VCM2', wdgt='entry', state='readonly', msg='VCM2')
    mntr.add('5v_1', label='5V_1', wdgt='entry', state='readonly', msg='5V_1')
    mntr.add('5v_2', label='5V_2', wdgt='entry', state='readonly', msg='5V_2')
    mntr.add('3v3_1', label='3V3_1', wdgt='entry', state='readonly', msg='3V3_1')
    mntr.add('3v3_2', label='3V3_2', wdgt='entry', state='readonly', msg='3V3_2')
    mntr.add('3v3_3', label='3V3_3', wdgt='entry', state='readonly', msg='3V3_3')
    mntr.add('14v', label='14V', wdgt='entry', state='readonly', msg='14V')
    mntr.cmds.columns=2
    return mntr
Example #45
0
File: DC.py Project: ivanovev/tmb
def get_mntr(dev):
    mntr = Data(name='status', send=True, io_cb=dev_io_cb)
    mntr.add('status', wdgt='alarm', trace_cb=alarm_trace_cb, fmt_cb=status_fmt_cb, msg='Power supply')
    add_status = lambda n, msg: mntr.add('status%d' % n, wdgt='alarm', send=False, trace_cb=alarm_trace_cb, fmt_cb=lambda val, read: status_fmt_cb(val,read,n), msg=msg)
    add_status(1, 'Ch1 (sig)')
    add_status(2, 'Ch2')
    add_status(3, 'Ch3 (br)')
    add_status(4, '(RXL < Thrs1) || (RXL > Thrs2)')
    add_status(5, 'BRL < ThrsB')
    mntr.add_page('mntr')
    mntr.add('5_5v', wdgt='entry', label='5.5V', state='readonly', msg='5.5V')
    mntr.add('rxl', wdgt='entry', label='RXL', state='readonly', msg='RX signal level')
    mntr.add('brl', wdgt='entry', label='BRL', state='readonly', msg='Beacon signal level')
    mntr.cmds.columns = 3
    return mntr
Example #46
0
def get_ctrl(dev):
    data = Data(name='atten', send=True, buttons=OD([('Write', write_cb)]), io_cb=util_io_cb)
    cmd_cb = lambda dev, cmd, val: spi_efc_cmd_cb(dev, cmd, val, ncpha='1', cpol='0')
    data.add('atten', label='Attenuation, dB', wdgt='spin', value=Data.spn(0, 31.5, .5), fmt_cb=fmt_cb, cmd_cb=cmd_cb)
    return data
Example #47
0
File: CSP.py Project: ivanovev/nio8
def get_ctrl(dev):
    ctrl = Data(name='CSP', send=True, io_cb=dev_io_cb)
    ctrl.add('modem1', label='Modem1 antenna', wdgt='combo', state='readonly', value=['Main', 'Reserve'], text='Main', fmt_cb=csp_fmt_cb)
    ctrl.add('modem2', label='Modem2 antenna', wdgt='combo', state='readonly', value=['Main', 'Reserve'], text='Main', fmt_cb=csp_fmt_cb)
    return ctrl
Example #48
0
def get_mntr(dev, cc=None):
    mntr = Data(io_cb=lambda d,c,v=None: 'QD2048.cmd %s %s %s' % (d['serial'], d['addr'], c))
    mntr.add_page('mntr0')
    aa = lambda k, send, msg: mntr.add(k, wdgt='alarm', send=send, msg=msg, cmd='FLT', fmt_cb=flt_fmt_cb)
    aa('CD', True, 'CD')
    aa('DEC', True, 'DEC')
    aa('RSYNTH', True, 'RSYNTH')
    mntr.add('EBNO', wdgt='entry', state='readonly', pack_forget=True, msg='Eb/No')
    mntr.add('BER', wdgt='entry', state='readonly', pack_forget=True, msg='BER')
    mntr.add_page('mntr1')
    mntr.add('EBNO', wdgt='entry', state='readonly', label='Eb/No')
    mntr.add('BER', wdgt='entry', state='readonly', label='BER')
    mntr.add('AGC', wdgt='entry', state='readonly', label='AGC')
    mntr.add('ROFFSET', wdgt='entry', state='readonly', label='ROFFSET')
    mntr.cmds.columns=2
    return mntr
Example #49
0
def get_mntr(dev):
    data = Data('mntr', send=True, io_cb=dev_serial_io_cb)
    data.add('fetch', wdgt='entry', msg='FETCh?', width=10, fmt_cb=fmt_cb)
    data.add('diff', wdgt='entry', msg='diff', width=10, fmt_cb=fmt_cb)
    return data
Example #50
0
def get_ctrl(dev):
    data = Data('TestControl', send=True, io_cb=dev_io_cb)
    data.add('ctrl1', label='Test ctrl value1', wdgt='spin', value={'min':0, 'max':50, 'step':0.001}, text='7')
    data.add('ctrl2', label='Test ctrl value2', wdgt='spin', value={'min':0, 'max':50, 'step':0.001}, text='15')
    return data
Example #51
0
def get_ctrl(dev):             
    data = Data(name='atten', send=True, io_cb=util_io_cb)
    cmd_cb = lambda dev, cmd, val: spi_efc_cmd_cb(dev, cmd, val, cpha='0', cpol='0')
    data.add('atten', label='Attenuation, dB', wdgt='spin', text='0', value=Data.spn(-13.5, 18, 0.5), fmt_cb=fmt_cb, cmd_cb=cmd_cb)
    return data
Example #52
0
File: BR1I.py Project: ivanovev/br
def get_mntr(dev):
    mntr = Data(io_cb=dev_io_cb)
    mntr.add_page('mntr', send=True)
    mntr.add('synth', wdgt='alarm', trace_cb=alarm_trace_cb, fmt_cb=synth_fmt_cb, msg='Synthesizer status')
    mntr.add('uout', wdgt='entry', state='readonly', msg='Uout, V')
    return mntr
Example #53
0
def get_ctrl(dev):
    ctrl_buttons = OD([('Reset', reset_cb), ('Read', read_cb), ('Write', write_cb)])
    data = Data(buttons=ctrl_buttons, io_cb=dev_io_cb)
    data.add_page('Mode', send=True)
    data.add('COMMON', label='Mode', wdgt='combo', state='readonly', value=['INDEPENDENT', 'PARALLEL', 'SERIES', 'DOUBLE'], fmt_cb=common_fmt_cb)
    data.add_page('Independent', send=True)
    data.add('SCH1V', label='Channel1, V', wdgt='spin', value=Data.spn(0,30,.01), fmt_cb=odp_fmt_cb)
    data.add('SCH1C', label='Channel1, A', wdgt='spin', value=Data.spn(0,3,.01), fmt_cb=odp_fmt_cb)
    data.add('SW1', label='Output1 enable', wdgt='combo', state='readonly', value=OD([('ON','0'), ('OFF','1')]))
    data.add('SCH2V', label='Channel2, V', wdgt='spin', value=Data.spn(0,30,.01), fmt_cb=odp_fmt_cb)
    data.add('SCH2C', label='Channel2, A', wdgt='spin', value=Data.spn(0,3,.01), fmt_cb=odp_fmt_cb)
    data.add('SW2', label='Output2 enable', wdgt='combo', state='readonly', value=OD([('ON','0'), ('OFF','1')]))
    data.add_page('Parallel', send=True)
    data.add('SPARAV', label='Output, V', wdgt='spin', value=Data.spn(0,30,.01), fmt_cb=odp_fmt_cb)
    data.add('SPARAC', label='Output, A', wdgt='spin', value=Data.spn(0,6,.01), fmt_cb=odp_fmt_cb)
    data.add('SW1', label='Output enable', wdgt='combo', state='readonly', value=OD([('ON','0'), ('OFF','1')]))
    data.add_page('Series', send=True)
    data.add('SSERIV', label='Output, V', wdgt='spin', value=Data.spn(0,60,.01), fmt_cb=odp_fmt_cb)
    data.add('SSERIC', label='Output, A', wdgt='spin', value=Data.spn(0,3,.01), fmt_cb=odp_fmt_cb)
    data.add('SW1', label='Output enable', wdgt='combo', state='readonly', value=OD([('ON','0'), ('OFF','1')]))
    data.add_page('PlusMinus', send=True)
    data.add('SDUAL1V', label='Output1, V', wdgt='spin', value=Data.spn(0,30,.01), fmt_cb=odp_fmt_cb)
    data.add('SDUAL1C', label='Output1, A', wdgt='spin', value=Data.spn(0,3,.01), fmt_cb=odp_fmt_cb)
    data.add('SDUAL2V', label='Output2, V', wdgt='spin', value=Data.spn(0,30,.01), fmt_cb=odp_fmt_cb)
    data.add('SDUAL2C', label='Output2, A', wdgt='spin', value=Data.spn(0,3,.01), fmt_cb=odp_fmt_cb)
    data.add('SW1', label='Output enable', wdgt='combo', state='readonly', value=OD([('ON','0'), ('OFF','1')]))
    return data
Example #54
0
def get_mntr(dev):
    data = Data(name='mntr', io_cb=lambda d,c: util_io_cb(d,c,prefix='ALT'))
    data.add('pio', label='IN', wdgt='entry', state='readonly', cmd_cb=alt_cmd_cb, send=True)
    return data
Example #55
0
def get_mntr(dev):
    data = Data('TestMonitor', send=True, io_cb=dev_io_cb)
    data.add('mntr1', wdgt='entry', msg='Test mntr value1', width=20)
    data.add('mntr2', wdgt='entry', msg='Test mntr value2', width=20)
    return data
Example #56
0
 def train(self, sess, X_train, Y_train, X_test, Y_test, num_epoch=1000):
     sess.run(self.init_op)
     # 随机生成器需要fit总体样本数据
     datagen = util.get_generator()
     saver = tf.train.Saver()
     # 因为datagen的特殊需求(bacthsize需要能够整除训练集总个数,并且这里样本也少,直接全体当batchsize)
     split = 500
     batch_size = int(len(X_train) / split)  #取split使得尽量为200左右
     if len(
             X_train
     ) % split != 0:  #这里仅仅是因为图片生成那里要求batchsize需要能够和输入数据个数 整除 所以如此做以确保这一点
         remove = len(X_train) % split
         X_train = X_train[:-1 *
                           remove]  #如果后续数据多了大可以不必进行图片生成或者图片数据很多却依然做图片生成时则batch_size和这个可能需要再调整
         Y_train = Y_train[:-1 * remove]
     print('batch_size:', batch_size)
     for e in range(num_epoch):
         yieldData = Data(X_train, Y_train)
         print('Epoch', e)
         batches = 0
         if e != 0 and e % 5 == 0:
             saver.save(sess, 'savedmodel/' + str(e) + 'model')
         for x_batch, y_batch in datagen.flow(X_train,
                                              Y_train,
                                              batch_size=batch_size,
                                              save_to_dir=None):
             #print(x_batch[0])
             #print(y_batch[0])
             if batches % 100 == 0:
                 print('batch: ', batches)
                 '''训练集'''
                 accuval, scoreval1, scoreval2, scoreval3, scoreval4, scoreval5, scoreval6, scoreval7, lengthval, proval = sess.run(
                     [
                         self.accuracy, self.score1, self.score2,
                         self.score3, self.score4, self.score5, self.score6,
                         self.score7, self.length, self.probabi
                     ],
                     feed_dict={
                         self.X: x_batch,
                         self.keep_prob: 1,
                         self.y: y_batch
                     })
                 print("Train accuracy:", accuval)
                 if batches == split:
                     print('train')
                     predictions = self.makeprint(scoreval1, scoreval2,
                                                  scoreval3, scoreval4,
                                                  scoreval5, scoreval6,
                                                  scoreval7, lengthval,
                                                  proval)
                     a = sess.run(predictions)
                     print(a.shape)
                     print(a)
                     print(y_batch)
                 '''测试集'''
                 yieldTest = Data(X_test, Y_test)
                 tmp = 0
                 for b_test_x, b_test_y in yieldTest.get_next_batch(1000):
                     accuval, scoreval1, scoreval2, scoreval3, scoreval4, scoreval5, scoreval6, scoreval7, lengthval, proval = sess.run(
                         [
                             self.accuracy, self.score1, self.score2,
                             self.score3, self.score4, self.score5,
                             self.score6, self.score7, self.length,
                             self.probabi
                         ],
                         feed_dict={
                             self.X: b_test_x,
                             self.keep_prob: 1,
                             self.y: b_test_y
                         })
                     tmp = tmp + accuval
                     if batches == split:
                         print('test')
                         predictions = self.makeprint(
                             scoreval1, scoreval2, scoreval3, scoreval4,
                             scoreval5, scoreval6, scoreval7, lengthval,
                             proval)
                         a = sess.run(predictions)
                         #print(a.shape)
                         #print(a)
                         #print(b_test_y)
                 print("Test accuracy:", tmp / 5)
                 if batches == split:
                     batches = 0
                     break
             if batches <= split:
                 _, lossval = sess.run(
                     [self.train_op, self.loss],
                     feed_dict={
                         self.X: x_batch,
                         self.keep_prob: self.keep_prob_train,
                         self.y: y_batch
                     })
                 if batches % 25 == 0:
                     print("loss:", lossval)
             batches += 1
             #使用原始数据进行迭代
         for i in xrange(1):
             for batch_X, batch_Y in yieldData.get_next_batch(batch_size):
                 lossval, scoreval = sess.run(
                     [self.train_op, self.loss],
                     feed_dict={
                         self.X: batch_X,
                         self.keep_prob: self.keep_prob_train,
                         self.y: batch_Y
                     })
Example #57
0
 def bank_data(self):
     data = Data(name='Bank %d' % len(self.data))
     data.add('R', label='(R) Decimation factor', wdgt='spin', text=100, value=Data.spn(1,127), trace_cb=self.Fo_upd_trace_cb)
     data.add('M', label='(M) Differential delay', wdgt='spin', text=1, value=Data.spn(1,127))
     data.add('N', label='(N) Number of stages', wdgt='spin', text=5, value=Data.spn(1,127), msg='number of cascaded filters')
     data.add('Fs', label='Fs, MHz', wdgt='spin', text=5, value=Data.spn(1,100,.1), msg='Sampling freq in MHz before decimation', trace_cb=self.Fo_upd_trace_cb)
     data.add('Fc', label='Fc, kHz', wdgt='spin', text=1, value=Data.spn(1,1000,1), msg='Pass band edge in kHz', trace_cb=self.Fo_upd_trace_cb)
     data.add('Fo', label='Fo', wdgt='entry', state='readonly', msg='Fo = R*Fc/Fs; Normalized Cutoff freq; 0<Fo<=0.5/M')
     data.add('L', label='(L) Filter order', wdgt='spin', text=32, value=Data.spn(2,128,2), msg='Filter order; must be even')
     data.add('fmt', label='format', wdgt='combo', state='readonly', text='double', value=['double', 'int'], trace_cb=lambda *args: self.bank_update())
     data.add('nbits', label='# of bits', wdgt='spin', value=Data.spn(4, 16), text='8', trace_cb=lambda *args: self.bank_update())
     self.Fo_upd_trace_cb('R', data)
     if len(self.data):
         data.cmds['fmt'].text = self.data.get_value('fmt')
         data.cmds['nbits'].text = self.data.get_value('nbits')
         data.cmds['ntaps'].text = self.data.get_value('ntaps')
     return data