Python autograd.numpy.abs() Examples
The following are 30
code examples of autograd.numpy.abs().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
autograd.numpy
, or try the search function
.
Example #1
Source File: data.py From kernel-gof with MIT License | 6 votes |
def _blocked_gibbs_next(self, X, H): """ Sample from the mutual conditional distributions. """ dh = H.shape[1] n, dx = X.shape B = self.B b = self.b # Draw H. XB2C = np.dot(X, self.B) + 2.0*self.c # Ph: n x dh matrix Ph = DSGaussBernRBM.sigmoid(XB2C) # H: n x dh H = (np.random.rand(n, dh) <= Ph)*2 - 1.0 assert np.all(np.abs(H) - 1 <= 1e-6 ) # Draw X. # mean: n x dx mean = old_div(np.dot(H, B.T),2.0) + b X = np.random.randn(n, dx) + mean return X, H
Example #2
Source File: density.py From kernel-gof with MIT License | 6 votes |
def __init__(self, means, variances, pmix=None): """ means: a k x d 2d array specifying the means. variances: a one-dimensional length-k array of variances pmix: a one-dimensional length-k array of mixture weights. Sum to one. """ k, d = means.shape if k != len(variances): raise ValueError('Number of components in means and variances do not match.') if pmix is None: pmix = old_div(np.ones(k),float(k)) if np.abs(np.sum(pmix) - 1) > 1e-8: raise ValueError('Mixture weights do not sum to 1.') self.pmix = pmix self.means = means self.variances = variances
Example #3
Source File: density.py From kernel-gof with MIT License | 6 votes |
def __init__(self, means, variances, pmix=None): """ means: a k x d 2d array specifying the means. variances: a k x d x d numpy array containing a stack of k covariance matrices, one for each mixture component. pmix: a one-dimensional length-k array of mixture weights. Sum to one. """ k, d = means.shape if k != variances.shape[0]: raise ValueError('Number of components in means and variances do not match.') if pmix is None: pmix = old_div(np.ones(k),float(k)) if np.abs(np.sum(pmix) - 1) > 1e-8: raise ValueError('Mixture weights do not sum to 1.') self.pmix = pmix self.means = means self.variances = variances
Example #4
Source File: data.py From kernel-gof with MIT License | 6 votes |
def __init__(self, means, variances, pmix=None): """ means: a k x d 2d array specifying the means. variances: a k x d x d numpy array containing k covariance matrices, one for each component. pmix: a one-dimensional length-k array of mixture weights. Sum to one. """ k, d = means.shape if k != variances.shape[0]: raise ValueError('Number of components in means and variances do not match.') if pmix is None: pmix = old_div(np.ones(k),float(k)) if np.abs(np.sum(pmix) - 1) > 1e-8: raise ValueError('Mixture weights do not sum to 1.') self.pmix = pmix self.means = means self.variances = variances
Example #5
Source File: demo_plotter.py From momi2 with GNU General Public License v3.0 | 6 votes |
def goto_time(self, t, add_time=True): # if exponentially growing, add extra time points whenever # the population size doubles if self.curr_g != 0 and t < float('inf'): halflife = np.abs(np.log(.5) / self.curr_g) add_t = self.curr_t + halflife while add_t < t: self._push_time(add_t) add_t += halflife while self.time_stack and self.time_stack[0] < t: self.step_time(hq.heappop(self.time_stack)) self.step_time(t, add=False) if add_time: # put t on queue to be added when processing next event # (allows further events to change population size before plotting) self._push_time(t)
Example #6
Source File: optimize_accelerator.py From ceviche with MIT License | 6 votes |
def accel_gradient(eps_arr, mode='max'): # set the permittivity of the FDFD and solve the fields F.eps_r = eps_arr.reshape((Nx, Ny)) Ex, Ey, Hz = F.solve(source) # compute the gradient and normalize if you want G = npa.sum(Ey * eta / Ny) if mode == 'max': return -np.abs(G) / Emax(Ex, Ey, eps_r) elif mode == 'avg': return -np.abs(G) / Eavg(Ex, Ey) else: return -np.abs(G / E0) # define the gradient for autograd
Example #7
Source File: data.py From kernel-gof with MIT License | 6 votes |
def __init__(self, means, variances, pmix=None): """ means: a k x d 2d array specifying the means. variances: a one-dimensional length-k array of variances pmix: a one-dimensional length-k array of mixture weights. Sum to one. """ k, d = means.shape if k != len(variances): raise ValueError('Number of components in means and variances do not match.') if pmix is None: pmix = old_div(np.ones(k),float(k)) if np.abs(np.sum(pmix) - 1) > 1e-8: raise ValueError('Mixture weights do not sum to 1.') self.pmix = pmix self.means = means self.variances = variances
Example #8
Source File: geometry.py From AeroSandbox with MIT License | 6 votes |
def area_projected(self): # Returns the area of the wing as projected onto the XY plane (top-down view). area = 0 for i in range(len(self.xsecs) - 1): chord_eff = (self.xsecs[i].chord + self.xsecs[i + 1].chord) / 2 this_xyz_te = self.xsecs[i].xyz_te() that_xyz_te = self.xsecs[i + 1].xyz_te() span_le_eff = np.abs( self.xsecs[i].xyz_le[1] - self.xsecs[i + 1].xyz_le[1] ) span_te_eff = np.abs( this_xyz_te[1] - that_xyz_te[1] ) span_eff = (span_le_eff + span_te_eff) / 2 area += chord_eff * span_eff if self.symmetric: area *= 2 return area
Example #9
Source File: util.py From kernel-gof with MIT License | 6 votes |
def one_of_K_code(arr): """ Make a one-of-K coding out of the numpy array. For example, if arr = ([0, 1, 0, 2]), then return a 2d array of the form [[1, 0, 0], [0, 1, 0], [1, 0, 0], [0, 0, 1]] """ U = np.unique(arr) n = len(arr) nu = len(U) X = np.zeros((n, nu)) for i, u in enumerate(U): Ii = np.where( np.abs(arr - u) < 1e-8 ) #ni = len(Ii) X[Ii[0], i] = 1 return X
Example #10
Source File: test_gradients_fdfd.py From ceviche with MIT License | 5 votes |
def test_Ez_forward(self): print('\ttesting forward-mode Ez in FDFD') f = fdfd_ez(self.omega, self.dL, self.eps_r, self.pml) def J_fdfd(c): # set the permittivity f.eps_r = c * self.eps_r # set the source amplitude to the permittivity at that point Hx, Hy, Ez = f.solve(c * self.eps_r * self.source_ez) return npa.square(npa.abs(Ez)) \ + npa.square(npa.abs(Hx)) \ + npa.square(npa.abs(Hy)) grad_autograd_for = jacobian(J_fdfd, mode='forward')(1.0) grad_numerical = jacobian(J_fdfd, mode='numerical')(1.0) if VERBOSE: print('\tobjective function value: ', J_fdfd(1.0)) print('\tgrad (auto): \n\t\t', grad_autograd_for) print('\tgrad (num): \n\t\t', grad_numerical) self.check_gradient_error(grad_numerical, grad_autograd_for)
Example #11
Source File: test_gradients_fdfd.py From ceviche with MIT License | 5 votes |
def test_Ez_reverse(self): print('\ttesting reverse-mode Ez in FDFD') f = fdfd_ez(self.omega, self.dL, self.eps_r, self.pml) def J_fdfd(eps_arr): eps_r = eps_arr.reshape((self.Nx, self.Ny)) # set the permittivity f.eps_r = eps_r # set the source amplitude to the permittivity at that point Hx, Hy, Ez = f.solve(eps_r * self.source_ez) return npa.sum(npa.square(npa.abs(Ez))) \ + npa.sum(npa.square(npa.abs(Hx))) \ + npa.sum(npa.square(npa.abs(Hy))) grad_autograd_rev = jacobian(J_fdfd, mode='reverse')(self.eps_arr) grad_numerical = jacobian(J_fdfd, mode='numerical')(self.eps_arr) if VERBOSE: print('\tobjective function value: ', J_fdfd(self.eps_arr)) print('\tgrad (auto): \n\t\t', grad_autograd_rev) print('\tgrad (num): \n\t\t', grad_numerical) self.check_gradient_error(grad_numerical, grad_autograd_rev)
Example #12
Source File: linear_models.py From MLAlgorithms with MIT License | 5 votes |
def _add_penalty(self, loss, w): """Apply regularization to the loss.""" if self.penalty == "l1": loss += self.C * np.abs(w[1:]).sum() elif self.penalty == "l2": loss += (0.5 * self.C) * (w[1:] ** 2).sum() return loss
Example #13
Source File: Bustamante_Stroop_XOR_LVOC_Model_VZ.py From PsyNeuLink with Apache License 2.0 | 5 votes |
def adj_cost_fct(v): from math import e return e**(.25 * np.abs(v) - 1)
Example #14
Source File: kursawe.py From pymop with Apache License 2.0 | 5 votes |
def _evaluate(self, x, out, *args, **kwargs): l = [] for i in range(2): l.append(-10 * anp.exp(-0.2 * anp.sqrt(anp.square(x[:, i]) + anp.square(x[:, i + 1])))) f1 = anp.sum(anp.column_stack(l), axis=1) f2 = anp.sum(anp.power(anp.abs(x), 0.8) + 5 * anp.sin(anp.power(x, 3)), axis=1) out["F"] = anp.column_stack([f1, f2])
Example #15
Source File: ctp.py From pymop with Apache License 2.0 | 5 votes |
def calc_constraint(self, theta, a, b, c, d, e, f1, f2): return - (anp.cos(theta) * (f2 - e) - anp.sin(theta) * f1 - a * anp.abs(anp.sin(b * anp.pi * (anp.sin(theta) * (f2 - e) + anp.cos(theta) * f1) ** c)) ** d)
Example #16
Source File: schwefel.py From pymop with Apache License 2.0 | 5 votes |
def _evaluate(self, x, out, *args, **kwargs): out["F"] = 418.9829 * self.n_var - np.sum(x * np.sin(np.sqrt(np.abs(x))), axis=1)
Example #17
Source File: activations.py From MLAlgorithms with MIT License | 5 votes |
def softsign(z): return z / (1 + np.abs(z))
Example #18
Source File: optimize_mode_converter.py From ceviche with MIT License | 5 votes |
def viz_sim(epsr): """Solve and visualize a simulation with permittivity 'epsr' """ simulation = fdfd_ez(omega, dl, epsr, [Npml, Npml]) Hx, Hy, Ez = simulation.solve(source) fig, ax = plt.subplots(1, 2, constrained_layout=True, figsize=(6,3)) ceviche.viz.real(Ez, outline=epsr, ax=ax[0], cbar=False) ax[0].plot(input_slice.x*np.ones(len(input_slice.y)), input_slice.y, 'g-') ax[0].plot(output_slice.x*np.ones(len(output_slice.y)), output_slice.y, 'r-') ceviche.viz.abs(epsr, ax=ax[1], cmap='Greys'); plt.show() return (simulation, ax)
Example #19
Source File: test_gradients_fdfd.py From ceviche with MIT License | 5 votes |
def test_Hz_forward(self): print('\ttesting forward-mode Hz in FDFD') f = fdfd_hz(self.omega, self.dL, self.eps_r, self.pml) def J_fdfd(c): # set the permittivity f.eps_r = c * self.eps_r # set the source amplitude to the permittivity at that point Ex, Ey, Hz = f.solve(c * self.eps_r * self.source_hz) return npa.square(npa.abs(Hz)) \ + npa.square(npa.abs(Ex)) \ + npa.square(npa.abs(Ey)) grad_autograd_for = jacobian(J_fdfd, mode='forward')(1.0) grad_numerical = jacobian(J_fdfd, mode='numerical')(1.0) if VERBOSE: print('\tobjective function value: ', J_fdfd(1.0)) print('\tgrad (auto): \n\t\t', grad_autograd_for) print('\tgrad (num): \n\t\t', grad_numerical) self.check_gradient_error(grad_numerical, grad_autograd_for)
Example #20
Source File: test_gradients_fdfd.py From ceviche with MIT License | 5 votes |
def test_Hz_reverse(self): print('\ttesting reverse-mode Hz in FDFD') f = fdfd_hz(self.omega, self.dL, self.eps_r, self.pml) def J_fdfd(eps_arr): eps_r = eps_arr.reshape((self.Nx, self.Ny)) # set the permittivity f.eps_r = eps_r # set the source amplitude to the permittivity at that point Ex, Ey, Hz = f.solve(eps_r * self.source_hz) return npa.sum(npa.square(npa.abs(Hz))) \ + npa.sum(npa.square(npa.abs(Ex))) \ + npa.sum(npa.square(npa.abs(Ey))) grad_autograd_rev = jacobian(J_fdfd, mode='reverse')(self.eps_arr) grad_numerical = jacobian(J_fdfd, mode='numerical')(self.eps_arr) if VERBOSE: print('\tobjective function value: ', J_fdfd(self.eps_arr)) print('\tgrad (auto): \n\t\t', grad_autograd_rev) print('\tgrad (num): \n\t\t\n', grad_numerical) self.check_gradient_error(grad_numerical, grad_autograd_rev)
Example #21
Source File: test_gradients_fdfd_complex.py From ceviche with MIT License | 5 votes |
def test_Ez_forward(self): print('\ttesting forward-mode Ez in FDFD') f = fdfd_ez(self.omega, self.dL, self.eps_r, self.pml) def J_fdfd(c): # set the permittivity f.eps_r = c * self.eps_r # set the source amplitude to the permittivity at that point Hx, Hy, Ez = f.solve(c * self.eps_r * self.source_ez) return npa.square(npa.abs(Ez)) \ + npa.square(npa.abs(Hx)) \ + npa.square(npa.abs(Hy)) grad_autograd_for = jacobian(J_fdfd, mode='forward')(1.0) grad_numerical = jacobian(J_fdfd, mode='numerical')(1.0) if VERBOSE: print('\tobjective function value: ', J_fdfd(1.0)) print('\tgrad (auto): \n\t\t', grad_autograd_for) print('\tgrad (num): \n\t\t', grad_numerical) self.check_gradient_error(grad_numerical, grad_autograd_for)
Example #22
Source File: test_gradients_fdfd_complex.py From ceviche with MIT License | 5 votes |
def test_Hz_forward(self): print('\ttesting forward-mode Hz in FDFD') f = fdfd_hz(self.omega, self.dL, self.eps_r, self.pml) def J_fdfd(c): # set the permittivity f.eps_r = c * self.eps_r # set the source amplitude to the permittivity at that point Ex, Ey, Hz = f.solve(c * self.eps_r * self.source_hz) return npa.square(npa.abs(Hz)) \ + npa.square(npa.abs(Ex)) \ + npa.square(npa.abs(Ey)) grad_autograd_for = jacobian(J_fdfd, mode='forward')(1.0) grad_numerical = jacobian(J_fdfd, mode='numerical')(1.0) if VERBOSE: print('\tobjective function value: ', J_fdfd(1.0)) print('\tgrad (auto): \n\t\t', grad_autograd_for) print('\tgrad (num): \n\t\t', grad_numerical) self.check_gradient_error(grad_numerical, grad_autograd_for)
Example #23
Source File: test_gradients_fdfd_complex.py From ceviche with MIT License | 5 votes |
def tes1t_Hz_reverse(self): print('\ttesting reverse-mode Hz in FDFD') f = fdfd_hz(self.omega, self.dL, self.eps_r, self.pml) def J_fdfd(eps_arr): eps_r = eps_arr.reshape((self.Nx, self.Ny)) # set the permittivity f.eps_r = eps_r # set the source amplitude to the permittivity at that point Ex, Ey, Hz = f.solve(eps_r * self.source_hz, iterative=True) return npa.sum(npa.square(npa.abs(Hz))) \ + npa.sum(npa.square(npa.abs(Ex))) \ + npa.sum(npa.square(npa.abs(Ey))) grad_autograd_rev = jacobian(J_fdfd, mode='reverse')(self.eps_arr) grad_numerical = jacobian(J_fdfd, mode='numerical')(self.eps_arr) if VERBOSE: print('\tobjective function value: ', J_fdfd(self.eps_arr)) print('\tgrad (auto): \n\t\t', grad_autograd_rev) print('\tgrad (num): \n\t\t\n', grad_numerical) self.check_gradient_error(grad_numerical, grad_autograd_rev)
Example #24
Source File: primitives.py From ceviche with MIT License | 5 votes |
def out_fn(output_vector): # this function takes the output of each primitive and returns a real scalar (sort of like the objective function) return npa.abs(npa.sum(output_vector))
Example #25
Source File: optimize_box.py From ceviche with MIT License | 5 votes |
def intensity(eps_arr): eps_r = eps_arr.reshape((Nx, Ny)) # set the permittivity of the FDFD and solve the fields F.eps_r = eps_r Ex, Ey, Hz = F.solve(source) # compute the gradient and normalize if you want I = npa.sum(npa.square(npa.abs(Hz * probe))) return -I / I_H0 # define the gradient for autograd
Example #26
Source File: optimize_accelerator.py From ceviche with MIT License | 5 votes |
def Emax(Ex, Ey, eps_r): E_mag = npa.sqrt(npa.square(npa.abs(Ex)) + npa.square(npa.abs(Ey))) material_density = (eps_r - 1) / (eps_max - 1) return npa.max(E_mag * material_density) # average electric field magnitude in the domain
Example #27
Source File: optimize_1_3.py From ceviche with MIT License | 5 votes |
def measure_modes(Ez, probe_ind=0): return npa.abs(npa.sum(npa.conj(Ez)*probes[probe_ind]))
Example #28
Source File: optimize_1_3.py From ceviche with MIT License | 5 votes |
def viz_sim(epsr): """Solve and visualize a simulation with permittivity 'epsr' """ simulation = fdfd_ez(omega, dl, epsr, [Npml, Npml]) Hx, Hy, Ez = simulation.solve(source) fig, ax = plt.subplots(1, 2, constrained_layout=True, figsize=(6,3)) ceviche.viz.real(Ez, outline=epsr, ax=ax[0], cbar=False) ax[0].plot(input_slice.x*np.ones(len(input_slice.y)), input_slice.y, 'g-') for output_slice in output_slices: ax[0].plot(output_slice.x*np.ones(len(output_slice.y)), output_slice.y, 'r-') ceviche.viz.abs(epsr, ax=ax[1], cmap='Greys'); plt.show() return (simulation, ax)
Example #29
Source File: optimize_mode_converter.py From ceviche with MIT License | 5 votes |
def measure_modes(Ez): return npa.abs(npa.sum(npa.conj(Ez)*probe))
Example #30
Source File: linear_model.py From scikit-lego with MIT License | 5 votes |
def constraints(self, y_hat, y_true, sensitive, n_obs): if self.covariance_threshold is not None: n_obs = len(y_true[y_true == self.positive_target]) dec_boundary_cov = ( y_hat[y_true == self.positive_target] @ ( sensitive[y_true == self.positive_target] - np.mean(sensitive, axis=0) ) / n_obs ) return [cp.abs(dec_boundary_cov) <= self.covariance_threshold] else: return []