M.H.Zarei

وبلاگ من

M.H.Zarei

وبلاگ من

سلام خوش آمدید
تلخ‌ترین درس در هوش مصنوعی از ریچ ساتون

ریچارد س. ساتون: پیشگام یادگیری تقویتی

ریچارد س. ساتون (Richard S. Sutton) یکی از چهره‌های برجسته و تأثیرگذار در حوزه یادگیری ماشین، به ویژه یادگیری تقویتی است. او به عنوان استاد دانشگاه آلبرتا شناخته می‌شود و سهم بسزایی در توسعه نظریه‌ها و الگوریتم‌های یادگیری تقویتی داشته است. ساتون به همراه اندرو بارто، کتابی کلاسیک با عنوان "مقدمه‌ای بر یادگیری تقویتی" (Reinforcement Learning: An Introduction) تألیف کرده‌اند که به عنوان مرجع اصلی در این حوزه شناخته می‌شود. تحقیقات او در زمینه یادگیری تقویتی، به ویژه در حوزه‌های مدل‌سازی یادگیری، الگوریتم‌های Q-learning و سلسله مراتب یادگیری، بسیار تأثیرگذار بوده است. سهم او در پیشرفت یادگیری تقویتی و کاربرد آن در حوزه‌های مختلفی مانند رباتیک، بازی‌های کامپیوتری و اقتصاد، او را به یکی از پیشگامان این حوزه تبدیل کرده است.

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

در ادامه ترجمه مقاله را برای شما آورده‌ایم.

تلخ‌ترین درس

ریچ ساتون ۱۳ مارس ۲۰۱۹

بزرگ‌ترین درسی که می‌توان از ۷۰ سال تحقیق در هوش مصنوعی آموخت این است که روش‌های کلی که از محاسبات بهره می‌برند، در نهایت مؤثرترین روش‌ها هستند و آن هم با فاصله زیاد. دلیل اصلی این امر قانون مور، یا به طور کلی‌تر، کاهش هزینه واحد محاسبات به صورت نمایی است. بیشتر تحقیقات هوش مصنوعی به این صورت انجام شده است که گویی محاسبات در دسترس عامل ثابت است (در این صورت، بهره‌برداری از دانش انسانی یکی از تنها راه‌های بهبود عملکرد خواهد بود)، اما در مدت زمانی کمی طولانی‌تر از یک پروژه تحقیقاتی معمولی، محاسبات بسیار بیشتری به طور اجتناب‌ناپذیر در دسترس قرار می‌گیرد. به دنبال بهبودی که در کوتاه مدت تفاوت ایجاد کند، محققان به دنبال بهره‌برداری از دانش انسانی خود در مورد حوزه (domain) هستند، اما تنها چیزی که در درازمدت اهمیت دارد، بهره‌برداری از محاسبات است. این دو لزوماً نباید در تضاد با یکدیگر باشند، اما در عمل تمایل دارند که باشند. زمانی که صرف یکی می‌شود، زمانی است که صرف دیگری نمی‌شود. تعهدات روانشناختی برای سرمایه‌گذاری در یکی از این دو رویکرد وجود دارد. و رویکرد دانش انسانی تمایل دارد که روش‌ها را به گونه‌ای پیچیده کند که آنها را برای بهره‌برداری از روش‌های کلی که از محاسبات بهره می‌برند، کمتر مناسب می‌کند.

نمونه‌های زیادی از یادگیری دیرهنگام محققان هوش مصنوعی از این درس تلخ وجود دارد و بررسی برخی از برجسته‌ترین آنها آموزنده است.

در شطرنج کامپیوتری، روش‌هایی که در سال ۱۹۹۷ قهرمان جهان، کاسپاروف را شکست دادند، بر اساس جستجوی عظیم و عمیق (massive, deep search) بودند. در آن زمان، این موضوع با ناامیدی اکثر محققان شطرنج کامپیوتری که روش‌هایی را دنبال می‌کردند که از درک انسانی از ساختار خاص شطرنج بهره می‌برد، روبرو شد. زمانی که یک رویکرد ساده‌تر مبتنی بر جستجو با سخت‌افزار و نرم‌افزار ویژه بسیار مؤثرتر ثابت شد، این محققان شطرنج مبتنی بر دانش انسانی بازیکنان خوبی نبودند. آنها گفتند که جستجوی "brute force" ممکن است این بار پیروز شده باشد، اما این یک استراتژی کلی نبود و به هر حال اینطور نبود که مردم شطرنج بازی کنند. این محققان می‌خواستند روش‌هایی مبتنی بر ورودی انسان پیروز شوند و وقتی چنین نشد ناامید شدند.

