استخراج اطلاعات با استفاده از یادگیری نیمه‌نظارتی

تغییرات پروژه از ابتدا تا تاریخ 1393/08/17
انسان اطلاعات زیادی در مورد دنیای پیرامون خود دارد و وقتی متنی را می‌نویسد در مورد همین دانسته‌ها صحبت می‌کند. مثلا می‌گوید: «این *بازیکن فوتبال*، در *بازی روز قبل* حضور نداشت». ماشین این چیزها را نمی‌داند ولی اگر می‌دانست، خیلی فایده داشت. **استخراج اطلاعات** برای بدست آوردن دانسته‌های انسان، از روی متون نوشتاری معرفی شده است.

یکی از راه‌های پاسخ به این مساله، گسترش دانسته‌ها توسط ماشین است. مثلا اگر ما *اسم ۲۰ بازیکن فوتبال* را بدانیم، می‌توانیم از آنها برای پیدا کردن نام بقیه استفاده کنیم. سپس می‌توانیم نام‌هایی را که فکر می‌کنیم به درستی استخراج شده‌اند را هم به دانسته‌های اولیه اضافه کنیم و اینطوری الگوهای جدیدی را برای استخراج بدست بیاوریم. به این ترتیب اگرچه داده‌های آموزشی اولیه کم باشد، می‌توانیم مرحله به مرحله روی داده‌های بیشتری آموزش ببینیم. این روش به خودراه‌اندازی[^Bootstrapping] معروف است که یکی از انواع یادگیری نیمه‌نظارتی[^Semi-Supervised Learning] به حساب می‌آید.

* این پروژه توسط یک بنگاه تجاری تعریف شده است و اگر به خوبی انجام شود، مورد حمایت قرار می‌گیرد.

# مقدمه
**یادگیری نیمه نظارتی چیست؟**
همانطور که از اسم آن مشخص است روشی میان یادگیری نظارتی و یادگیری غیر نظارتی می‌باشد. در این روش بعضی از داده‌ها دارای بچسب بوده و بعضی نیز برچسب ندارند. به علت اینکه در خیلی از برنامه‌های کاربردی عملیات برچسب گذاری هزینه‌بر و زمان‌بر می‌باشد. برای اینکه کارایی را افزایش داده و از کل توان خود در حل مسئله برای بهبود بیشتر استفاده کنیم می‌توان از داده‌های بدون برچسب نیز استفاده نمود. در یادگیری نیمه‌نظارتی هدف یافتن روش‌هایی است که با استفاده از داده‌های بدون برچسب و داده‌های برچسب‌دار به حل مسئله پرداخته و کارایی را نسبت به قبل افزایش دهند[4].

