BuddyBoss expande en el Mercado LMS con BuddyPress Plugins Gratuito para LearnDash y Sensei

Traducido del artículo: “BuddyBoss Expands Into LMS Market with Free BuddyPress Plugins for LearnDash and Sensei” de:

Sarah Gooding, julio 14 de 2015

En mayo, Michael Eisenwasser fundador de BuddyBoss compartió con los lectores de Tavern los desafíos de crear un negocio rentable en lo que es todavía un relativamente pequeño mercado para los temas y plugins BuddyPress. Los desarrolladores están construyendo nicho de redes sociales cada día, pero la oferta BuddyPress como una plataforma depende de la disponibilidad de complementos de terceras partes convincentes y fiables.
En los últimos dos meses, BuddyBoss se ha diversificado en servir al mercado LMS con plugins gratuitos BuddyPress integrados para LearnDash y Sensei, dos de las más populares soluciones LMS WordPress. Tanto BuddyPress para LearnDash y BuddyPress para Sensei fueron creados para trabajar con cualquier tema, pero así mismo están garantizados para trabajar de forma integrada con el nuevo tema de Aprendices Sociales de BuddyBoss. read more

Leer más » Comentar

Lo mejor de mi RSS del 31 de agosto al 6 de septiembre de 2015:

No sé por vuestra zona, pero por Andalucía Occidental después del más que caluroso julio que hemos tenido, estas temperaturas que estamos teniendo estos días las estábamos echando de menos. Dicen y yo también digo y compruebo por mí mismo que unos cuantos grados menos favorecen la productividad, mientras no entres ya en la parte “fría” del termómetro, así que nada, espero que estéis teniendo y hayáis tenido una buena vuelta al trabajo y que esté siendo productiva y poco frustrante. read more

Leer más » Comentar

Red neuronal convolucional – Theano

Aquí os dejo con un ejemplo (red_neuronal_convolucional.py) muy sencillo y claro para realizar una red neuronal convolucional.

import theano from theano import tensor as T from theano.sandbox.rng_mrg import MRG_RandomStreams as RandomStreams import numpy as np from Load import mnist from theano.tensor.nnet.conv import conv2d from theano.tensor.signal.downsample import max_pool_2d srng = RandomStreams() def floatX(X): return np.asarray(X, dtype=theano.config.floatX) def init_weights(shape): return theano.shared(floatX(np.random.randn(*shape) * 0.01)) def rectify(X): return T.maximum(X, 0.) def softmax(X): e_x = T.exp(X - X.max(axis=1).dimshuffle(0, 'x')) return e_x / e_x.sum(axis=1).dimshuffle(0, 'x') def dropout(X, p=0.): if p > 0: retain_prob = 1 - p X *= srng.binomial(X.shape, p=retain_prob, dtype=theano.config.floatX) X /= retain_prob return X def RMSprop(cost, params, lr=0.001, rho=0.9, epsilon=1e-6): grads = T.grad(cost=cost, wrt=params) updates = [] for p, g in zip(params, grads): acc = theano.shared(p.get_value() * 0.) acc_new = rho * acc + (1 - rho) * g ** 2 gradient_scaling = T.sqrt(acc_new + epsilon) g = g / gradient_scaling updates.append((acc, acc_new)) updates.append((p, p - lr * g)) return updates def model(X, w, w2, w3, w4, p_drop_conv, p_drop_hidden): l1a = rectify(conv2d(X, w, border_mode='full')) l1 = max_pool_2d(l1a, (2, 2)) l1 = dropout(l1, p_drop_conv) l2a = rectify(conv2d(l1, w2)) l2 = max_pool_2d(l2a, (2, 2)) l2 = dropout(l2, p_drop_conv) l3a = rectify(conv2d(l2, w3)) l3b = max_pool_2d(l3a, (2, 2)) l3 = T.flatten(l3b, outdim=2) l3 = dropout(l3, p_drop_conv) l4 = rectify(T.dot(l3, w4)) l4 = dropout(l4, p_drop_hidden) pyx = softmax(T.dot(l4, w_o)) return l1, l2, l3, l4, pyx trX, teX, trY, teY = mnist(onehot=True) trX = trX.reshape(-1, 1, 28, 28) teX = teX.reshape(-1, 1, 28, 28) X = T.tensor4(dtype='float64') Y = T.matrix() w = init_weights((32, 1, 3, 3)) w2 = init_weights((64, 32, 3, 3)) w3 = init_weights((128, 64, 3, 3)) w4 = init_weights((128 * 3 * 3, 625)) w_o = init_weights((625, 10)) noise_l1, noise_l2, noise_l3, noise_l4, noise_py_x = model(X, w, w2, w3, w4, 0.2, 0.5) l1, l2, l3, l4, py_x = model(X, w, w2, w3, w4, 0., 0.) y_x = T.argmax(py_x, axis=1) cost = T.mean(T.nnet.categorical_crossentropy(noise_py_x, Y)) params = [w, w2, w3, w4, w_o] updates = RMSprop(cost, params, lr=0.001) train = theano.function(inputs=[X, Y], outputs=cost, updates=updates, allow_input_downcast=True) predict = theano.function(inputs=[X], outputs=y_x, allow_input_downcast=True) for i in range(100): for start, end in zip(range(0, len(trX), 128), range(128, len(trX), 128)): cost = train(trX[start:end], trY[start:end]) print(np.mean(np.argmax(teY, axis=1) == predict(teX))) read more