الگوی مشابهی از پیشرفت تحقیقات در بازی Go کامپیوتری دیده شد، فقط با تأخیر ۲۰ ساله دیگر. تلاش‌های اولیه عظیمی برای جلوگیری از جستجو با استفاده از دانش انسانی یا ویژگی‌های خاص بازی انجام شد، اما همه این تلاش‌ها بی‌ربط یا بدتر از آن، هنگامی که جستجو به طور مؤثر در مقیاس بزرگ اعمال شد، ثابت شد. همچنین استفاده از یادگیری از طریق بازی خودکار (learning by self play) برای یادگیری تابع ارزش (value function) مهم بود (همانطور که در بسیاری از بازی‌های دیگر و حتی در شطرنج بود، اگرچه یادگیری نقش بزرگی در برنامه ۱۹۹۷ که برای اولین بار یک قهرمان جهان را شکست داد، نداشت). یادگیری از طریق بازی خودکار و یادگیری به طور کلی، مانند جستجو است زیرا امکان استفاده از محاسبات عظیم را فراهم می‌کند. جستجو و یادگیری دو کلاس مهم‌ترین تکنیک‌ها برای استفاده از مقادیر عظیمی از محاسبات در تحقیقات هوش مصنوعی هستند. در بازی Go کامپیوتری، مانند شطرنج کامپیوتری، تلاش اولیه محققان به سمت استفاده از درک انسانی (به طوری که به جستجوی کمتری نیاز باشد) هدایت شد و تنها بسیار بعدتر موفقیت بسیار بیشتری با پذیرش جستجو و یادگیری حاصل شد.

در تشخیص گفتار، رقابت اولیه‌ای در دهه ۱۹۷۰ با حمایت DARPA برگزار شد. شرکت‌کنندگان شامل میزبان روش‌های خاصی بودند که از دانش انسانی - دانش کلمات، واج‌ها، دستگاه صوتی انسان و غیره - استفاده می‌کردند. از سوی دیگر، روش‌های جدیدتری وجود داشتند که ماهیت آماری بیشتری داشتند و بر اساس مدل‌های مارکوف پنهان (Hidden Markov Models یا HMMs) محاسبات بسیار بیشتری انجام می‌دادند. باز هم، روش‌های آماری بر روش‌های مبتنی بر دانش انسانی غلبه کردند. این منجر به تغییر عمده‌ای در تمام پردازش زبان طبیعی (Natural Language Processing یا NLP) شد، به تدریج در طول دهه‌ها، جایی که آمار و محاسبات بر این حوزه تسلط یافتند. ظهور اخیر یادگیری عمیق (Deep Learning) در تشخیص گفتار آخرین گام در این مسیر ثابت است. روش‌های یادگیری عمیق حتی کمتر به دانش انسانی متکی هستند و از محاسبات بسیار بیشتری همراه با یادگیری بر روی مجموعه‌های آموزشی عظیم استفاده می‌کنند تا سیستم‌های تشخیص گفتار به طرز چشمگیری بهتری تولید کنند. همانطور که در بازی‌ها، محققان همیشه سعی می‌کردند سیستم‌هایی بسازند که به روشی کار کنند که محققان فکر می‌کردند ذهن خودشان کار می‌کند - آنها سعی می‌کردند آن دانش را در سیستم‌های خود قرار دهند - اما این در نهایت ضد تولید (counterproductive) و هدر دادن عظیمی از وقت محققان ثابت شد، زمانی که از طریق قانون مور، محاسبات عظیمی در دسترس قرار گرفت و وسیله‌ای برای استفاده خوب از آن پیدا شد.

