[QGIS-Developer] Just in time: Seeking mentors for development of a Deep Learning model applied to Remote Sensing Data

Evandro Carrijo evandro.taquary at gmail.com
Fri Mar 23 09:10:37 PDT 2018


Akbar,

Answering your remarks:

>
>    1. Even when users want to train a model themselves, the environment
>    in Python Plugin wouldn't make it easy e.g. for running on GPU
>
> I'will perform tests with this issue but, in principle, I think it's not
impossible to make use of Tensorflow/CUDA driver from within the Plugin.

>
>    1. Designing a network is an art in itself. The goal of the plugin
>    should be clear, to facilitate users who are familiar with DL or for
>    general QGIS users? to create really good models or to apply the models? (I
>    feel that if it is the first, QGIS is not the best framework to do it)
>
>  The plugin will not be used to design RNN models/architectures. I will
design the RNN architecture and this will be the main activity of the project.
The Plugin will only ship the created (untrained) RNN, which in turn will
be trained with the user's data to generate a trained model.

>
>    1. Transfer learning is not out of the box (I wrote my thesis about
>    this). It depends on many things from the architecture itself to the data
>    that it was originally trained on. Things like this would not interest
>    general QGIS users in my opinion.
>
> Transfer learning is an idea that could work well in future version of the
Plugin. This Plugin feature could be offered to the user transparently, and
probably will be very useful to that kind of data, which share a lot of low
level features.

It is truth that designing a model is an art itself and could take a lot of
time of my project. The ideas proposed in my previous e-mail could also lie
at the *future work *session of the project, but, at time, they act like
good motivations to start the development of a new plugin that makes use of
Deep Learning Algorithms.

Cheers



