Giter Site home page Giter Site logo

rindow / rindow-neuralnetworks Goto Github PK

View Code? Open in Web Editor NEW
73.0 10.0 10.0 616 KB

Neural networks library for machine learning on PHP

Home Page: https://rindow.github.io/neuralnetworks

License: BSD 3-Clause "New" or "Revised" License

PHP 100.00%
neural-network php machine-learning deep-learning dnn cnn rnn recurrent-neural-networks convolutional-neural-networks ml opencl gpgpu gpu php8 openblas

rindow-neuralnetworks's Introduction

Rindow Neural networks

Status: Build Status Downloads Latest Stable Version License

Rindow Neural Network Library is a high-level neural network library for deep learning.

Overview

Like Keras in Python, you can easily write network models in PHP.

Website:

Speeding up

The external libraries rindow-matlib and OpenBLAS can be used to perform calculations at speeds close to CPU versions of TensorFlow. Models trained on laptops are available on popular web hosting. Deep learning is also available on popular PHP web hosting services.

GPU acceleration

It supports GPU acceleration using OpenCL. You can also use GPUs other than n-vidia if they support OpenCL. It can also be used with an integrated GPU installed in your laptop.

Linked library

  • Rindow Math Matrix: Scientific calculation library
  • Rindow Matlib: A fast matrix calculation library suitable for machine learning
  • OpenBLAS: Fast Matrix Arithmetic Library
  • Rindow Math Plot: Visualize machine learning results
  • OpenCL: GPU computational programming interface
  • CLBlast: High-speed matrix calculation library using OpenCL

Required environment

  • PHP 8.1, 8.2, 8.3
  • For PHP 7.x, 8.0 environments, use Release 1.x.

Install

Please install using Composer.

$ composer require rindow/rindow-neuralnetworks
$ composer require rindow/rindow-math-plot

If you use it as is, it will take time to learn. In order to increase speed, we strongly recommend that you install a high-speed calculation library.

Please set up an external library.

Prebuilt binaries:

Please set up according to your environment. Click here for detailed instructions.

$ composer require rindow/rindow-math-matlibffi

memory expansion:

Depending on the amount of data you use, you may need to increase the maximum amount of memory that PHP uses.

Especially when dealing with image data, the amount of sample data becomes enormous and requires more memory capacity than expected.

For example, change memory_limit in php.ini as follows.

memory_limit = 8G

Model description

The sample directory provides source code for simple image learning.

Please run as follows:

$ RINDOW_MATH_PLOT_VIEWER=/path/to/viewer
$ export RINDOW_MATH_PLOT_VIEWER
$ mkdir samples
$ cd samples
$ cp ../vendor/rindow/rindow-neuralnetworks/samples/basic-image-clasification.php .
$ php basic-image-clasification.php

*Please specify an appropriate viewer for RINDOW_MATH_PLOT_VIEWER.

If done correctly, a graph of the learning process will be displayed.

GPU/OpenCL support

Please download the binary.

Set up the binary files according to your environment. Detailed instructions here https://github.com/rindow/rindow-math-matrix-matlibffi/

Please set environment variables.

$ RINDOW_NEURALNETWORKS_BACKEND=rindowclblast::GPU
$ export RINDOW_NEURALNETWORKS_BACKEND
$ cd samples
$ php basic-image-classification.php

*For RINDOW_NEURALNETWORKS_BACKEND, you can specify not only a name such as rindowclblast, but also the OpenCL device type and a set of Platform-ID and Device-ID. For example, "rindowclblast::GPU" or "rindowclblast::0,0"

rindow-neuralnetworks's People

Contributors

yuichiis avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rindow-neuralnetworks's Issues

Loading different model formats

I'm not too familiar with the model loading process but is it possible to use this library to load in different model formats (like h5) other than the provided .model extension?

P.S. amazing work on this project. It's been an incredibly useful tool for my organization.

How to implement this type of "Transformer" machine learning model with the "rindow-neuralnetworks" Package ???

Hi.

Please, we don't see in the documentation of rindow/rindow-neuralnetworks, the implementation of the Transformer machine learning model ( https://en.wikipedia.org/wiki/Transformer_(machine_learning_model) ).

So how to implement this type of Transformer machine learning model in PHP with the rindow/rindow-neuralnetworks Package ???

Thank you for directing us or giving us the link of the documentation that explains it.
Awaiting your reply.

What are the algorithms used by Google and Bing in artificial intelligence to provide a SHORT and EXACT answer ?

Hello.

I hope you're doing well.

Please, can you give us the name of each of the Machine and Deep Learning algorithms that can help us provide the most accurate and intelligent possible result exactly like Google does.
For example, when we ask Google: "Who is the President of the United States", Google returns the exact name of the current President of the USA who is: "Joe Biden".

So, what Artificial Intelligence Algorithms can solve each of this kind of problem exactly like search engines do ???

Does this kind of algorithm exist in "Rindow Neural Networks" ???

Thanks to answer please.

Installer without Composer

There are still people who do not use composer, or whose shared hosting service does not allow shell commands.
It would be nice to be able to download the project as a folder ready to upload to the server.
Your project is the most complete and the only one that implements a translator (wow!!!).
I have looked at the competition, Ruby, PHP-ML, etc. And this is definitely the most complete project.
Ah beautiful times when include_once() worked!!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.