در بینایی کامپیوتری، الگوی مشابهی وجود داشته است. روش‌های اولیه بینایی را به عنوان جستجوی لبه‌ها یا استوانه‌های تعمیم‌یافته یا از نظر ویژگی‌های SIFT تصور می‌کردند. اما امروزه همه اینها کنار گذاشته شده است. شبکه‌های عصبی مدرن یادگیری عمیق فقط از مفاهیم پیچش (convolution) و انواع خاصی از عدم تغییر استفاده می‌کنند و عملکرد بسیار بهتری دارند.

این یک درس بزرگ است. به عنوان یک حوزه، ما هنوز آن را به طور کامل یاد نگرفته‌ایم، زیرا همچنان در حال مرتکب شدن همان نوع اشتباهات هستیم. برای دیدن این موضوع و مقاومت مؤثر در برابر آن، باید جذابیت این اشتباهات را درک کنیم. باید درس تلخی را بیاموزیم که ساختن چگونگی فکر کردن ما در درازمدت کار نمی‌کند. درس تلخ مبتنی بر مشاهدات تاریخی است که

۱) محققان هوش مصنوعی اغلب سعی کرده‌اند دانش را در عوامل خود بسازند،

۲) این همیشه در کوتاه‌مدت کمک می‌کند و برای محقق شخصاً رضایت‌بخش است، اما

۳) در درازمدت به فلات (plateaus) می‌رسد و حتی مانع پیشرفت بیشتر می‌شود، و

۴) پیشرفت‌های بزرگ در نهایت با رویکرد مخالف مبتنی بر مقیاس‌بندی محاسبات با جستجو (search) و یادگیری (learning) می‌رسد.

موفقیت نهایی با تلخی همراه است و اغلب به طور ناقص هضم می‌شود، زیرا این موفقیت بر روی یک رویکرد انسان‌محور مورد علاقه است.

یک چیز که باید از درس تلخ آموخت، قدرت عظیم روش‌های همه منظوره (general purpose methods)، روش‌هایی است که با افزایش محاسبات همچنان مقیاس می‌شوند، حتی زمانی که محاسبات در دسترس بسیار زیاد می‌شود. دو روشی که به نظر می‌رسد به طور دلخواه با این روش مقیاس می‌شوند جستجو و یادگیری هستند.

دومین نکته کلی که باید از درس تلخ آموخت این است که محتوای واقعی ذهن‌ها فوق‌العاده، غیرقابل جبران پیچیده است. ما باید تلاش برای یافتن راه‌های ساده برای فکر کردن در مورد محتوای ذهن‌ها را متوقف کنیم، مانند راه‌های ساده برای فکر کردن در مورد فضا، اشیاء، عوامل متعدد یا تقارن‌ها (symmetries). همه اینها بخشی از دنیای خارج دلخواه و ذاتاً پیچیده هستند. آنها چیزی نیستند که باید ساخته شوند، زیرا پیچیدگی آنها بی‌پایان است. در عوض، ما باید فقط متا روش‌هایی (meta-methods) را بسازیم که بتوانند این پیچیدگی دلخواه را پیدا کنند و ضبط کنند. برای این روش‌ها ضروری است که بتوانند تقریب‌های خوبی (good approximations) پیدا کنند، اما جستجوی آنها باید توسط روش‌های ما باشد، نه توسط خود ما. ما می‌خواهیم عوامل هوش مصنوعی که بتوانند مانند ما کشف کنند، نه آنهایی که حاوی آنچه ما کشف کرده‌ایم هستند. ساختن اکتشافات ما فقط دیدن چگونگی انجام فرآیند کشف را دشوارتر می‌کند.

نکات مهم مقاله

در کل نکات مهم این مقاله شامل سه مورد زیر است:

  • اهمیت روش‌های کلی: روش‌هایی مانند جستجو و یادگیری، به دلیل قابلیت تعمیم‌پذیری و مقیاس‌پذیری، اهمیت ویژه‌ای در هوش مصنوعی دارند.
  • پیچیدگی ذهن انسان: پیچیدگی ذهن انسان بسیار فراتر از آن است که بتوان آن را به سادگی مدل‌سازی کرد.
  • اهمیت متا روش‌ها: متا روش‌ها به ما امکان می‌دهند تا روش‌های جدیدی برای کشف و یادگیری ایجاد کنیم.

