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

Different/Alternative ml architecture #464

Closed
marcelklehr opened this issue Apr 29, 2021 · 2 comments
Closed

Different/Alternative ml architecture #464

marcelklehr opened this issue Apr 29, 2021 · 2 comments

Comments

@marcelklehr
Copy link

Hi there,

facerecognition is a really cool feature to have. I've been looking into how to do ML in PHP for some time and have come up with a somewhat hacky, but rather portable way to run neural networks:

https://github.com/marcelklehr/recognize ships with a node.js binary and runs tensorflow models with tfjs in a separate spawned node.js process. The beauty of this approach is that it requires zero setup on the part of the admin.

I've also discovered a nice node.js library for doing facerecognition: nextcloud/recognize#7

What do you think about switching to a node.js based ML backend?

@matiasdelellis
Copy link
Owner

Hi @marcelklehr
Congratulations on the application, I'm going to test it .. 😄
I had planned to do something similar using our infrastructure with the resnet34_1000_imagenet_classifier model. 😅

https://github.com/marcelklehr/recognize ships with a node.js binary and runs tensorflow models with tfjs in a separate spawned node.js process.

Your application is probably much larger than this one, the mere fact of adding the node binary, must add 100mb, and you must also add the models. I'm sure this causes more frustration for users when they can't download a 100 MB application. 😞

The beauty of this approach is that it requires zero setup on the part of the admin.

I can accept this point, but it is still a design decision. The only important setting is the image size (Do you want quality? Enlarge the images and it will be slow, do you want to be fast? Shrink the image and you will have half the faces). The rest of the settings 90% of people shouldn't even think about it, but there are 10% who probably need it.
These are problems that you will encounter if you want to add this feature. The same with the size of the application, they are things that we already live. 😅

I think nobody is scared of our application. Once you install pdib, the rest is very well documented.

I've also discovered a nice node.js library for doing facerecognition: nextcloud/recognize#7

As you can see, your proposed library uses the same neural network as us, therefore I am more than happy with our choice.

However, the face detector is different, and of course I am predisposed to evaluate them. To do this, the best you can do is modify the external model, using these libraries. See:

What do you think about switching to a node.js based ML backend?

Convince me that Mobilenet or any other offers us better results, and I can evaluate it

@marcelklehr
Copy link
Author

Thank you for your detailed answer. ❤️

I think nobody is scared of our application. Once you install pdib, the rest is very well documented.
[...] Convince me that Mobilenet or any other offers us better results, and I can evaluate it

My main goal with this proposal was making things easier. I see that you are convinced things are already easy. I tend to disagree, but I don't think I will be able to convince you otherwise.

Cheers!

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

No branches or pull requests

2 participants