> On Fri, Mar 23, 2018 at 3:35 PM, Evandro Carrijo <
> evandro.taquary at gmail.com> wrote:
>
>> Hello Akbar,
>>
>> This is an important remark. The Plugin could provide three scenarios at
>> all:
>>
>>    1. Train the model from scratch (when there's sufficient
>>    computational resources);
>>    2. Use Transfer Learning, that is, use models with pre-trained
>>    weights;
>>    3. Like you suggest, fetch the desired model from a *zoo platform* suitable
>>    to his data.
>>
>> An important caveat, although, is that the models can be very
>> region-specific, that is when the scenarios 1 and 2 are applicable. Also,
>> user can fetch well consolidated models from the *model zoo platform* as
>> basis and tune their models as of them.
>>
>> I'm going to write my proposal right away, so that ideas are going to
>> take place. As soon as I have the first version of it I will share with you
>> guys.
>>
>> Thank your for you precious advices!
>>
>> Cheers
>>
>> 2018-03-23 11:12 GMT-03:00 Akbar Gumbira <akbargumbira at gmail.com>:
>>
>>> Hi (again),
>>>
>>>
>>>> The RNN model can then be shipped into a QGIS Plugin with a convenient
>>>> interface such that one could accomplish the following tasks:
>>>>
>>>>    - Select the input data;
>>>>
>>>>
>>>>    - Adjust some model hyperparameters (if desirable);
>>>>
>>>>
>>>>    - Train the RNN;
>>>>
>>>>
>>>>    - Export the generated model for persistence;
>>>>
>>>>
>>>>    - Use the model to produce a LCLU map for the specified targets.
>>>>
>>>> The idea is to start a new Plugin that use not only RNN models, but, in
>>>> the future, incorporate many other novel approaches to perform accurate LCLU
>>>> maps, like semantic segmentation using U-Nets and a combination of the two
>>>> approaches.
>>>>
>>> Not everyone probably wants (or has the resources) to train the data.
>>> Why not, for example, have a model zoo platform where users can share their
>>> models for particular defined classifications? or will the training always
>>> be lightweight and instant?
>>>
>>> Cheers
>>>
>>>
>>> On Fri, Mar 23, 2018 at 2:52 PM, Evandro Carrijo <
>>> evandro.taquary at gmail.com> wrote:
>>>
>>>> Hello there!
>>>>
>>>> I'm a Computer Science Master's Degree student whose research if
>>>> focused on Deep Learning algorithms applied to Remote Sensing. Currently
>>>> working at the Laboratory of Image Processing and Geoprocessing
>>>> <https://github.com/lapig-ufg> settled at Federal University of Goiás
>>>> - Brazil. I'm also member of the High Performance Computing group of the
>>>> same university (more information here
>>>> <http://dgp.cnpq.br/dgp/espelhogrupo/7985061476854055>).
>>>>
>>>> Below I present an idea to explain how I can contribute to OSGeo/QGIS
>>>> community and I'm seeking for mentors interested in assist my development.
>>>> Please, feel free to argue me any matter about the project idea.
>>>>
>>>> I would also appreciate a lot if you guys indicate a potential
>>>> interested mentor to my project idea.
>>>>
>>>> Hope there's some Interested ones out there!
>>>>
>>>> Idea
>>>>
>>>> The increasing number of sensors orbiting the earth is systematically
>>>> producing larger volumes of data, with better spatiotemporal resolutions.
>>>> To deal with that, better accurate machine learning approaches, such as
>>>> Deep Learning (DL), are needed to transform raw data into applicable
>>>> Information. Several DL architectures (e.g. CNN, semantic segmentation)
>>>> rely only at spatial dimension to perform, for example, land-cover/land-use
>>>> (LCLU) maps, disregarding the temporal dependencies between pixels
>>>> observations over the time. Also, high-res remote sensing data (e.g.
>>>> Planet, Sentinel) may provide more consistent time-series, that can be use
>>>> in the identification of important LCLU classes, like crop, pastureland and
>>>> grasslands.
>>>>
>>>> This potential can be explored using Recurrent Neural Networks (RNN), a
>>>> specific family of DL approaches which can take into account time
>>>> dimension. A promising project idea would be implement a RNN approach (e.g.
>>>> LSTM) to classify, for example, a Sentinel time-series, that will organize
>>>> and preprocess the input data set (e.g. labeled time-series), calibrate and
>>>> evaluate a RNN model, and finally classify an entire region (i.e. 2 or 3
>>>> scenes) to produce a map for one or more LCLU class. It will be great
>>>> evaluate the accuracy and the spatial consistent of a map produced with a
>>>> RNN approach.
>>>>
>>>> The RNN model can then be shipped into a QGIS Plugin with a convenient
>>>> interface such that one could accomplish the following tasks:
>>>>
>>>>
>>>>    - Select the input data;
>>>>    - Adjust some model hyperparameters (if desirable);
>>>>    - Train the RNN;
>>>>    - Export the generated model for persistence;
>>>>    - Use the model to produce a LCLU map for the specified targets.
>>>>
>>>> The idea is to start a new Plugin that use not only RNN models, but, in
>>>> the future, incorporate many other novel approaches to perform accurate LCLU
>>>> maps, like semantic segmentation using U-Nets and a combination of the two
>>>> approaches.
>>>>
>>>> A simple example on classifying LCLU with two classes (pastureland and
>>>> non-pastureland):
>>>>
>>>> [image: itapirapua]
>>>> <https://user-images.githubusercontent.com/37085598/37687055-cc5236a8-2c78-11e8-8892-d113df44e235.jpg>
>>>> *Target region (input)*
>>>>
>>>> [image: itapirapua_ref]
>>>> <https://user-images.githubusercontent.com/37085598/37732806-ec792782-2d24-11e8-8ad9-18867768e998.jpg>
>>>> *Generated LCLU map (output)*
>>>> Best,
>>>>
>>>> Evandro Carrijo Taquary
>>>> Federal University of Goiás
>>>>
>>>> _______________________________________________
>>>> QGIS-Developer mailing list
>>>> QGIS-Developer at lists.osgeo.org
>>>> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>>>> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>>>>
>>>
>>>
>>>
>>> --
>>>
>>> *Akbar Gumbira *
>>> *www.akbargumbira.com <http://www.akbargumbira.com>*
>>>
>>
>>
>
>
> --
>
> *Akbar Gumbira *
> *www.akbargumbira.com <http://www.akbargumbira.com>*
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20180323/36a2493f/attachment-0001.html>


More information about the QGIS-Developer mailing list