در صورتی که تمایل به دریافت جزئیات بیشتری هستید، می‌توانید این دو ویدیو را دنبال کنید:

  • M.H.Zarei
بررسی اولیه دیتابیس StarRocks

در دوران داده‌های بزرگ (Big Data)، داده‌ها برای شرکت‌ها از ارزش بالایی برخوردارند و هدف نهایی تحلیل داده، تصمیم‌گیری سریع و چابک است. پایگاه داده StarRocks به گونه‌ای طراحی شده که در سناریوهای مختلف تحلیل داده، عملکردی بسیار سریع ارائه می‌دهد و در آزمایش‌ها با دیتابیس‌های معروفی همچون ClickHouse، Apache Druid و Trino مقایسه شده است.

آزمایش‌ها نشان داده‌اند که StarRocks در سناریوهای Wide-table و Multi-table به‌ترتیب ۲.۲ و ۵.۵ برابر سریع‌تر از رقبا عمل می‌کند. این پایگاه داده به‌دلیل برخورداری از موتور اجرایی vectorized و cost-based optimizer (CBO) جدید، قادر است تا تحلیل‌های آنی روی داده‌های به‌روز شده را فراهم کند.

StarRocks با استفاده از موتور vectorized، از پردازش‌های CPU بهینه‌تر استفاده می‌کند و عملکرد پردازش‌ها را بین ۳ تا ۱۰ برابر افزایش می‌دهد. همچنین از روش‌های بهینه‌سازی مانند "Bitmap Indexing" و "Late Materialization" برای افزایش کارایی در جستجوهای گسترده بهره می‌برد.

 
نتیجه و جزئیات بیشتر این بنچمارک که توسط تیم StarRocks انجام شده، از طریق https://www.starrocks.io/blog/benchmark-test  در دسترس است.
 
StarRocks به‌عنوان یک سیستم داده دریاچه‌ای نیز عمل کرده و با ویژگی‌هایی چون تقسیم‌بندی، گروه‌بندی و شاخص‌گذاری، به کاربران این امکان را می‌دهد تا بدون نیاز به پیش‌پردازش‌های پیچیده، به سرعت به تحلیل‌های پیچیده و چند‌جدولی دست یابند.
جزئیات بیشتر معماری این دیتابیس از طریق راهنما اصلی در دسترس است:

شروع کار با این دیتابیس

برای استفاده از این دیتابیس می‌توانید با استفاده از داکر با دستور زیر بصورت سریع و ساده در سیستم خود نصب و اجرا کنید:
docker run -p 9030:9030 -p 8030:8030 -p 8040:8040 -itd \
--name quickstart starrocks/allin1-ubuntu

بعد از اجرا شده کانتینر از طریق دستور زیر با محیط شبیه mysql دسترسی به دستابیس خواهید داشت:

docker exec -it quickstart \
mysql -P 9030 -h 127.0.0.1 -u root --prompt="StarRocks > "

با استفاده از خط فرمان بالا، می‌توانید دستورهای مشابه mysql را وارد کنید و خروجی را مشاهده کنید.

همچنین با درایور شبیه mysql با پورت 9030 با استفاده از برنامه‌هایی مانند DBeaver وصل شوید.

تجربه اولیه

من سعی کردم دیتاهای موجود در دیتابیس mysql موجود را بصورت اولیه با فایل sql وارد این برنامه کنم. متاسفانه با اینکه در دستورها و بعضی قابلیت‌ها مشابه mysql است ولی بصورت کامل امکان یکسان نیستند و کوئری‌های براساس راهنمای سایت RockStars نیاز به تغییر دارند تا اجرا شوند.
همچنین برای اجرای این برنامه در محیط عملیاتی (Production) نیاز به حداقل ۳ سرور دارید تا دسترسی پذیری (High Availability) تضمین شود.
  • M.H.Zarei

خود وردپرس قابلیت مدیریت و آپلود فایل دارد ولی وقتی فایل‌ها زیاد یا حجم می‌شود، راهکار استفاده از سرویس‌های S3 بهینه‌تر و مناسب تر است.