Leer más » 1 Comentario

Botón

Leer más » 1 Comentario

Lo mejor de mi RSS del 24 al 30 de agosto:

Hoy es 30 de agosto y aunque el tiempo parece decirnos que vuelve el verano, la verdad es que mañana es casi septiembre y pasado será 1 de septiembre, así que la actividad volverá a carreteras, avenidas y calles. Las oficinas se llenarán y con ellas seréis muchos más los que leeréis todas estas entradas acumuladas en vuestro Feedly, así que vamos a seguir como cada semana con nuestro resumen semanal de noticias interesantes sobre Linux, software libre, desarrollo web y WordPress.

Esta semana la selección es la siguiente: read more

Leer más » Comentar

Red neuronal moderna – Theano

Aquí os dejo con un ejemplo (red_neuronal_moderna.py) muy sencillo y claro para realizar una red neuronal moderna.

import theano from theano import tensor as T from theano.sandbox.rng_mrg import MRG_RandomStreams as RandomStreams import numpy as np from Load import mnist srng = RandomStreams() def floatX(X): return np.asarray(X, dtype=theano.config.floatX) def init_weights(shape): return theano.shared(floatX(np.random.randn(*shape) * 0.01)) def rectify(X): return T.maximum(X, 0.) def softmax(X): e_x = T.exp(X - X.max(axis=1).dimshuffle(0, 'x')) return e_x / e_x.sum(axis=1).dimshuffle(0, 'x') def RMSprop(cost, params, lr=0.001, rho=0.9, epsilon=1e-6): grads = T.grad(cost=cost, wrt=params) updates = [] for p, g in zip(params, grads): acc = theano.shared(p.get_value() * 0.) acc_new = rho * acc + (1 - rho) * g ** 2 gradient_scaling = T.sqrt(acc_new + epsilon) g = g / gradient_scaling updates.append((acc, acc_new)) updates.append((p, p - lr * g)) return updates def dropout(X, p=0.): if p > 0: retain_prob = 1 - p X *= srng.binomial(X.shape, p=retain_prob, dtype=theano.config.floatX) X /= retain_prob return X def model(X, w_h, w_h2, w_o, p_drop_input, p_drop_hidden): X = dropout(X, p_drop_input) h = rectify(T.dot(X, w_h)) h = dropout(h, p_drop_hidden) h2 = rectify(T.dot(h, w_h2)) h2 = dropout(h2, p_drop_hidden) py_x = softmax(T.dot(h2, w_o)) return h, h2, py_x trX, teX, trY, teY = mnist(onehot=True) X = T.fmatrix() Y = T.fmatrix() w_h = init_weights((784, 625)) w_h2 = init_weights((625, 625)) w_o = init_weights((625, 10)) noise_h, noise_h2, noise_py_x = model(X, w_h, w_h2, w_o, 0.2, 0.5) h, h2, py_x = model(X, w_h, w_h2, w_o, 0., 0.) y_x = T.argmax(py_x, axis=1) cost = T.mean(T.nnet.categorical_crossentropy(noise_py_x, Y)) params = [w_h, w_h2, w_o] updates = RMSprop(cost, params, lr=0.001) train = theano.function(inputs=[X, Y], outputs=cost, updates=updates, allow_input_downcast=True) predict = theano.function(inputs=[X], outputs=y_x, allow_input_downcast=True) for i in range(100): for start, end in zip(range(0, len(trX), 128), range(128, len(trX), 128)): cost = train(trX[start:end], trY[start:end]) print(np.mean(np.argmax(teY, axis=1) == predict(teX))) read more

