本文整理汇总了Python中numpy.Infinity方法的典型用法代码示例。如果您正苦于以下问题:Python numpy.Infinity方法的具体用法?Python numpy.Infinity怎么用?Python numpy.Infinity使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类numpy
的用法示例。
在下文中一共展示了numpy.Infinity方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_constants
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import Infinity [as 别名]
def test_constants():
assert chainerx.Inf is numpy.Inf
assert chainerx.Infinity is numpy.Infinity
assert chainerx.NAN is numpy.NAN
assert chainerx.NINF is numpy.NINF
assert chainerx.NZERO is numpy.NZERO
assert chainerx.NaN is numpy.NaN
assert chainerx.PINF is numpy.PINF
assert chainerx.PZERO is numpy.PZERO
assert chainerx.e is numpy.e
assert chainerx.euler_gamma is numpy.euler_gamma
assert chainerx.inf is numpy.inf
assert chainerx.infty is numpy.infty
assert chainerx.nan is numpy.nan
assert chainerx.newaxis is numpy.newaxis
assert chainerx.pi is numpy.pi
示例2: prim
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import Infinity [as 别名]
def prim(self):
'''
Returns Prim's minimum spanninng tree
'''
big_f = set([])
costs = np.empty((self.n), dtype=object)
costs[:] = np.max(self.costs) + 1
big_e = np.empty((self.n), dtype=object)
big_q = set(range(self.n))
tree_edges = np.array([], dtype=object)
while len(big_q) > 0:
v = np.argmin(costs)
big_q.remove(v)
costs[v] = np.Infinity
big_f.add(v)
if big_e[v] is not None:
tree_edges = np.append(tree_edges, None)
tree_edges[-1] = (big_e[v], v)
for i, w in zip(range(len(self.FSs[v])), self.FSs[v]):
if w in big_q and self.FS_costs[v][i] < costs[w]:
costs[w] = self.FS_costs[v][i]
big_e[w] = v
return tree_edges
示例3: get_k
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import Infinity [as 别名]
def get_k(df, groupby, unknown=None):
"""
Return the k-anonymity level of a df, grouped by the specified columns.
:param df: The dataframe to get k from
:param groupby: The columns to group by
:type df: pandas.DataFrame
:type groupby: Array
:return: k-anonymity
:rtype: int
"""
df = _remove_unknown(df, groupby, unknown)
size_group = df.groupby(groupby).size()
if len(size_group) == 0:
return np.Infinity
return min(size_group)
示例4: bellman_ford
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import Infinity [as 别名]
def bellman_ford(self, source):
'''
Returns Labels-algorithm's shortest paths from source to all other
nodes, if the (directed) graph doesn't contains cycles
'''
if self.oriented is False:
print 'cannot apply bellman_ford, graph is not oriented'
return
dist = np.array([np.Infinity for x in range(self.n)], dtype=np.float32)
pred = np.empty((self.n), dtype=np.int)
pred[source] = source
dist[source] = 0
for i in np.arange(1, self.n):
for e in range(len(self.edges)):
if dist[self.edges[e][0]] + self.costs[e] < dist[self.edges[e][1]]:
dist[self.edges[e][1]] = dist[
self.edges[e][0]] + self.costs[e]
pred[self.edges[e][1]] = self.edges[e][0]
for e in range(len(self.edges)):
if dist[self.edges[e][1]] > dist[self.edges[e][0]] + self.costs[e]:
print 'Error, Graph contains a negative-weight cycle'
break
edges = np.array([], dtype=object)
for v in range(len(pred)):
edges = np.append(edges, None)
edges[-1] = [pred[v], v]
return edges # , prev, dist
示例5: floyd_warshall
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import Infinity [as 别名]
def floyd_warshall(self, source):
'''
Returns floyd_warshall's shortest paths from source to all other
nodes, if the (directed) graph doesn't contains negative cycles
'''
print '''warning! apply this algorithm only if constricted, it takes\\
O(n^3)!'''
print 'O(n^3) = O(', self.n**3, ')'
dist = np.empty((self.n, self.n), dtype=np.float32)
pred = np.zeros((self.n, self.n), dtype=np.int)
dist.fill(np.Infinity)
for v in range(self.n):
dist[v][v] = .0
for e in range(len(self.edges)):
u = self.edges[e][0]
v = self.edges[e][1]
dist[u][v] = self.costs[e]
pred[u][v] = v
for h in range(1, self.n):
for i in range(1, self.n):
for j in range(self.n):
if dist[i][h] + dist[h][j] < dist[i][j]:
dist[i][j] = dist[i][h] + dist[h][j]
pred[i][j] = pred[h][j]
for i in range(1, self.n):
if dist[i][i] < 0:
print 'Error! found negative cycle, thus the problem is inferiorly unlinmited'
return
edges = np.array([], dtype=object)
for v in range(len(pred)):
edges = np.append(edges, None)
edges[-1] = [pred[source][v], v]
return edges # , prev, dist
示例6: predict_log_proba
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import Infinity [as 别名]
def predict_log_proba(self, examples, dynamic_resource=None):
X, _, _ = self.get_feature_matrix(examples, dynamic_resource=dynamic_resource)
predictions = self._predict_proba(X, self._clf.predict_log_proba)
# JSON can't reliably encode infinity, so replace it with large number
for row in predictions:
_, probas = row
for label, proba in probas.items():
if proba == -np.Infinity:
probas[label] = _NEG_INF
return predictions
示例7: _psnr_differ
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import Infinity [as 别名]
def _psnr_differ(self, annotation_image, prediction_image):
prediction = np.asarray(prediction_image).astype(np.float)
ground_truth = np.asarray(annotation_image).astype(np.float)
height, width = prediction.shape[:2]
prediction = prediction[
self.scale_border:height - self.scale_border,
self.scale_border:width - self.scale_border
]
ground_truth = ground_truth[
self.scale_border:height - self.scale_border,
self.scale_border:width - self.scale_border
]
image_difference = (prediction - ground_truth) / 255. # rgb color space
r_channel_diff = image_difference[:, :, self.channel_order[0]]
g_channel_diff = image_difference[:, :, self.channel_order[1]]
b_channel_diff = image_difference[:, :, self.channel_order[2]]
channels_diff = (r_channel_diff * 65.738 + g_channel_diff * 129.057 + b_channel_diff * 25.064) / 256
mse = np.mean(channels_diff ** 2)
if mse == 0:
return np.Infinity
return -10 * math.log10(mse)
示例8: lt_factor
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import Infinity [as 别名]
def lt_factor(s, l, M, V, mp, p, gamma):
cVc = (V[l, l] - 2 * V[s, l] + V[s, s]) / 2.0
Vc = (V[:, l] - V[:, s]) / sq2
cM = (M[l] - M[s]) / sq2
cVnic = np.max([cVc / (1 - p * cVc), 0])
cmni = cM + cVnic * (p * cM - mp)
z = cmni / np.sqrt(cVnic + 1e-25)
if np.isnan(z):
z = -np.inf
e, lP, exit_flag = log_relative_gauss(z)
if exit_flag == 0:
alpha = e / np.sqrt(cVnic)
# beta = alpha * (alpha + cmni / cVnic);
# r = beta * cVnic / (1 - cVnic * beta);
beta = alpha * (alpha * cVnic + cmni)
r = beta / (1 - beta)
# new message
pnew = r / cVnic
mpnew = r * (alpha + cmni / cVnic) + alpha
# update terms
dp = np.max([-p + eps, gamma * (pnew - p)]) # at worst, remove message
dmp = np.max([-mp + eps, gamma * (mpnew - mp)])
d = np.max([dmp, dp]) # for convergence measures
pnew = p + dp
mpnew = mp + dmp
# project out to marginal
Vnew = V - dp / (1 + dp * cVc) * np.outer(Vc, Vc)
Mnew = M + (dmp - cM * dp) / (1 + dp * cVc) * Vc
if np.any(np.isnan(Vnew)):
raise Exception("an error occurs while running expectation "
"propagation in entropy search. "
"Resulting variance contains NaN")
# % there is a problem here, when z is very large
logS = lP - 0.5 * (np.log(beta) - np.log(pnew) - np.log(cVnic)) \
+ (alpha * alpha) / (2 * beta) * cVnic
elif exit_flag == -1:
d = np.NAN
Mnew = 0
Vnew = 0
pnew = 0
mpnew = 0
logS = -np.Infinity
elif exit_flag == 1:
d = 0
# remove message from marginal:
# new message
pnew = 0
mpnew = 0
# update terms
dp = -p # at worst, remove message
dmp = -mp
d = max([dmp, dp]) # for convergence measures
# project out to marginal
Vnew = V - dp / (1 + dp * cVc) * (np.outer(Vc, Vc))
Mnew = M + (dmp - cM * dp) / (1 + dp * cVc) * Vc
logS = 0
return Mnew, Vnew, pnew, mpnew, logS, d
示例9: get_coulomb_matrix
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import Infinity [as 别名]
def get_coulomb_matrix(numbers, coords, alpha=1, use_decay=False):
r"""
Return the coulomb matrix for the given coords and numbers.
.. math::
C_{ij} = \begin{cases}
\frac{Z_i Z_j}{\| r_i - r_j \|^\alpha} & i \neq j\\
\frac{1}{2} Z_i^{2.4} & i = j
\end{cases}
Parameters
----------
numbers : array-like, shape=(n_atoms, )
The atomic numbers of all the atoms
coords : array-like, shape=(n_atoms, 3)
The xyz coordinates of all the atoms (in angstroms)
alpha : number, default=6
Some value to exponentiate the distance in the coulomb matrix.
use_decay : bool, default=False
This setting defines an extra decay for the values as they get futher
away from the "central atom". This is to alleviate issues the arise as
atoms enter or leave the cutoff radius.
Returns
-------
top : array, shape=(n_atoms, n_atoms)
The coulomb matrix
"""
top = numpy.outer(numbers, numbers).astype(numpy.float64)
r = cdist(coords, coords)
if use_decay:
other = cdist([coords[0]], coords).reshape(-1)
r += numpy.add.outer(other, other)
r **= alpha
with numpy.errstate(divide='ignore', invalid='ignore'):
numpy.divide(top, r, top)
numpy.fill_diagonal(top, 0.5 * numpy.array(numbers) ** 2.4)
top[top == numpy.Infinity] = 0
top[numpy.isnan(top)] = 0
return top