یکی از برنامه‌های متن‌باز برای سرویس S3 روی سرورهای خودمون برنامه Minio هست.  راهنمای نصب و استفاده از اون در سایت خودشون است.

برای وصل کردن وردپرس به S3 می‌تونید از افزونه Upcasted S3 Offload استفاده کنید. برای نصب کافیه فایل را دانلود و در پنل وردپرس در قسمت افزونه‌ها نصب کنید.

بصورت پیش فرض این افزونه روی سرویس‌های آمازون و دیجیتال اوشن کانفیگ شده ولی می‌توانید برای Minio هم استفاده کنید.

بعد از نصب افزونه، در قسمت S3 Offload Settings با اطلاعات زیر پر کنید:

پسورد

Region: یکی از سرورهای دیجیتال اوشن مانند [DigitalOcean Spaces] North America - NYC3 انتخاب کنید

آدرس سرور یا آی‌پی minio وارد کنید

Current Bucket: باکت تعریف شده روی minio  را انتخاب کنید.
 
به صورت پیشفرض در minio آدرس باکت‌ها بصورت path قابل استفاده است. بنابراین نیاز به تغییر فایل در پوشه افزونه است:
admin/providers/AmazonCloudManipulator.php

در خط ۲۸ کد زیر را وارد کنید:

'use_path_style_endpoint' => true
 
خروجی فایل مانند عکس زیر می‌شود:
 
 
با تنظیمات بالا، با آپلود فایل در وبلاگ، بصورت خودکار در سرویس Minio S3 ذخیره می‌شود و در قسمت ویرایش پست، فابل‌های آپلود شده قابل انتخاب است.
  • ۰ نظر
  • ۰۶ مرداد ۰۳ ، ۱۱:۵۰
  • M.H.Zarei

این سایت سرویس هاست برای عکس ارائه می‌دهد.

https://background-image.ir

از طریق کدهای css که در سایت توضیح داده شده، می‌توانید پشت زمینه سایت خود را بصورت تصادفی عوض کنید

 

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

https://universe.background-image.ir

به عنوان مثال، این عکس بصورت تصادفی از این سرویس دریافت می‌شود

عکس تصادفی

  • M.H.Zarei

تست و خطایی وبسایت در گوشی موبایل با استفاده از ابزارهای خطایابی از راه دور (Remote Debug) امکان پذیر است. در مرورگر کروم و سیستم عامل اندروید به راحتی می‌توانید این قابلیت را فعال و استفاده کنید. همچنین در گوشی‌های آیفون و سیستم عامل مک نیز این قابلیت وجود دارد. در صورتی که سیستم شما ویندوز یا لینوکس باشد، می‌توانید از ابزار iOS WebKit Debug Proxy برای اتصال گوشی آیفون استفاده کنید.

در ادامه راهنمای نصب و اتصال با استفاده از ابزار iOS WebKit Debug Proxy در ویندوز را توضیح می‌دهم.

برای استفاده از این ابزار،‌ باید آیفون را با کابل USB به کامپیوتر وصل کنید. سپس iOS WebKit Debug Proxy یک پروکسی remote debugging برای مرورگر کروم ایجاد می‌کند که با استفاده از پنل DevTools به آیفون وصل می‌شود و می‌توانید خطاهای پیش آمده در هنگام بارگزاری یک سایت را مشاهده کنید.

برای اتصال گوشی آیفون به کامپیوترتان، باید برنامه iTunes روی ویندوز نصب باشد. می‌توانید برنامه را از سایت p30download دانلود و نصب کنید.

برای فعال سازی اتصال و دیباگ از راه دور، تنظیمات زیر را در گوشی آیفون انجام دهید:

Settings > Safari > Advanced > Web Inspector = ON


برای نصب iOS WebKit Debug Proxy در ویندوز مراحل زیر را انجام دهید.

ابتدا خط فرمان Powershell را با جستجو در منوی استارت ویندوز، باز کنید. راحت‌ترین روش نصب این ابزار، نصب با برنامه scoop است. برای نصب scoop دستور زیر را در خط فرمان اجرا کنید:

