Grokbase Groups Perl ai June 2002
FAQ
Hi,

I am new to the list and have recently acquired an interest in A.I. with
Perl. I would like, as an initial dip into the water so to speak, to know
what your thoughts on solving the following problem are? (how would you
solve and and using what?)

Basically, I am interested in monitoring the throughput of an interface on
my computer via MRTG / RRDtool (or _maybe_ even 'raw' data in a MySQL/Oracle
db) and would like to be able to do the following:-

1. Assume that my usage curve is a curve of some type, with the X-axis of a
particular graph being time and the Y axis is interface throughput. I want
the system to be able to 'learn' my usage pattern and determine what
'normal' is for a given hour, day, week, month.

2. I want to be able to be alerted when usage strays away from 'normal'.

What are your thoughts on how to achieve this? Would a neural network with
some appropriate training data be able to recognise a normal pattern and,
more importantly, any deviations from that pattern?

thanks for any advice,
regards,
Matt.


_________________________________________________________________
Join the world’s largest e-mail service with MSN Hotmail.
http://www.hotmail.com

Search Discussions

  • Andreas Marcel Riechert at Jun 26, 2002 at 5:01 pm

    "Matt Duggan" <mattski27@hotmail.com> writes:

    Hi,

    I am new to the list and have recently acquired an interest in
    A.I. with Perl. I would like, as an initial dip into the water so to
    speak, to know what your thoughts on solving the following problem
    are? (how would you solve and and using what?)

    Basically, I am interested in monitoring the throughput of an
    interface on my computer via MRTG / RRDtool (or _maybe_ even 'raw'
    data in a MySQL/Oracle db) and would like to be able to do the
    following:-

    1. Assume that my usage curve is a curve of some type, with the X-axis
    of a particular graph being time and the Y axis is interface
    throughput. I want the system to be able to 'learn' my usage pattern
    and determine what 'normal' is for a given hour, day, week, month.

    2. I want to be able to be alerted when usage strays away from 'normal'.

    What are your thoughts on how to achieve this? Would a neural network
    with some appropriate training data be able to recognise a normal
    pattern and, more importantly, any deviations from that pattern?
    This is probably a non AI problem. Before you investigate AI I
    would like to advise you to try to solve this problem with maths
    or lets say just the usuall statistics. IMHO, the chance that
    "learning" as defined in a AI context won't be neccessary is pretty
    high.

    HTH,

    Andreas
  • Mark Kvale at Jun 26, 2002 at 6:07 pm

    On Wednesday 26 June 2002 09:37, you wrote:
    Hi,

    I am new to the list and have recently acquired an interest in A.I. with
    Perl. I would like, as an initial dip into the water so to speak, to know
    what your thoughts on solving the following problem are? (how would you
    solve and and using what?)

    Basically, I am interested in monitoring the throughput of an interface on
    my computer via MRTG / RRDtool (or _maybe_ even 'raw' data in a
    MySQL/Oracle db) and would like to be able to do the following:-

    1. Assume that my usage curve is a curve of some type, with the X-axis of a
    particular graph being time and the Y axis is interface throughput. I want
    the system to be able to 'learn' my usage pattern and determine what
    'normal' is for a given hour, day, week, month.

    2. I want to be able to be alerted when usage strays away from 'normal'.

    What are your thoughts on how to achieve this? Would a neural network with
    some appropriate training data be able to recognise a normal pattern and,
    more importantly, any deviations from that pattern?

    thanks for any advice,
    regards,
    Matt.
    Well, neural nets are part of machine learning, and machine learning is a
    part of AI, so the question of whether a NN is useful here is relevant to
    perl-ai.

    In this case, it would be useful first to gather data and plot it. Does the
    resulting histogram look like a simple function? If so, fit that simple
    function to the histogram using least squares. Then you can compute the
    difference between current throughput and the function (or even the average
    histogram if you don't want to bother with the fit) and flag it if the
    difference goes above a certain threshold.

    If the function is more complicated, a neural net could be used, but it would
    be a lot of work. To train a neural network in a supervised fashion, you will
    need a number of instances of normal and abnormal usage to train the NN
    against. The quality of your classifier depends on the examples you use, the
    more the better.

    In general, if there is a simple rule of thumb you can cobble together to
    classify your data, I'd recommend you use it. NNs are good at detecting
    distributed patterns in data, but are overkill for simple decision criteria
    like difference thresholds.

    -Mark

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupai @
categoriesperl
postedJun 26, '02 at 4:45p
activeJun 26, '02 at 6:07p
posts3
users3
websiteperl.org

People

Translate

site design / logo © 2021 Grokbase