Comments (2)
@anaisbetts Let's continue the discussion here on generating the model.
from model.
So to generate the model, there are a few different components as of the latest SQRXR 112. There are not full instructions and the source is not released for many of these parts, but I can briefly describe them and then we can discuss what might be useful. Amongst other things is a suite of hacky .NET tools for working with the dataset.
- The dataset. I cannot release the images themselves for copyright reasons; unfortunately, even the URL's may contain sensitive information as a number of them are obtained directly via browsing.
- A basic Winforms app for grading input images and creating the graded dataset.
- A special branch of Wingman Jr. (https://github.com/wingman-jr-addon/wingman_jr/tree/submit-image) that submits images from a browsing session to a local webserver tied in with the .NET tool. (See https://github.com/wingman-jr-addon/wingman_jr/blob/df0f00ef67c360e1833a872740e880cbafd7bd42/background.js#L219) The webserver ingests the image and stores it to be graded by the Winforms tool.
- Once the dataset is graded, the images and a QA csv file are pushed over to the GPU server for training. For me this is an old Supermicro with a K80 in my basement. An important script at this step is a simple one which opens each image using Tensorflow and then blacklists the image if it can't be parsed. Otherwise you get nasty exceptions that can halt training partway through on longer runs.
- The primary classification training script itself. Note that this is the piece that has changed most heavily; SQRXR 112 refers to this being the 112th experiment in the SQRXR family of experiments. These are all obviously not checked in, but the script is quite a hodge-podge of things. The output of this is the first stage that produces the SQRX classifier part of the model.
- A secondary training script that produces the "R" regression part of the model by optimizing for the ROC AUC using the last feature layer of the main classifier script as an input. Another important output of this script is a CSV that contains the threshold tradeoff for generating the ROC_VALUES in roc.js here: https://github.com/wingman-jr-addon/wingman_jr/blob/master/roc.js Note there is a .NET tool that does the basic transformation into JSON and that also decimates the number of outputs.
- A script that fuses together the SQRX and the R part of the models into the final SQRXR model.
- At this point the .h5 Keras model is transformed into the graph optimized TF.js model using the basic command line usage of the public TF.js converter tool. e.g.
tensorflowjs_converter --input_format keras --output_format tfjs_graph_model sqrxr_plus_best.h5 sqrxr_109b_graphopt
- The same web server that provides the image ingestion in 3 also has a mode to view a subset of the dataset along with the true ratings. This can be used in conjunction with the addon to verify that that the new model and the true ratings are in agreement.
There are a bunch of other more specialized tools but these are probably the ones of primary interest. I also did some work on CAM but had some difficulties.
Are there any of these parts that are of interest?
from model.
Related Issues (7)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from model.