iex (new-object net.webclient).downloadstring('https://get.scoop.sh')

ممکن است برای نصب، خطا مشاهده کنید و نیاز به تغییر Policy اجرا داشته باشید. برای این تغییر دستور زیر را اجرا و سپس دوباره دستور بالا را اجرا کنید:

Set-ExecutionPolicy RemoteSigned -scope CurrentUser

بعد از نصب شدن برنامه scoop، با دستورهای زیر برنامه iOS WebKit Debug Proxy نصب می‌شود:

scoop bucket add extras
scoop install ios-webkit-debug-proxy

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

سپس در خط فرمان دستور زیر را اجرا کنید:

ios-webkit-debug-proxy

از طریق مرورگر کروم به آدرس localhost:9221 می‌توانید لیست دستگاه‌هایی که برای دیباگ متصل هستند را مشاهده کنید. سپس از طریق لینک chrome://inspect/#devices می‌توانید دستگاه‌ها را برای اتصال را در قسمت Remote Target ببینید و با کلیک روی آن وصل بشوید.

همچنین از طریق لینک زیر می‌توانید مستقیم وارد قسمت دیباگ کروم برای گوشی آیفون بشوید و جزییات پیش آمده را مشاهده کنید:

chrome-devtools://devtools/bundled/inspector.html?ws=localhost:9222/devtools/page/1

برای توضیحات بیشتر در مورد نحوه استفاده و قابلیت‌های دیباگ کروم می‌توانید راهنمای زیر از سایت گوگل را مطالعه کنید.

https://developers.google.com/chrome-developer-tools


  • ۰ نظر
  • ۱۱ شهریور ۹۷ ، ۰۰:۴۲
  • M.H.Zarei

یکی از دغدغه‌های ادمین‌های سایت اینه که ایمیل‌ها و خبرنامه‌هایی که برای کاربراشون ارسال می‌کنند، اسپم نشه. برای اسپم نشدن باید تنظیماتی روی DNS سایت و یه سری پیکربندی‌هایی روی میل سرور انجام بشه که راهنماهای زیادی روی اینترنت براشون وجود داره.

خب، بعد از انجام همه اون روندها یه سری سوال‌ها مثل این موارد پیش میاد:

  • حالا چجوری باید متوجه بشیم که آیا ایمیل من اسپم می‌شه یا نه؟
  • چقدر احتمال اسپم شدن اون روی سرویس‌های ایمیل مختلف وجود داره؟
  • چقدر احتمال اسپم شدن خبرنامه بخاطر متن ایمیل هست؟
  • اگر ایمیل من اسپم می‌شه، مشکل از کجاست و چجوری باید حلش کنم؟

سرویس‌های آنلاینی برای جواب سوال‌های بالا وجود داره که برای شما این بررسی‌ها را انجام می‌دهند و بهتون برای بهتر شدن ایمیل‌تون کمک می‌کنند. یکی از این سرویس‌ها، سرویس mail-tester هست. تا ۱۰ بررسی در mail-teter رایگان هست و برای بیشتر از اون نیاز به هزینه هست.

برای استفاده از این سرویس و بررسی ایمیل، وارد سایت mail-tester بشوید. بالای سایت یه آدرس ایمیل هست که باید ایمیل یا خبرنامه را با همون میل سرور خودتون به اون آدرس ارسال کنید. بعد از ارسال، دکمه THEN CHECK YOUR SCORE را بزنید تا متن ایمیل و میل سرور شما را بررسی کند. بعد از بررسی یه نمره و گزارشی از وضعیت میل سرورتون می‌دهد. در صورت وجود مشکلی یه سری راهنمایی‌هایی برای حل اون هم ارائه می‌دهد.

  • M.H.Zarei
