+1 – sj,2l
dj-1 = oddj-1 – P(evenj-1)
مرحله بروزرسانی:
یکی از خواص سیگنال با تقریب ضعیف تر این است که مقدار میانگین آن با سیگنال اصلی یکسان است :
S = 2-j ∑_(l=0)^(2^(-j))▒〖 s〗_(j,l)
∑_(l=0)^(2^(j-1))▒s_(j-1,l) = 1/2 ∑_(l=0)^(2^j)▒s_(j,l)

پس اپراتور بروزرسانی به صورت زیر تعریف می شود :
s_(j-1) = even_(j-1) + U(d_(j-1))

مسیرهای زوج توسط میانگین و مسیر های فرد توسط Detail جایگزین می شود.
برای تبدیل معکوس، ابتدا عمل Undo the update انجام شده و نمونه های زوج بازسازی می شوند .سپس Prediction با Detail جمع شده و نمونه های فرد بازسازی می شوند .در نهایت نمونه های زوج وفرد ادغام61 شده و سیگنال اصلی بازسازی می گردد و
Sj-1 = evenj-1 – u(dj- 1)
dj-1 = oddj-1 + P(evenj-1)
Sj = merge(sj-1 , dj-1)

شکل 4-2 یک طرح lifting کلی شامل مراحل Split، Dual و Primal

شکل 4-3 معکوس طرح lifting

آنالیز مولفه های اصلی

تکنیک PCA، درواقع بهترین روش برای کاهش ابعاد داده بصورت خطی می باشد. در این روش، با حذف ضرایب کم اهمیت بدست آمده از این تبدیل، اطلاعات از دست رفته نسبت به روشهای دیگر کمتر است. البته کاربرد PCA، تنها محدود به کاهش ابعاد مساله نمی شود و در حوزه هایی مانند شناسایی الگو و تشخیص چهره نیز مورد استفاده قرار می گیرد. در این روش، محورهای مختصات جدیدی برای داده ها تعریف شده و داده ها در این چهارچوب بازنمایی می شوند. اولین محور باید در جهتی قرار گیرد که واریانس داده ها ماکزیمم شود (یعنی در جهتی که پراکندگی داده ها بیشتر است). سپس دومین محور باید عمود بر محور اول به گونه ای قرار گیرد که واریانس داده ها ماکزیمم شود. به همین ترتیب، محورهای بعدی عمود بر تمامی محورهای قبلی به گونه ای تعبیه می شوند که داده ها در آن جهت دارای بیشترین پراکندگی باشند. در شکل 1 این مطلب را برای داده های دوبعدی مشاهده میشود.

شکل 4-4: انتخاب محورهای جدید برای داده های دوبعدی در PCA

4-2-1- الگوریتم آنالیز مولفه های اصلی
اکنون الگوریتم PCA مورد بررسی قرار می گیرد:
مرحله1 : داده های موردنظر انتخاب می شوند.
مرحله2: میانگین هر بُعد از مقادیر آن بُعد کسر می شود تا میانگین داده ها در هر بُعد صفر شود.
مرحله3: ماتریس کوواریانس جهت یافتن ارتباط بین ابعاد مختلف داده ها، محاسبه می گردد.
مرحله4: اکنون بردارها و مقادیر ویژه ماتریس کوواریانس محاسبه می شوند. ماتریس کوواریانس، یک ماتریس نیمه قطعی مثبت متقارن62 است. طبق قضایای جبرخطی، یک ماتریس متقارن n×n ، دارای n بردار ویژه ی مستقل و n مقدار ویژه میباشد. همچنین یک ماتریس نیمه قطعی مثبت، دارای مقادیر ویژه ی غیرمنفی است.
مرحله5: پروسه کاهش ابعاد مساله در این مرحله انجام می شود. اکنون بردارهای ویژه حاصل از مرحله قبل را براساس مقادیر ویژه آنها مرتب می نماییم (تمامی مقادیر ویژه ماتریس کوواریانس، بزرگتر ویا مساوی صفر هستند). بدین ترتیب، مولفه های داده ها از پٌراهمیت به کم اهمیت مرتب می شوند. در اینجا می توان جهت کاهش ابعاد داده ها، مولفه های کم اهمیت را حذف کرد. که البته در اینصورت مقدار اندکی از اطلاعات نیز از دست خواهیم رفت.
در این مرحله، یک بردار ویژگی63 ایجاد می شود که درواقع ماتریسی از بردارهاست. این ماتریس شامل آن دسته از بردارهای ویژه ای است که می خواهیم آنها را نگه داریم.
Feature Vector = (〖eig〗_1 〖eig〗_2 〖eig〗_3 …. 〖eig〗_n)

