تنسور
فلو (TensorFlow)
یک
کتابخانهی
برنامهنویسی
رایگان
و متن باز (open
source) برای
یادگیری ماشین و هوش مصنوعی است که
طیف
وسیعی از وظایف را انجام میدهد.
ولی
بیشتر
بر
آموزش
و استنتاج شبکههای عصبی عمیق تمرکز
دارد.
تنسورفلو
توسط تیم Google
Brain برای
استفادهی داخلی گوگل در تحقیقات و تولید
محصولات نرمافزاری توسعه داده شده و
در نهم نوامبر ۲۰۱۵ تحت گواهینامهی
آپاچی ۲ به صورت عمومی منتشر شد.
از
آن زمان تاکنون تنسورفلو به یکی از
محبوبترین چارچوبهای کاری (framework)
برای
پروژههای یادگیری عمیق تبدیل شده است.
ادامه مطلب ...
زبان
برنامهنویسی پایتون یک زبان برنامهنویسی
سطح بالا و شیئ گرا برای توسعهی
نرمافزارهای کاربردی و تحت وب است.
Guido
van Rossum در
سال ۱۹۸۰ میلادی طراحی این زبان برنامهنویسی
را آغاز کرد و زبان برنامهنویسی پایتون
اولین بار در سال ۱۹۹۱ منتشر شد.
وی
هدف خود از طراحی زبان پایتون را ایجاد
یک زبان برنامهنویسی بسیار ساده و قابل
درک عنوان کرده که از قدرت بالایی برخوردار
باشد و بتواند با سایر زبانهای برنامهنویسی
رقابت نماید.
همچنین
کاملاً منبع باز باشد تا تمام افراد و
برنامهنویسها در توسعهی آن شرکت
کنند.
علاوه
بر اینها توسعهی نرمافزارها در
کمترین زمان ممکن از دیگر اهداف طراحی
زبان برنامهنویسی پایتون است.
شبکهی Long Short-Term Memory یا به اختصار LSTM، اولین بار در سال ۱۹۹۷ توسط Hochreiter و Schmidhuber معرفی شد. این شبکه اگرچه یک شبکهی عصبی نسبتاً قدیمی است اما در گذر زمان میزان استفاده از آن رشد کرده و در طیف وسیعی از مسائل از آن استفاده میشود.
بسیاری از معماریهای شبکههای عصبی، مثل ماشین بولتزمن محدود شده، پرسپترون چندلایه، Autoencoder و شبکههای عصبی پیشرو برای دادههای چندبعدی طراحی شدهاند که در آنها ویژگیها تا حد زیادی از یکدیگر مستقل هستند. البته در شبکهی کانولوشن وابستگیهای فضایی نقاط داده مورد توجه قرار گرفته، اما در این شبکهها به مولفهی زمان توجه نشده است. این در حالی است که دادههایی مثل سری زمانی (time series)، متن و دادههای بیولوژیکی شامل وابستگیهای ترتیبی در بین صفاتشان هستند.
شبکههای هاپفیلد در سال ۱۹۸۰ میلادی توسط John Hopfield معرفی شدند. وی تحقیقاتی در زمینهی مسألهی خود انجمنی داشته و تجزیه و تحلیلهای عمیقی روی شبکههای عصبی انجام داده است. همین پژوهشها او را در عرصهی هوش مصنوعی و یادگیری ماشین به چهرهای شناخته شده بدل کرده. در شکل ۱ و شکل ۲ دو نمایش از معماری شبکهی هاپفیلد نشان داده شده است. همانگونه که در این شکلها دیده میشود هر شبکهی هاپفیلد از تعدادی گره تشکیل شده و در آن هر گره به تمام گرههای دیگر متصل است. به عبارت دیگر هر گره ورودی خود را از همهی گرههای دیگر دریافت کرده و خروجی هر گره به عنوان ورودی به همهی گرههای دیگر ارسال میشود.