پروتکل DNS برای تبدیل آدرس IP (که برای ارتباط کامپیوترها در شبکه اینترنت استفاده می‌شود) به یک آدرس (دامنه) به زبان خوانا برای انسان‌ها استفاده می‌شود. مثلا شما به جای اینکه گوگل را با IP آن (http://216.58.211.14) باز کنید، شما آدرس را به صورت http://google.com در مرورگر خود وارد کرده و وارد سایت گوگل می‌شوید.
معمولا آدرس IP که برای کامپیوترها بخصوص سرورها استفاده می‌شود، ایستا است و شما یک دامنه را به یک IP نگاشت می‌کنید. اگر شما آدرس IP ایستا نداشته باشید، این راه‌حل را نمی‌توانید استفاده کنید.
برای حل این مشکل می‌توانید از آدرس DNS پویا استفاده کنیدکه امکان تغییر IP دامنه را به راحتی در اختیار شما قرار می‌دهد. یکی از فراهم‌کننده‌های رایگان این سرویس، سایت freedns.afraid.org می‌باشد. شما در ابتدا باید در این سایت ثبت نام کرده و با ایمیل فعال سازی که برای شمال ارسال می‌شود، حساب خود را فعال کنید.
در ابتدا باید برای تعریف دامنه خود در قسمت Domains مشخصات دامنه را وارد کنید. در صورتی که دامنه‌ای ندارید و یا می‌خواهید از زیردامنه‌های رایگان سایت استفاده کنید، می‌توانید در قسمت Subdomains یک زیر دامنه با IP‌ کامپیوتر مورد نظر خود ایجاد کنید.
شما با تعریف هر دامنه و زیر دامنه در سایت یک آدرس وب یکتا به آن داده می‌شود که با باز کردن آن، آدرس IP آن دامنه به آدرس IP درخواست کننده تغییر خواهد یافت. آدرس‌های یکتا در قسمت Dynamic DNS قابل مشاهده می‌باشد. برای خودکار شدن این فرایند می‌توانید از اسکریپت‌های آماده Wget و Curl استفاده کنید که در جلوی دامنه نشان می‌دهد.
بدین صورت شما امکان تعریف دامنه یا زیردامنه برای کامپیوتر خود دارید که ممکن است با توجه به شرایط و تغییرات شبکه IP آن عوض شود ولی با اجرای خودکار اسکریپت‌ها این تغییرات روی دامنه اعمال می‌شود و امکان استفاده کاربران شما با دامنه تعریف شده را خواهند داشت.
  • M.H.Zarei
شاید فکر کنید که همه این چیزها عادی هست، ولی تا جایی که ذهن من یاری می‌کند ۴ سال پیش که انتخابات ریاست جمهوری داشتیم همه چیزی برعکس بود. یعنی ف-ی-ل-ت-ر سایت‌هایی که قبلا فیلتر بودند برداشته شده بود مثل سایت فیس‌بوک، فرندفید و ...
ولی تقریبا هنگام شروع سال جدید که قراره انتخابات انجام بشه، با مشکل باز شدن سایت‌های https مواجه شدیم! قبل از اون هم بستن تمامی VPNها شروع شده بود و در آخر امتحانات دانشگاه زودتر از موعد قراره برگذار بشه و ...
خب این اتفاق‌ها مثل قبل نیست! اوضاع یکم تغییر کرده!
  • ۰ نظر
  • ۱۷ ارديبهشت ۹۲ ، ۲۲:۵۶
  • M.H.Zarei

متن زیر، متن پیش فرض بلاگ.ir هست که حذف نمی‌کنم...

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

بلاگ نویسی یکی از موثرترین شیوه های نوین اطلاع رسانی است و در جهان کم نیستند بلاگ هایی که با رسانه های رسمی خبری رقابت می کنند. در بعد کسب و کار نیز، روز به روز به تعداد شرکت هایی که اطلاع رسانی محصولات، خدمات و رویدادهای خود را از طریق بلاگ انجام می دهند افزوده می شود.

  • M.H.Zarei

متن زیر، متن پیش فرض بلاگ.ir هست که حذف نمی‌کنم...

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

گاهی هدف از نوشتن ترویج نظرات و دیدگاه های شخصی نویسنده یا ابراز احساسات و عواطف اوست. برخی هم انتشار نظرات خود را فرصتی برای نقد و ارزیابی آن می دانند. البته کسانی که دیدگاه های خود را در قالب هنر بیان می کنند، تاثیر بیشتری بر محیط پیرامون خود می گذارند.

  • M.H.Zarei