مرحله6: در آخرین مرحله از الگوریتم PCA، تنها کافی ست ترانهاده ی ماتریس بردار ویژه را که در مرحله قبل بدست آمده در ترانهاده ی داده های نرمال سازی شده، ضرب شود.
Final Data = Row Feature Vector × Row Data Adjust
که در آن Row Feature Vector ماتریسی است که سطرهای آن شامل بردارهای ویژه ای است که به ترتیب مقادیر ویژه ی متناظرشان، از بالا به پایین قرار گرفته اند. و ماتریس Row Data Adjust، داده های اولیه ابعاد مساله، پس از کسر میانگین هربُعد از آنهاست. در این ماتریس، داده ها در ستون ها ذخیره شده و هر سطر آن مربوط به یک بُعد است[35].

شبکه عصبی

یک شبکه عصبی درواقع نوعی الگوی محاسباتی ریاضی است که فعالیت های زیستی سیستم های عصبی را مدلسازی می کند. در اوایل دهه ی 1940، تلاشی که برای تقلید عملکرد مغز انسان صورت گرفت، منجر به پیدایش شبکه های عصبی شد. این شبکه ها درابتدا برای بهبود روش های شناسایی تصویر و کلام، دسته بندی و سپس طی دهه های اخیر به عنوان یک راه حل موثر در سیستم های تشخیص نفوذ مورد استفاده قرار گرفته است. مهمترین ویژگی شبکه های عصبی، قابلیت یادگیری و درنتیجه بهبود مستمر عملکرد آن می باشد.
هر شبکه عصبی، درواقع مجموعه ای از واحدهای ساده ای بنام نرون هستند. این نرون ها در قالب یک ساختار شبکه ای، مجموعه ای از داده های ورودی را به خروجی مورد نظر تبدیل می کند. در سیستم عصبی بدن، یک نرون زیستی با جمع ورودی های خود که از طریق دندریت ها با یک وزن سیناپسی خاص به نرون اعمال می شوند، پس از رسیدن به یک مقدار معین یا به اصطلاح حد آستانه، فعال می گردد. با توجه به این واقعیت می توان نتیجه گیری کرد که نرون تنها در یکی از دو وضعیت فعال و یا غیرفعال قرار می گیرد. خروجی تنها به ورودی های نرون بستگی دارد. ورودی باید به حدی برسد تا خروجی ایجاد گردد.
متداول ترین مدل شبکه عصبی براساس پژوهش کولچ و پیت (1943) پیاده سازی شده که آن را در شکل4-5 ملاحظه می نمایید.

شکل 4-5 ساختار پیشنهادی نرون مک کولچ و پیت

همانطور که در شکل
4-5 مشاهده می شود، هر نرون از دو بخش تشکیل شده است: تابع شبکه و تابع فعال سازی.
تابع شبکه مشخص می کند که ورودی ها ; 1≤j≤N} y_j} چگونه داخل یک نرون با هم ترکیب می شوند. این تابع در شکل مذکور، بصورت یک ترکیب خطی وزن دار می باشد:

U = ∑_(j=1)^N▒〖w_j y_j+ θ 〗

که در آن کمیت θ ، حد آستانه نامیده می شود. بقیه روش های ترکیب ورودی شبکه در جدول4-1 ، آمده است.

جدول4-1 خلاصه ای از توابع شبکه مورد استفاده در شبکه های عصبی
Comments
Formula
Net Functions
Most commonly used
U = ∑_(j=1)^N▒〖w_j y_j+ θ 〗

Linear
u_i is a weighted linear combination of higher order polynomial
terms of input variable. The number of input terms equals N_d, where d is the order of the polynomial

U = ∑_(j=1)^N▒∑_(k=1)^N▒w_jk y_j y_k+θ

Higher order (2nd order formula exhibited)
Seldom used
U = ∏_(j=1)^N▒w_j y_j
Delta (∑ – ∏)

خروجی نرون که در شکل با a_i نشان داده شده است، با یک تبدیل خطی یا غیرخطی بنام تابع فعال سازی به داده های ورودی شبکه مربوط می شود:
a = f(u)
توابع فعال سازی متفاوتی برای شبکه های عصبی مختلف ارائه شده است که متداول ترین آنها را در جدول4-2 ملاحظه می کنید.

جدول4-2 لیستی از توابع فعال سازی مورد استفاده در شبکه های عصبی
Comments
Derivatives
(df(u))/du
Formula a=f(u)
Activation Function
Commonly used; derivative can be
computed from f(u) directly.

f(u)[1-f(u)]/T

f(u)=1/(1+e^(-u/T) )

Sigmoid

T = temperature parameter

این مطلب رو هم توصیه می کنم بخونین:   مقاله رایگان دربارهنقش برجسته

(1-[f(u)]^(2 ) )/ T

f(u)= tanh⁡(u/T)

Hyperbolic tangent

Less frequently used

2/πT . 1/(1+(u/T)^2 )

f(u)= 2/π tan^(-1)⁡(u/T)

Inverse tangent

Derivatives do not exist at u = 0

f(u)={█(1, [email protected], &u≤0)┤

Threshold
Used for radial basis neural network; m
and σ^2 are parameters to be specified

-2(u-m). f(u)/σ^2

f(u)=exp⁡[-‖u-m‖^2/σ^2 ]

Gaussian radial basis

a

f(u)=au+b

Linear

در اواخر دهه ی 1950، روزن بلات مفهوم پرسپترون ساده را با اتصال چندین نرون به یکدیگر ارائه کرد و موفق شد این مفاهیم را برای اولین بار در کامپیوترهای دیجیتال پیاده سازی و تحلیل نماید. پیدایش این پرسپترون ها در طول زمان به ظهور شبکه های پرسپترون چندلایه ای (MLP) و دیگر ساختارهای پیچیده عصبی انجامید. شکل 4-6 ، این ساختار را نشان می دهد:

شکل4- 6 نمایش ساختاری از الگوی پرسپترون ساده

با پیدایش شبکه های عصبی چندلایه ای، بسیاری از رفتارهایی که تا پیش از این قابل مدلسازی نبودند، الگوسازی شدند. همانطور که در شکل4-7 مشاهده می شود، در این نوع شبکه ها، از یک لایه ی ورودی جهت اعمال داده های ورودی، چند لایه ی مخفی (حداقل یک لایه) و یک لایه ی خروجی به منظور ارائه پاسخ مساله، استفاده می شود.

شکل4-7 ساختار کلی شبکه های عصبی مصنوعی به شکل پرسپترون چندلایه ای

گره های لایه ورودی، نرون های حسی و گره های لایه خروجی، نرون های پاسخ دهنده هستند. در لایه پنهان نیز نرون های پنهان وجود دارند[36].

فصل پنجم

چهارچوب طرح پیشنهادی

5-1- ارزیابی روشهای مبتنی بر ویولت

در این بخش، روش های مختلفی برای تشخیص نفوذ، مورد ارزیابی قرار می گیرند. در ادامه هر یک از این روشها به تفکیک بررسی می شوند.

5-1-1 پیشینه پژوهش ها درزمینه بکارگیری ویولت
در پژوهش بارفورد و همکاران64 [7]، از تبدیل ویولت برای آنالیز و ارزیابی مشخصه های رفتاری ترافیک شبکه براساس جریان داده، استفاده شده است. داده های اولیه ای که در این پژوهش بکار گرفته شد شامل جریان شبکه اخذ شده از روترهای سیسکویی بود که در مکان های مختلفی از یک دانشگاه بزرگ قرار داشتند. براساس این ساختار، سیگنال ها به مولفه های مختلفی در سه بازه فرکانسی تقسیم می شوند: مولفه های فرکانس پایین به الگوهایی در یک دوره طولانی مثلاً چندین روز، مربوط می شوند. مولفه های فرکانس میانی، تغییرات روزانه در جریان داده را می گیرند. مولفه های فرکانس بالا شامل تغییرات کوتاه مدت میباشند. این سه دسته از مولفه ها طی گروه بندی ضرایب ویولت مربوط به سه بازه زمانی بدست می آید و به همین ترتیب، سیگنال ها ترکیبی از این سطوح فرکانسی می شوند. براساس مولفه های فرکانسی مختلف، یک الگوریتم انحراف برای تشخیص ناهنجاری ها با استفاده از تنظیم یک مقدار آستانه برای سیگنال هایی که از ضرایب ویولت با سطوح فرکانسی مختلف ساخته شده اند، ارائه می گردد.
نتایج بررسی ها نشان می دهد که برخی از انواع حملات رد سرویس و پویش پورتها که رفتارهای ناهنجاری را در الگوهای فعالیتی بروز می دهند، در مولفه های دسته میانی و بالا تشخیص داده می شوند. اما اسکن های فرکانس پایین و انواع دیگری از حملات رد سرویس با وجود اینکه رفتارهایی ناهنجار را در ترافیک شبکه نشان می دهند، چنین الگوهایی را تولید نمی کنند.
از دیگر نمونه های سیستم تشخیص نفوذ مبتنی بر تکنیک های آنالیز ویولت می توان به ارائه چارچوبی موسوم به Waveman توسط هوانگ و همکاران65 [8] و NetViewer توسط کیم و ردی66 [9] اشاره نمود. نتایج بررسی ها برای Waveman بر روی مجموعه داده های مربوط به تشخیص نفوذ 1999 DARPA و داده های ترافیک شبکه حقیقی نشان می دهد که برای تشخیص ناهنجاری ها در یک محیط آزمایشی یکسان، ویولت های کویفلت67 و پال68 بهتر از بقیه انواع ویولت ها عمل می کنند. NetViewer نیز مبتنی بر این نظریه است که با مشاهده ترافیک و مرتبط ساختن آن با حالت نرمال قبلی، امکان تشخیص اینکه ترافیک فعلی به شک
ل ناهنجار رفتار می کند یا خیر، وجود دارد[9].
در [10]، رامنران69 نظریه ای به نام WADeS برای تشخیص حملات DDoSمطرح کرده است. تبدیل ویولت روی سیگنال های ترافیکی اعمال شده و واریانس ضرایب ویولت مربوطه برای تخمین نقاط حمله مورد استفاده قرار می گیرد.
در [11]، لی و لیی70 دریافتند که ترافیک انباشته در طی بازه گسترده ای از مقیاس های زمانی به شدت حالت انفجاری دارد و بر این اساس، آنها از آنالیز ویولت برای گرفتن همبستگی زمانی مرکب در طی مقیاس های زمانی چندگانه با پیچیدگی محاسباتی بسیار کم استفاده کردند. سپس توزیع انرژی مبتنی بر آنالیز ویولت برای یافتن ترافیک حمله DDoS استفاده می شود چراکه تغییرات واریانس توزیع انرژی هنگامی که رفتارهای ترافیکی تحت تاثیر حملات DDoS قرار می گیرند، همواره سبب یک پرش می شود. این در حالی است که ترافیک نرمال مشخصاً یک توزیع انرژی ثابت را نشان می دهد.
در پژوهش کیم و همکاران71 [12]، تکنیکی برای تشخیص ناهنجاری های ترافیک از طریق تحلیل تناظر آدرس IP مقصد در ترافیک خروجی از یک روتر خارجی ارائه دادند. آنها این نظریه را مطرح کردند که آدرس های IP مقصد به دلایلی درجه همبستگی بالایی دارند و تغییرات در تناظر آدرس های خروجی می تواند برای تشخیص ناهنجاری های ترافیک شبکه مورد استفاده قرار گیرد. بر این اساس، آنها تبدیل ویولت گسسته را روی داده های متناظر با آدرس ها و شماره پورت ها در طی چندین مقیاس زمانی اعمال می کنند. هرگونه انحراف از معیار ثابت پیشین، به عنوان ناهنجاری بالقوه در ترافیک به مدیر شبکه اطلاع داده می شود. با تمرکز بر روی انواع خاصی از حملات شبکه، آنالیز ویولت برای تشخیص حملات DoS یا DDoS مورد استفاده قرار گرفته است[13-10].
در [13]، داینوتی و همکاران72 یک سیستم اتوماتیک برای تشخیص ناهنجاری های حجمی که در ترافیک شبکه به علت حملات رد سرویس پیش آمده، ارائه می دهد. این سیستم نظریه های متعارف مانند آستانه انتخابی و مجموعه فزاینده را با یک نظریه جدید مبتنی بر تبدیل ویولت پیوسته ترکیب می کند. آنالیز ویولت علاوه بر تشخیص ناهنجاری های خاص شبکه، بطور گسترده در سنجش شبکه از دیدگاه آنالیز عملکرد ترافیک [14]، تشخیص و کاوش ناهنجاری های ترافیک [15و16] و تشخیص تراکم ترافیک [17] نیز مورد استفاده قرار می گیرد.
در [18]، قربانی و نیار73 از یک مدل تقریب اتورگرسیون برای تشخیص نفوذ در شبکه استفاده می کنند. این نظریه مبتنی بر آنالیز ویولت است و معیار نرخ بسته74 به عنوان سیگنال ورودی شبکه در نظر گرفته می شود. ارزیابی این پژوهش با استفاده از مجموعه داده های 1999 DARPA نشان می دهد که در شناسایی ناهنجاری ها کارکرد موثری داشته، اما طی آن تنها یک سیگنال شبکه و یک تابع ویولت استفاده شده است.
در[19]، وی لو و قربانی75 نظریه ای مبتنی بر آنالیز ویولت، تقریب اتورگرسیون و تکنیکهای تشخیص دورافتاده76 را مطرح می کنند.


دیدگاهتان را بنویسید