تشخیص موتیف یا زیر گراف های پرتکرار با برنامه Cytoscape
معرفی موتیف
در مطالب قبلی به آموزش Cytoscape پرداختیم در آموزش امروز به نحوه تشخیص موتیف ها در این ابزار می پردازیم. امروزه کشف و تشخیص موتیف در گراف ها بسیار دارای اهمیت هستند. گراف ها ساختمان داده هاي جهاني هستند. يك گراف ميتواند يك شبكه از ارتباطات بين اشياء را در حالت كلي مدل كند. ميتوان گفت كه تمام اشيايي كه در جهان حقيقي وجود دارند يا يك شبكه از ارتباطات ميان اجزايشان هستند و يا خود اجزاي يك شبكه بزرگتر مي باشند. هر يك از اين دو حالت را ميتوان بوسيله گراف تشريح كرد. “موتیفِ شبکه” یک الگوی زیرگرافِ تکرار شونده یکتا می باشد. کاوش زیرگرافهای پرتکرار (Frequent Subgraph Mining) یکی از مسائل مهم در حوزه گرافکاوی است. هدف از انجام این کار استخراج زیرگرافهایی با فراوانی بالا در یک مجموعه داده است به طوری که تعداد آنها از آستانه مشخصی بیشتر باشد. یگانگیِ موتیف را به صورتی مرسوم با p-value و z-score تعیین میکنند.
از موتیفهای شبکه برای تشخیص خصوصیات شبکه ها مانند اندازه فراوانی گراف یا به عنوان معیاری برای طبقه بندی، اندازه گیری و تشخیص نوع شبکه ها استفاده میشود. همچنین موتیف های شبکه در کاربردهای بیولوژیکی مختلف استفاده میشوند. کاربردهای بیولوژیکی موتیف شبکه شامل پیشبینی ژن ایجاد کننده سرطان و … هستند. حوزه فعالیت مرتبط با الگوریتمهای کاوش زیرگرافهای پرتکرار نشاندهنده کاربرد متنوع این دسته از الگوریتمها در حوزههای مختلف است. سه حوزه شیمی، وب و بیولوژی از این الگوریتمها بیش از سایرین استفاده میکنند.
برای یافتن این زیرگرافها در شبکههای بزرگ، میتوان تعداد تکرار تمامی زیرگرافهای با سه و یا چهار راس را شمارش کرد. با افزایش تعداد رئوس زیرگراف، فرآیند ارزیابی بسیار هزینه بر خواهد بود. از این رو، اکثر الگوریتمهای مورد استفاده، تنها میتوانند زیرگرافهای پرتکرار با تعداد راس محدود را بیابند. نکته قابل توجه در این زیرگرافهای پرتکرار آن است که امکان دارد در یک شبکه زیرگرافی به عنوان زیرگراف پرتکرار تلقی شود در حالی که در شبکهی دیگری با خصوصیات متفاوت آن زیرگراف پرتکرار نباشد. با توجه به اینکه تعداد زیرگراف معیاری کمّی است، از این رو برای تعیین معیار مقدار بزرگی آن، شبکههای تصادفی هماندازه مورد استفاده قرار میگیرد. در صورتیکه تعداد زیرگراف تکرار شده بسیار بیشتر از شبکه تصادفی نظیر آن باشد، به آن زیرگراف، زیرگراف پر تکرار میگوییم. برای ارزیابی تعداد زیرگرافهای یافته شده، شبکه مورد مطالعه، با شبکه تصادفی که از نظر تعداد نودها برابر هستند مقایسه میشود. در شبکه تصادفی، علاوه بر یکسان بودن تعداد نودها، درجه ورودی و خروجی هر نود با نود معادلش در شبکه مورد مطالعه یکسان است (شکل زیر).
الگوریتم های تشخیص موتیف از جمله mFinder، Fanmod ، Kavosh، Mavisto ، LaMoFinder and NeMoFinder، Grochow and Kellis ، MODA و …. هستند. همه الگوريتمها از نظر محاسباتي پيچيدهاند و ممکن است با افزايش اندازهي شبكهي مورد ارزيابي، دچار مشكل شوند. همچنين، اين الگوريتمها از نظر اندازهي موتيف بسيار محدود هستند و در عمل قادر به پيدا كردن موتيفهاي با تعداد رأس های زیاد نيستند. از این رو، پژوهشگران برای تشخیص موتیف، به محاسبات موازی و ابری روی آوردند. تعداد کاندیداها برای زیرگراف پرتکرار با بزرگ شدن اندازه زیرگراف به سرعت نمایی افزایش مییابد. برای نمونه زیرگراف جهتدار با سه راس ۱۳ حالت ممکن خواهد داشت.
الگوریتم ها و ابزارهای کشف موتیف
امروزه دیدگاه شبکهای امکان دستیابی به محتوای معنیدار برای دادههای حاصل از فناوریهای جدید با توان بالا را به منظور تحلیل، تفسیر و تولید فرضیات مختلف فراهم ساخته است. تعداد و اندازه پایگاه دادهها به سرعت در حال افزایش هستند و مدلهای توسعه یافته دادهکاوی میتوانند برای پژوهشگران و دانشمندان برای کمک در تصمیم گیری موثر و کاربردی باشند. برای مثال، نرمافزار Cytoscape یک ابزار رایگان متن باز، به یکی از محبوبترین ابزار ترسیم و تحلیل شبکه تبدیل شده است. به این برنامه سالانه در بیش از 500 مقاله استناد میشود و ماهیانه بیش از 800 بار دانلود میشود. در این بسته نرمافزاری ترسیم و تحلیل شبکههای مختلف مخصوصا شبکههای برهمکنش مولکولی و مسیرهای زیستی و همچنین ادغام چنین شبکه هایی با حاشیه نویسیها و پروفایله ای بیانی امکانپذیر است. ویژگیهای کاربردی دیگری نیز از طریق 200 افزونه به این بستر نرمافزاری اضافه شدهاند.
برخی از افزونه های این برنامه، تنها به اجرای الگوریتمهای تشخیص موتیف اختصاص دارند. ازجمله
افزونه های معروف اجرای الگوریتمهای تشخیص موتیف برای این نرمافزار iRegulon، SLiMScape، cytoHubba، NetMatchStar، Rene، ISMAGS، Motif-Discovery، PTMOracle، NetMatch، GraphletCounter، APID2NET و CytoKavosh هستند.
در ادامه، به ارائه گزارش یک پروژه با اجرای یکی از الگوریتم تشخیص موتیف بر روی یکی از پایگاه داده های مهم شبکه های زیستی (E. Coli)، با استفاده از افزونه Motif-Discovery در برنامه Cytoscape میپردازیم. در این پژوهش از نرم افزار Cytoscpae استفاده شده است که فایل های نوشته شده با فرمتهای زیر را میخواند:
- Simple interaction file (SIF or .sif format)
- Nested network format (NNF or .nnf format)
- Graph Markup Language (GML or .gml format)
- XGMML (extensible graph markup and modelling language)
- SBML
- BioPAX
- PSI-MI Level 1 and 2.5
- Delimited text
- Excel Workbook (.xls)
به عنوان مثال برای رسم گرافِ شکل زیر با وزنِ راسها و یالهای نوشته شده در آن، کد زیر را وارد میکنیم.
// Create Sally
CREATE (sally:Person { name: ‘Sally’, age: 32 })
// Create John
CREATE (john:Person { name: ‘John’, age: 27 })
// Create Graph Databases book
CREATE (gdb:Book { title: ‘Graph Databases’,
authors: [‘Ian Robinson’, ‘Jim Webber’] })
// Connect Sally and John as friends
CREATE (sally)-[:FRIEND_OF { since: 1357718400 }]->(john)
// Connect Sally to Graph Databases book
CREATE (sally)-[:HAS_READ { rating: 4, on: 1360396800 }]->(gdb)
// Connect John to Graph Databases book
CREATE (john)-[:HAS_READ { rating: 5, on: 1359878400 }]->(gdb)
معرفی افزونهMotif-Discovery
افزونهMotif-Discovery افزونهای آسان و سریع برای پاسخگویی به نیازهای کاربران در تشخیص موتیف شبکه (جستجوی زیرگراف) و استفاده از نرمافزار Cytoscape است. این افزونه از سریعترین الگوریتم تشخیص موتیف، که G-Tries است، استفاده میکند. الگوریتم G-Tries با استفاده از الگوریتمهای موازی به کشف موتیف در شبکه میپردازد.
در این نسخه از افزونه Motif-Discovery کاربر میتواند تنظیمات زیر را برای تشخیص موتیف انجام دهد:
- اندازه موتیف را مشخص کند.
- نوع موتیف را مشخص کند.
- برای اندازهگیری مقدار آماری شبکه (z-score)، تعداد شبکههای تصادفی را تعیین کند.
- پیشرفت کار را مشاهده کند.
- نتایج را به صورت جدول با جزییات مشاهده کند.
- هر یک از نتایج زیرگرافها را انتخاب (ردیف جدول) و افزونه زیرگراف بدست آمده را رسم و شبکه را با توجه به وقایع این زیرگراف رنگ کند.
برنامه های لازم برای اجرای افزونه Motif-Discovery در نرمافزار Cytoscpape
- Java: برای اجرای این برنامه باید Java8 روی ویندوز نصب باشد. (توجه: این برنامه تنها بر روی ویندوز 64 بیت قابل اجراست).
- Motif-Discovery: افزونه مورد نظر در این پژوهش که از مسیر زیر قابل دانلود است:
http://apps.cytoscape.org/apps/motifdiscovery
اینجا نمونه مورد نیاز Cytoscpape برای اجرای این افزونه نوشته شده است.
- Cytoscpape: برای اجرای افزونه Motif-Discovery نیاز به نمونه 3.2 از برنامه Cytoscape است که این برنامه را میتوان از مسیر زیر دانلود کرد:
http://www.cytoscape.org/download_old_versions.html
شکلهای زیر نمونه هایی از اجرای برنامه Cytoscape را نشان میدهند. برای مثال، در تصویر شکل 3، افزونه Motif-Discovery برای جستجوی موتیف های جهت دار با 4 رأس و بدون شبکه تصادفی بر روی یک شبکه اجرا شده است که در نتیجه آن، 13نوع گراف جهتدار بدست آمدهاند و زمان اجرای آن 236 میلی ثانیه بوده است. در ادامه، در جدول نتایج، رشته ماتریس مجاورت، فراوانی هر موتیف نشان داده میشوند.
نتیجه اجرای افزونه Motif-Discovery بر پایگاه داده E. Coli در برنامه Cytoscpape
داده کاوی برای تشخیص فعالیت باکتریها با استفاده از داده های ثبت شده در پایگاه داده E. Coli، به فراهم کردن اطلاعات ضروری و دانش مورد نیاز پزشکان در تصمیم گیری بهتر کمک میکند. اینجا، جستجو بر این پایگاه داده را با تعداد رأس های 3-4-5-6-7 (به دو صورت جهتدار تا 6 راس و بدون جهت تا 7 راس) با افزونهMotif-Discovery در برنامه Cytoscape اجرا و نتایج را در جدول زیر ارائه میکنیم.
نحوه اجرا
ابتدا برنامههای java8 و Cytoscape و افزونه Motif-Discovery را در ویندوز نصب، و سپس برنامه Cytoscape را اجرا میکنیم. از تبِ Apps، App Manager را انتخاب و افزونه Motif-Discovery را از مسیر نصب شده انتخاب و به افزونه های موجود در برنامه اضافه میکنیم. خواهیم دید که تبِ افزونه ی نصب شده، به قسمت Control Panel در برنامه اضافه میشود.
در منوی بالای برنامه چند دکمه وجود دارند، که 4 دکمه از آنها برای وارد کردنِ داده در برنامه هستند. در ادامه، به توضیح آنها میپردازیم.
- Import Network From File: اگر فایلِ شبکه مورد نظر در حافظه موجود باشد، آنگاه میتوان از این قسمت، فایل را بارگذاری و تشخیص موتیف را روی آن اجرا کرد.
- Import Network From URL: در این قسمت دو انتخاب وجود دارند. هم میتوان از پایگاه دادههایی که در برنامه هستند استفاده کرد، و هم میتوان آدرس لینک شبکه مورد نظر را از مرورگر کشید یا کپی کرد.
- Import Table From File: در این قسمت، میتوان فایل با فرمت جدول را از حافظه بارگذاری و تشخیص موتیف را روی آن اجرا کرد.
- Import Table From URL: اگر فایل با فرمت جدول در وب باشد، آنگاه میتوان آدرس لینک جدول مورد نظر را از مرورگر کشید یا کپی کرد.
ما در این بحث، از گزینه دوم استفاده و پایگاه داده E. Coli را از منو انتخاب کردیم. پس از بارگذاری پایگاه داده بر روی برنامه، نام فایلِ شبکه در پنجره Control Panle، در تبِ Netwoks ظاهر میشود که تعداد یالها و گرههای شبکه را نشان میدهد. نکته قابل توجه این است که با این برنامه میتوان به طور همزمان چندین شبکه را بارگذاری کرد و بر روی آنها عملیات تشخیص موتیف را انجام داد.
تنظیمات اصلیِ عملیات تشخیص موتیف در تبِMotif-Discovery ، انجام میشوند. در این تب، اندازه موتیف (3 تا 7 رأس)، نوع موتیف (جهتدار و بدون جهت)، و تعداد شبکه تصادفی را انتخاب میکنیم و دکمه Run را کلیک میکنیم و محاسبه شروع میشود. باید توجه داشت که فرایند محاسبه میتواند در یک چشم بههم زدن اتفاق بیفتد یا مدتی طول بکشد. این مدت زمان به تعداد رأسهای موتیف، نوع موتیف و تعداد شبکه تصادفی بستگی دارد.
برنامه پس از محاسبه، نتایج را در پنجره Control Panle نشان میدهد. این خروجی حاوی اطلاعات زیر است:
- تعداد انواع موتیف کشف شده،
- تعداد کل موتیفها،
- مدت زمان محاسبه فرایند تشخیص موتیف،
- رشتهی مربوط به هر موتیف،
- فراوانیِ هر موتیف،
- مقدار z-score.
اگر بر روی هر موتیف در جدول کلیک کنید، شکل موتیف مورد نظر نشان داده خواهد شد.
به همین ترتیب، از طریق افزونه Motif-Discovery میتوان محاسبات مورد نظر را بر روی پایگاه دادههای مختلف با الگوریتمهای مختلف انجام داد و نتایج را بررسی کرد.
برخی از منایع:
متن ارسالی توسط خانم فاطمی
- https://neo4j.com/
- http://cytoscape.org/
آدرس کانال تلگرام ما:
t.me/bigdata_channel
برای ورود به کانال بر روی اینجا کلیک کنید.
بازدیدها: 2821
برچسبCytoscape motif الگوریتم تشخیص زیرگراف تحلیل شبکه های اجتماعی تشخیص زیرگراف تشخیص موتیف زیر گراف زیرگراف زیرگراف پرتکرار سایتو اسپیس کشف موتیف گراف پر تکرار گراف کاوی موتیف نرم افزار Cytoscpae
همچنین ببینید
بیش ازصد موجودت اسمی برای تشخیص رویداد (Event Detection)
تشخیص رویداد: رصد شبکه های اجتماعی، رویدادهای دنیای واقعی را نشان میدهد و اطلاعات ارزشمندی …
مجموعه داده (dataset) گراف شبکه جاده ای پنسیلوانیا
اطلاعات مجموعه داده (dataset) گراف شبکه جاده پنسیلوانیا یکی از کاربرد های تحلیل شبکه های …