Leer más » 1 Comentario

superhacker

Leer más » 2 Comentarios

Lo mejor de mi RSS del 17 al 23 de agosto de 2015: WPML, Shotcut, WordPress 4.3 y batería

¿Qué tal van vuestras vacaciones? Nosotros estamos ya de vuelta al trabajo y con la vuelta a la rutina, como en cada cambio de semana, os traigo un nuevo resumen de lo mejor que he leído esta semana en Feedly, mi lector de canales RSS favorito. Veamos uno por uno.

Comenzamos hablando de cómo configurar WPML para conseguir tener un sitio web con WordPress en varios idiomas: Curso gratuito de WPML de Codection – Configuración inicial WPML No suelo editar muchos vídeos pero cuando tengo que hacerlo siempre uso: Shotcut, un impresionante editor de video – Ubunlog Si eres usuario de WordPress te habrás dado cuenta que ya está disponible la versión 4.3, ¿sabes sus novedades? WordPress 4.3 final ya disponible pero ¿merece la pena? – Ayuda WordPress Y su respectiva nota oficial en inglés en el sitio de WordPress: 

WordPress 4.3 “Billie” – WordPress read more

Leer más » Comentar

WordPress 4.3 mejora búsqueda de usuario y desactiva comentarios en las páginas por defecto

Traducido del artículo: “WordPress 4.3 Improves User Search and Turns Comments Off on Pages by Default” de:

Sarah Gooding julio 7 de 2015

WordPress 4.3 beta 1 fue puesto en manos de los probadores la semana pasada. Los que han estado siguiendo desarrollos 4.3 ya están familiarizados con los titulares de las principales características de esta versión, es decir. los nuevos iconos de sitio, gestión de menú en el personalizador y contraseñas más seguras. Sin embargo, también hay un par de mejoras menos conocidas que tendrán un impacto positivo en millones de usuarios de WordPress. read more

Leer más » 1 Comentario

Red neuronal clásica – Theano

Aquí os dejo con un ejemplo (red_neuronal_clasica.py) muy sencillo y claro para realizar una red neuronal clásica.

import theano from theano import tensor as T import numpy as np from Load import mnist from scipy.misc import imsave def floatX(X): return np.asarray(X, dtype=theano.config.floatX) def init_weights(shape): return theano.shared(floatX(np.random.randn(*shape) * 0.01)) def sgd(cost, params, lr=0.05): grads = T.grad(cost=cost, wrt=params) updates = [] for p, g in zip(params, grads): updates.append([p, p - g * lr]) return updates def model(X, w_h, w_o): h = T.nnet.sigmoid(T.dot(X, w_h)) pyx = T.nnet.softmax(T.dot(h, w_o)) return pyx trX, teX, trY, teY = mnist(onehot=True) X = T.fmatrix() Y = T.fmatrix() w_h = init_weights((784, 625)) w_o = init_weights((625, 10)) py_x = model(X, w_h, w_o) y_x = T.argmax(py_x, axis=1) cost = T.mean(T.nnet.categorical_crossentropy(py_x, Y)) params = [w_h, w_o] updates = sgd(cost, params) train = theano.function(inputs=[X, Y], outputs=cost, updates=updates, allow_input_downcast=True) predict = theano.function(inputs=[X], outputs=y_x, allow_input_downcast=True) for i in range(100): for start, end in zip(range(0, len(trX), 128), range(128, len(trX), 128)): cost = train(trX[start:end], trY[start:end]) print(np.mean(np.argmax(teY, axis=1) == predict(teX))) read more

Leer más » Comentar