Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Esto debería mejorar bastante la velocidad del modelo #2

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

VichoReyes
Copy link
Collaborator

@VichoReyes VichoReyes commented Feb 28, 2020

Todavía faltan algunas cosas eso sí. Por ejemplo, como cambié la función select_rules por otra, el rmap no se va a poblar automáticamente con el entrenamiento. Ahí tienes que decidir si eliminarlo o poblarlo intencionalmente. Por el motivo anterior, no funciona el ejemplo del breast cancer, ya que el main intenta usar directamente el rmap. La función select_rules tuya no la he eliminado porque se usa en varias partes además de forward. Deberíamos ver qué hacer al respecto.

Además, ya no tiene mucho sentido el flag "precompute_rules" porque la matriz de r x n booleanos se hará igual.

@VichoReyes
Copy link
Collaborator Author

Antes:

antes

Después:

despues

@Sergio-P
Copy link
Owner

Me da el siguiente error:

File ".../dsgd/DSModelMultiQ.py", line 67, in forward
    qt[~sel] = 1
TypeError: ~ (operator.invert) is only implemented on byte tensors

Estoy usando pandas-1.0.1

@VichoReyes
Copy link
Collaborator Author

@Sergio-P No es tema de pandas, es de pytorch. Hace poco añadieron el tipo bool y si usas la versión 1.3 te tira warnings si usas uint8 para expresar cosas booleanas (que es como se hacía antes). La parte tonta es que si usas 1.0.1 el tipo bool está implementado, pero not no está implementado. Decidí usarlo igual porque mejor ser compatible con el futuro que con el pasado, no?
Lo otro que se puede hacer es negar cada bool al construir la matriz, para que sea compatible con ambas versiones, pero supongo que lo hará un poco más lento (no muy apreciable eso sí). Qué prefieres?

The negation operator isn't implemented for torch.bool tensors. This
commit does the negations using simple python booleans as a workaround.
@VichoReyes
Copy link
Collaborator Author

Ahí va

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants