محققان ایرانی نرم افزاری برای یادگیری ماشینی ابداع کردند

به نقل از سایت اخبار فناوری اطلاعات و ارتباطات ، فن آوری های نوین :    

به گزارش خبرگزاری مهر به نقل از دانشگاه تورنتو، «مریم مهری دهنوی» یکی از استادیاران علوم رایانشی در دانشگاه تورنتو به همراه «کاظم چشمی» یکی از دانشجویان مقطع دکترا مشغول انجام پژوهشی در تحلیل های عددی، رایانش موازی و کامپایلرها هستند.

 دهنوی در باره این محاسبات با عملکرد بالا می گوید: بسیاری از پژوهش های ما در حوزه ماتریس انجام می شود. از خود می پرسیم این چه نوع ماتریسی است؟ این چه نوع محاسبات جبر است؟ الگوریتم های موازی کدامند؟ بیشتر اوقات همه ماتریس ها شناخته شده نیستند تا بتوانند عملکرد مورد نظر را ارائه کنند. مشکل همین جا است.

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

دهنوی و چشمی با همکاری یکی از محققان شرکت ادوب و میشل میلز استراوت استاد علوم رایانشی در دانشگاه آریزونا تحقیق"ParSy: Inspection and Transformation of Sparse Matrix Computations for Parallelism را در کنفرانس بین المللی ابررایانش ارائه کردند.

در این کنفرانس بیش از ۱۱ هزار نفر از صدها شرکت و مرکز تحقیقاتی از سراسر دنیا شرکت کردند.

ممکن است افراد تصور کنند کدها یا الگوریتم ها پس از نوشته شدن خیلی ساده کار می کنند اما مشکل اینجاست که سخت افزار سریع تر از نرم افزار عمل می کند.

دهنوی در این باره می گوید: کامپایلرها شبیه مغز انسان  هستند و امکان تصمیم گیری در شرایط سخت را به طور خودکار فراهم می کنند. البته این فرایند مرحله به مرحله است و به همین دلیل کاربرد فوری ندارد.

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

98
0 0

لینک های مفید

طراحی لوگو دراصفهان

بانک اطلاعات مشاغل رایگان
لوازم یدکی جک JAC

کتاب های ادبیات آمریکای لاتین

سنگ چینی

کرم گریم


$(window).load(function () { 'use strict'; function activeStickyKit() { $('[data-sticky_column]').stick_in_parent({ parent: '[data-sticky_parent]' }); // bootstrap col position $('[data-sticky_column]') .on('sticky_kit:bottom', function (e) { $(this).parent().css('position', 'static'); }) .on('sticky_kit:unbottom', function (e) { $(this).parent().css('position', 'relative'); }); }; activeStickyKit(); function detachStickyKit() { $('[data-sticky_column]').trigger("sticky_kit:detach"); }; var screen = 768; var windowHeight, windowWidth; windowWidth = $(window).width(); if ((windowWidth < screen)) { detachStickyKit(); } else { activeStickyKit(); } // windowSize // window resize function windowSize() { windowHeight = window.innerHeight ? window.innerHeight : $(window).height(); windowWidth = window.innerWidth ? window.innerWidth : $(window).width(); } windowSize(); // Returns a function, that, as long as it continues to be invoked, will not // be triggered. The function will be called after it stops being called for // N milliseconds. If `immediate` is passed, trigger the function on the // leading edge, instead of the trailing. function debounce(func, wait, immediate) { var timeout; return function () { var context = this, args = arguments; var later = function () { timeout = null; if (!immediate) func.apply(context, args); }; var callNow = immediate && !timeout; clearTimeout(timeout); timeout = setTimeout(later, wait); if (callNow) func.apply(context, args); }; }; $(window).resize(debounce(function () { windowSize(); $(document.body).trigger("sticky_kit:recalc"); if (windowWidth < screen) { detachStickyKit(); } else { activeStickyKit(); } }, 250)); });