**چه زمانی باید از یادگیری نیمه نظارتی استفاده کرد؟**
پرسش اصلی در زمینه یادگیری نیمه نظارتی این است که اصولا تحت چه شرایطی باید از این روش استفاده کرد. به عبارتی در چه مسائلی و یا روی چه مجموعه داده‌هایی استفاده از این روش منجر به بهبود عملکرد عامل یادگیرنده یا جداساز می‌شود. یا بطور کلی‌تر آیا استفاده از داده‌های بدون بچسب واقعا می‌تواند کارایی را بهبود بخشد. نگاهی به حجم مقلات ارائه شده در این زمینه نشان می‌دهد پاسخ مثبت است، اما یک شرط اساسی وجود دارد و آن هم اینکه باید توزیع نمونه‌ها که به کمک داده‌های بدون برچسب برآورد می‌شود، مناسب مسئله جداسازی باشد. در حقیقت داده‌های بدون برچسب کمک می‌کند تا دانش اولیه درمورد توزیع داده‌ها کسب شود.
به بیان دقیق‌تر ، در صورتی استفاده از داده‌های بدو ن برچسب مفید واقع خواهد شد، که دانش بدست آمده از داده‌های بدون برچسب درمورد توزیع داده‌ها (p(x، حاوی اطلاعات مفیدی برای استنتاج درمورد (p(y|x باشد. اگر این موضوع در یک مسئله خاص برقرار نباشد، روش نیمه‌نظارتی کمکی در بهبود تعمیم پذیری جداساز نخواهد داشت، حتی ممکن است داده‌های بدون برچسب با اطلاعات نادرستی که درمورد توزیع داده‌ها می‌دهند، موجب افزایش خطای جداسازی شوند. بر این اساس واضح است برای استفاده از روش‌های نیمه‌نظارتی، پیش‌فرض‌های بخصوصی باید برقرار باشد که این پیش‌فرض‌ها همان دانش پیشین هستند. همان طور که گفته شد استفاده از داده‌های بدون برچسب درحقیقت معادل با یادگیری توزیع داده‌ها است، و هر فرآیند یادگیری برای همگرا شدن نیازمند یک دانش پیشین است[5].
پیش فرض‌ها:
• پیش فرض همواری در یارگیری نیمه نظارتی[^The semi supervised smoothness assumption] : اگر دو نقطه x1 و x2 در یک منطقه با چگالی بالا نزدیک به هم باشند، برچسب‌های متناظر آن‌ها یعنی y1 و y2 هم باید نزدیک باشند.
• پیش فرض خوشه[^The Cluster Assumption] : داده‌های موجود در یک خوشه احتمالا برچسب‌های مشابهی دارند.
• پیش فرض خمینه[^The Manifold Assumption] : ( درفضای ورودی با بعد بالا) داده‌ها (تقریبا) روی یک خمینه با بعد پایین‌تر قرار دارند و تابع جداساز روی خمینه داده‌ها هموار است.
**روش های یارگیری نیمه نظارتی[7]:**
Constrained Clustering
Distance Metric Learning
Manifold Methods in Vision
Sparsity based Learning
Active Learning



# کارهای مرتبط
**سامانه (NELL(Never Ending Lanquage Learning:**
سامانه NELL برای پر کردن شکل ساده شده‌ای از یک هستان شناسی ایجاد شده است. در واقع این سامانه قرار نیست رابطه یا نوع جدیدی کشف کند و فقط برای پیدا کردن نمونه‌ها ایجاد شده است. همچنین این سامانه با هدف ایجاد هم افزایی در استخراج اطلاعات طراحی شده است. یعنی قرار است ماشین از اطلاعات استخراج شده برای بهبود کیفیت استخراج استفاده کند. NELL برای رسیدن به این هدف، اطلاعات را با روش‌های مختلف استخراج می‌کند و سپس به سازگاری میان آن‌ها می‌اندیشد. حاصل این فرایند افزوده شدن نمونه‌های مطمئن به هستان شناسی اولیه است که در عمل منجر به بهبود کیفیت استخراج می‌شود.
**سامانه Snowball:**
از روش (DIPRE(Dual Iterative Pattern Expansionشروع می کنیم که به نوعی مبنی کار Snowball است. این روش را میتوان تقریبا بدیهی ترین شکل فرایند خود راه اندازی برای استخراج اطلاعات دانست. گفتیم که در این روش‌ها سامانه با تعداد داده‌ی ورودی آغاز به کار می‌کند، بنابراین DIPRE با جستجوی داده‌های ورودی سعی می‌کند، الگوی وقوع آن‌ها را کشف کند. برای این منظور، هر داده با ویژگی‌های << ترتیب وقوع آرگومان‌ها، آدرس وقوع، متن چپ، متن وسط و متن راست>> توصیف می‌شود. این توصیف امکان استخراج الگوهای مختلف را در آدرس‌های مختلف وب و با انطباق متن‌های اطراف آرگومان ها فراهم می‌کند.  همچنین  در این روش از یک عبارت با قاعده هم برای توصیف آرگومان‌ها استفاده می‌شود، تا از خطاهای واضح جلوگیری شود. سامانه Snowball هم تقریبا چنین عمکردی دارد و سعی کرده است این روش را بهتر انجام دهد. قواعد استخراج این سامانه با استفاده از تشخیص اسامی موجودیت‌ها تقویت شده‌است. تغییر دیگر افزودن احتمال وقوع به هرکدام از واژه‌های زمینه مربوط به قاعده است و برای محاسبه آن‌ها از تکرارهای مختلف نمونه‌ها استفاده می‌کند. حلقه‌ی تکرار این سامانه نیز مطابق دیگر نمونه‌های خود راه انداز، با جمع آوری داده‌ی مطمئن برای بهتر یادگرفتن الگو عمل می‌کند[6,2].


# آزمایش‌ها

# کارهای آینده

# مراجع
[1] Carlson, Andrew, et al. "Toward an Architecture for Never-Ending Language Learning." AAAI. Vol. 5. 2010.
[2] Agichtein, Eugene, and Luis Gravano. "Snowball: Extracting relations from large plain-text collections." Proceedings of the fifth ACM conference on Digital libraries. ACM, 2000.
[3] Zhu, Jun, et al. "StatSnowball: a statistical approach to extracting entity relationships." Proceedings of the 18th international conference on World wide web. ACM, 2009.
[4] Xiaojin Zhu and Andrew B. Goldberg. Introduction to Semi-Supervised Learning. Morgan & Claypool, 2009.
[5]Oliver Chapell،  Bernhard Schölkopf and Alexander Zien. Semi-Supervised Learning. Massachusetts Institute of Technology2006
[6] Sergey Brin. Extracting Patterns and Relations from the World Wide Web. In WebDB Workshopat 6th International Conference on Extending Database Technology, pages 172–183, 1998.
[7] X. Zhu. Semi-supervised learning literature survey. Technical Report 1530, Department of Computer Sciences, University of Wisconsin, Madison, 2005.





# پیوندهای مفید
+ [علیرضا نوریان، "استخراج آزاد اطلاعات"، سمینار کارشناسی ارشد، دانشگاه علم و صنعت ایران، تهران، ۱۳۹۱.](https://dl.dropboxusercontent.com/u/90405495/seminar.pdf)
+ [پایگاه دانشی که به روش نیمه‌نظارتی ساخته شده](http://rtw.ml.cmu.edu)