Options

Neural networks how to codify a time variable that sometimes does not apply

PPPP Member Posts: 9 Contributor II
edited August 2019 in Help
I have a data set with water pipe failures, some had failures others not.
Variables: Pipe Age, Time failure (difference between failure time and time pipe installation, or between failures), number of previous failures and a label  Fail(yes or no ).
ID|Age| TimeFailure|NpreviousF|Fail
10|20  |   T1             |   0             |  Y
10|20  |   T2             |   1             |  Y
10|20  |   T3             |   2             |  Y
50|20  |                    |   0             |  N

My difficulty is with pipe 50, how to codify TimeFailure since the pipe never failed.

Thanks for your attention
Paulo Praça

Best Answer

Answers

  • Options
    varunm1varunm1 Moderator, Member Posts: 1,207 Unicorn
    Hello @PP

    If you are asking to add some value in place of missing value, you can use the "replace missing values" operator. You can input zero in place of that value, it might not transmit any signal to next layer (if you are building multilayer neural network), but there is still a chance it is learning from that zero inputs as well.

    Hope this helps.
    Regards,
    Varun
    https://www.varunmandalapu.com/

    Be Safe. Follow precautions and Maintain Social Distancing

  • Options
    PPPP Member Posts: 9 Contributor II
    Tanks for your answer varunm.

    I have been scratch my head in how to put my problem. I have a network of water pipes and I want to predict their failures in a time Tn.
    Assume installation time is T0. I feel that I have to maintain information of individual time failures and how many times they failed.
    Since my last post I have changed my mind and may be this is a better solution:

    ID |Age           | NpreviousFails | Fail
    10 |  T1-T0      |          0             |  Y
    10 |  T2-T1      |          1             |  Y
    10 |  T3-T2      |          2             |  Y
    10 |  Tn-T3      |          2             |  N
    50 |   Tn           |          0            |   N

    So pipe ID=10 had 3 failures since T0 to Tn ( T1, T2 and T3) and in the period from T3 to Tn doesn't failed. 
    Pipe 50 never had failed.

    My intention is train a supervised algorithm (NN or other) and in Tn+5(years) realize which pipes will fail
    What do you think, the problem is well posed

    Many thanks,
    PP



     
  • Options
    varunm1varunm1 Moderator, Member Posts: 1,207 Unicorn
    edited August 2019
    Hello @PP

    This is fine, sorry I am not much aware of your data. My question is based on the attribute name "Age", I know you are trying to look at " how long each installation lasted and it depends on the installation time and failure (replacement) time. I assume Tn is the current period when you are accessing data and your formula makes sense to me for ID 10. If the installation date of ID 50 is different then just keeping Tn is not better I guess, for this,you need to Do Tn-Ti(installation date). I am not sure if you have that data or not, it is just my thought, again I am not much aware of your data in real-world and making some mathematical assumptions.

    If you are not bothered about the installation time in age, I think the current one seems fine.
    Regards,
    Varun
    https://www.varunmandalapu.com/

    Be Safe. Follow precautions and Maintain Social Distancing

  • Options
    PPPP Member Posts: 9 Contributor II
    Hello,
    yes you are write, Tn is the current period when I'm  accessing data. And in ID50 I made a mistake, as you said should be:
    50 |   Tn - T0          |          0            |   N

    Age is the life time until a fail, between fails, or to the end of the analysis period.

    Many tanks again for you attention

    Paulo Praça

Sign In or Register to comment.