۱. چکیده :

برای پیدا کردن حقایق جدید مربط در متون ، ب طور گسترده ای از روش های نظارت دور یا (distant supervised) استفاده میشه.با این حال distant supervised با مشکل لیبل دهی اشتباه یا wrong labeling همراه است،اسا این داده های noisy به عملکرد relation extraction صدمه می زنند. ما برای تسکین این مشکل می خوایم برای عمل relation extraction یک مدل sentence-level attention-based ارائه بدیم.در این مدل ما از CNN برای معانی نهفته در جملات استفاده می کنیم.بعد ما sentence-level attention over multiple instances را می سازیم که انتظار داریم به صورت پویا وزن این نمونه های noisy را کاهش دهد.نتایج آزمایشات روی dataset های دنیای واقعی نشان می دهد که مدل ما می تواند به طور کامل روی همه جملات معنی دار مورد استفاده قرار گیرد و تاثیر بسزایی روی کاهش تاثیر این نمونه های های با لیبل اشتباه بگذارد.مدل ما در قیاس با سایر روش ها بهبود قابل توجه و استواری را روی عمل relation extraction بدست می آورد.
سورس کد این مقاله در لینک زیر موجود است:
https://github.com/thunlp/NRE.

۲. معرفی

در سال های اخیر پایگاه های دانش متنوع و با مقیاس های بزرگی مانند Freebase،ِDbpedia،YAGO ساخته شده اند و برای کار های زیادی در زمینه nlp مانند جست و جو در وب و question answering مورد استفاده قرار گرفته اند.اغلب این KB ها relation fact ها رو به صورت tuple های 3 تایی و... مانند (Microsoft founder Bill-Gates) ساخته اند.اگرچه این KB های موجود شامل مقدار زیادی از حقایق هستند ، اما هنوز در قیاس با حقایق بی نهایت دنیای واقعی فاصله زیادی دارند.برای غنی سازی KB ها تلاش های زیادی شده است تا relation fact های ناشناس ، به صورت اتوماتیک پیدا شوند.بنا براین relation extraction (RE) (فرآیند تولید داده های مرتبط(relation data) از متن ساده ، امری ضروری در nlp است.
اغلب سیستم هاSupervised RE موجود ، به مقادیر زیادی از training data هایی که به صورت رابطه ای label خورده اند احتیاج دارند(labelled relation-specific training data) که برای تهیه آنها به زمان و نیروی انسانی زیادی احتیاج است.(در انتهای این بخش برخی از این روش ها توضیح داده خواهند شد)

(Mintz et al., 2009):

سیستم با نظرات دور (distant supervised) ای را پیشنهاد می کند که از طریق KB ها و text ها ، به طور اتوماتیک ، training data تولید کند.
آنها فرض می کنند اگر 2 entity یک رابطه در KB داشته باشند ، پس همه جملاتی که شامل این 2 entity هستند هم این رابطه را بیان می کنند.به عنوان نمونه، (Microsoft founder Bill-Gates) یک relation fact در KB است. distant supervision ، همه جملاتی را که شامل این 2 موجودیت هستند را به عنوان نمونه فعالیتی از رابطهfounder در نظر می گیرد.اگرچه distant supervision یک استراتژی ماثره که به صورت اتوماتیک به training data لیبل دهی می کند ف اما این روش همیشه از مشکل wrong labeling رنج می برد.برای نمونه جمله ی “Bill Gates ’s turn to philanthropy was linked to the antitrust problems Microsoft had in the U.S. and the European union.”
، رابطه founder را بیان نمی کند اما هنوز به عنوان نمونه فعالیتی از رابطهfounder در نظر گرفته می شود.
(Riedel et al., 2010; Hoffmann et al., 2011;Surdeanu et al., 2012):
از این رو این 3 فرد در تحقیقتشان از شیوه multi-instance learning را اتخاذ کردند تا تاثیر مسئله لیبل دهی اشتباه را کم کنند.نقطه ضعف اصلا این روش ها اینه که اغلب از ویژگی ها رو از طریق ابزرا های مnlp (nlp toolkit) مانند POS tagging بدست می آورند , error های تولید شده بوسیله ی ابزار های nlp ، در این روش ها انتشار خواهد یافت.برخی کار های جدید سعی کردند از از شبکه های عصبی deep بدون دستکار ویژگی ها در عمل Relation extraction استفاده کنند.این روش ها هم به مشکلاتی مواجه شد تا اینکه:
(Zeng et al., 2015):

روش multi-instance learning را با مدل شبکه های عصبی بیان کرد تا بتواند relation extractor هایی بر پایه distant supervised بسازد.اگرچه این روش به بهبود ماثری در relation extraction دست یافت ، هنوز تا نقطه قانع کنند فاصله زیادی وجود داشت.در این روش فرض بر این است که حداقل یک جمله که به 2 entity اشاره می کند ، رابطشون رو بیان خواهد کرد و فقط جمله ای که بیشترین احتمال را دارد برای هر جفت entity ، در training و prediction انتخاب می شود . روشن است که این روش حجم زیادی از اطلاعات را در جملات کنار گذاشته شده ، از دست می دهد.در این مقاله یک sentence-level attention-based CNN را برای distant supervised relation extraction پیشنهاد میدهیم.

شکل 1

همانطور که در شکل 1 نشان داده شده ، ما برای معانی نهفته جملات از یک CNN استفاده کردیم.سپس، برای استفاده از همه جملات بامعنی ، ما رابطه رو به صورت ترکیب معنایی مفاد جملات تعریف می کنیم.برای کاهش مشکل برچسب زدن اشتباه ، ما یک sentence-level attention over multiple instances می سازیم ، که انتظار داریم به صورت پویا وزن این نمونه های noisy را کاهش دهد. در نهایت با بردار رابطه های وزن دهی شده بوسیله ی sentence-level-attention ، رابطه را استخراج می کنیم.ما مدلمون رو بر روی یک dataset دنیای واقعی برای کار relation-extraction ارزیابی می کنیم. نتایج آزمایشات نشان می دهد که مدل ما بهبود استوار و ماثری در قیاس با روش های state-of-art در عمل relation extraction خواهد داشت.
بخش های این مقاله می تونه به قسمت های زیر خلاصه بشه:
-در قیاس با مدل های مبتی بر شبکه های عصبی برای عمل relation extraction ، مدل ما می تواند کاملا از همه جملات معنی دار برای هر entity استفاده کند.
-برای حل مشکل wrong labeling نمونه ها در distant supervision ما روشی رو پیشنهاد میدیم با عنوان :
Selective attention to de-emphasize those noisy instance


در این آزمایشات ، ما نشان می دهیم که توجه انتخابی (selective attention) در 2 نوع مدل CNN در کار استخراج رابطه ها (relation extraction) سودمند است.
در این بخش به معرفی relation extraction و برخی روش های یافتن آن در متون می پردازیم :
به بیان ساده ، relation extraction ، رابطه ی بین موجودیت هاست.relation extraction اصلی ترین قسمت information extraction است.







چگونه یک relation extractor بسازیم :
1)Hand-written pattern
2)Supervised machin learning
3)Semi-supervised and unsupervised:
Bootstrapping (using seed)
Distant supervision
Unsupervised learning from the web

چگونه در سیستم های Supervised relation extraction ، کلاس بندی انجام بدیم؟
1)ّهمه جفت entity ها رو پیدا کنیم(معمولا در هر جمله)
2)تصمیم بگیریم که آیا 2 موجودیت با هم مرتبطند یا نه
3)اگر مرتبطند ، رابطه رو کلاس بندی می کنیم
Formulate the problem as a classification problem
Given a set of +ve and –ve training examples
Sentence : S = W1 W2 ...e1...Wi...e2...Wn-1Wn





Kernel Tree

برخی کاربرد های دیگر relation extraction :

Entity tuple : entities are bound in a relation
r(e1,e2,...,en)

  • Question Answering : Ravichandran & Hovy (2002)
    Extracting entities and relational patterns for answering factoid questions (Example: “When was Gandhi born ?” amounts to looking for Born-In(Gandhi, ??) in the relational database)
    -Mining bio-medical texts
    Protein binding relations useful for drug discovery
    Detection of cancerous genes (“Gene X with mutation Y leads to malignancy Z”)

۳. تشریح distant supervised :

اغلب سیستم های supervised نیاز به یک مجموعه به عنوان training data دارند . رویکرد سنتی برای جمع آوری training data اینه که یک مجموعه از document ها توسط انسان label زده بشه. این رویکرد هم از نظر زمان و نیروی انسانی مقرون به صرفه نیست.مخصوصا اگر حجم cupose امون زیاد باشه بسیار محتمله که عامل انسانی خطا کنه و داده های train امون noisy باشند.
رویکرد جایگزین اینه که training data رو با استفاده از distant supervision تولید کنیم.در distant supervision ما از یک پایگاه داده موجود مانند Freebase استفاده می کنیم تا نمونه هایی رو برای رابطه ای که می خوایم استخراج کنیم جمع کنیم.بعد ما از این نمونه ها استفاده می کنیم تا به طور اتوماتیک training data رو تولید کنیم.به عنوان نمونه ، Freebase شامل این حقیقت است که باراک اوباما و میشل اوباما ازدواج کردند، ما این حقیقت رو می گیریم و بعد هر جفت "باراک اوباما"،"میشل اوباما" رو که در جمله ای آمده بود رو به عنوان یک نمونه positive برای رابطه ی ازدواج ، label می زنیم(البته امکان noisy بودن وجود دارد).از distant supervision استفاده می کنیم تا نمونه های pos رو به راحتی برای یک Relation خاص بدست آوریم، اما برای بدست آوردن نمونه های neg ی رابطه به تلاش بیشتری نیاز داریم.
برای اینکه یک سیستم خوب train بشه نیاز داریم نمونه های Neg هم خوب تعریف بشه چون در غیر این صورت تمام predict ها در عمل classification از نوع pos تشخیص داده می شوند.
چند راه رایج برای تولید شواهد منفی رو توضیح می دهیم:
1)incompatible relations :

فرض کنید برای دو موجودیت x , y ، ما یک رابطه A را می خواهیم .و رابطه B با A ناسازگار است.
B(x,y) => not A(x,y)
به عنوان مثال اگر ما می خواهیم برای رابطه "همسری" نمونه های منفی تولید کنیم ، ما می تونیم از رابطه های ناسازگار با رابطه ی "همسری" مانند parrent.child.sibiling استفاده کنیم.اگر x,y رابطه parent داشته باشند دیگر نمی توانند رابطه "همسری" داشته باشند.
2)Domain specific rules :

گاهی اوقات ما می تونیم از دانش مون در سایر حوزه ها به عنوان فیلتر استفاده کنیم.مثلا این قانون رو بزرایم که افرادی که همسن نیستند نتونن با هم رابطه همسری داشته باشند.اگر y دارای birth_date ای بیشتر از x است، آنها نمی توانند با هم ازدواج کنند.
3)random-sample :

به صورت Random برخی نمونه ها به عنوان neg در نظر گرفته بشوند.

۴. کار های مرتبط

استخراج رابطه ها یکی از مهمترین کار ها در زمینه nlp است.تلاش های زیادی در زمینه استخراج رابطه ، به خصوص supervised relation extraction شده است.بیشتر این روش ها نیاز به اطلاعات حاشیه نویسی شده زیادی هستند که تهیشون نیاز به صرف زمان و نیروی انسانی زیادی است.در سال 2009 ،Mintz برای حل این مشکل روشی رو برای متن ساده و Freebase با استفاده از distant supervision ارائه می کند.که متاسفانه با مشکل wrong labeling همراه است . در سال 2010، Riedel برای تسکین این مشکل مدل distant supervision for relation extraction as a multi-instance single label problem رو پیشنهاد داد.بعد از اون hofmann در سال 2011 روشی رو با عنوان multi-instance multi-label learning در relation extraction رو پیشنهاد داد.به همین ترتیب روش های دیگری هم مبتنی بر feature ها ارائه شد که وابستگی زیادی به کیفیت feature های تولید شده بوسیله ابزارهای nlp دارند و به همین دلیل از مشکل انتشار error ها رنج می برند.
اخیراdeep learning به شکل گسترده ای در حوزه های گوناگون شامل بینایی ماشین،پردازش گفتار و ... مورد استفاده قرار می گیرد.از یادگیری عمیق حتی در nlp در حوزه های گوناگونی مانند آنالیز احساسی،تجزیه،ترجمه ماشینی استفاده شده.
به خاطر موفقیت های اخیر در یادگیری عمیق ، بسیاری از محققین در حال بررسی احتمال استفاده از شبکه های عصبی در اتوماتیک کردن یادگیری ویژگی ها برای استخراج رابطه هستند.

۵. روش شناسی

یک مجموعه از جملات به صورت { X1 , X2 , ... , Xn} و 2 موجودیت متناظر داده شده اند ، مدل ما احتمال هر رابطه r را اندزه می گیرند. در این بخش ما می خواهیم در 2 قسمت ، بخش های اصلی مدلمون رو معرفی کنیم :
Sentence Encoder :

یک جمله x و 2 تا entity هدف داده شده اند ، از یک CNN برای ساختن نمایش توزیع شده ی جمله x استفاده شده .
Selective Attention over Instances :

وقتی بردار نمایش های توزیع شده ی همه ی جملات یاد گرفته شد ، ما از sentence-level attention استفاده می کنیم که جملاتی رو که واقعا رابطه ی متناظر را بیان می کنند را انتخاب کنند.

شکل 2

ما جمله ی x را بوسیله ی یک CNN به شکل توزیع شده تبدیل می کنیم.ابتدا، کلمات جمله در یک بردار dense از ویژگی ها قرار می گیرند،بعد CNN ،لایه max-pooling،non-linear transformation layer استفاده شدند تا نمایش توزیع شده ای از جملات رو بسازند.

۶. دادگان

ما مدلمون روی یک دادگان پر استفاده ارزیابی کردیم که بوسیله Rielel در سال 2010 توسعه داده شده و بعد ها هم توسط دیگر محققین از آن استفاده شد.این دیتاست از طریق همترازی روابط Freebase و متون New York Times تولید شده بود.entityها از طریق Stanford named entity tagger استخراج شدند و بعد با name entity های Freebase هماهنگ شدند.

۷. آزمایشات

۸. منابع

[1]S¨oren Auer, Christian Bizer, Georgi Kobilarov, Jens Lehmann, Richard Cyganiak, and Zachary Ives. 2007. Dbpedia: A nucleus for a web of open data.Springer.
[2]Dzmitry Bahdanau, Kyunghyun Cho, and Yoshua Bengio.2014. Neural machine translation by jointly learning to align and translate. arXiv preprint arXiv:1409.0473.
[3]Yoshua Bengio. 2009. Learning deep architectures for ai. Foundations and trends R in Machine Learning,
2(1):1–127.
[4]Kurt Bollacker, Colin Evans, Praveen Paritosh, Tim Sturge, and Jamie Taylor. 2008. Freebase: a collaboratively
created graph database for structuring human knowledge. In Proceedings of KDD, pages
1247–1250.
[5]Razvan Bunescu and Raymond Mooney. 2007. Learning to extract relations from the web using minimal
supervision. In Proceedings of ACL, volume 45,page 576.
[6]Jan Chorowski, Dzmitry Bahdanau, Kyunghyun Cho, and Yoshua Bengio. 2014. End-to-end continuous speech recognition using attention-based recurrent nn: first results. arXiv preprint arXiv:1412.1602.
[7]Ronan Collobert, Jason Weston, L´eon Bottou, Michael Karlen, Koray Kavukcuoglu, and Pavel Kuksa.2011. Natural language processing (almost) from scratch. JMLR, 12:2493–2537.
[8]Thomas G Dietterich, Richard H Lathrop, and Tom´as Lozano-P´erez. 1997. Solving the multiple instance problem with axis-parallel rectangles. Artificial intelligence,
89(1):31–71.
[9]Cıcero Nogueira dos Santos and Maıra Gatti. 2014.Deep convolutional neural networks for sentiment analysis of short texts. In Proceedings of COLING.
[10]Cıcero Nogueira dos Santos, Bing Xiang, and Bowen Zhou. 2015. Classifying relations by ranking with convolutional neural networks. In Proceedings of ACL, volume 1, pages 626–634.
[11]Jenny Rose Finkel, Trond Grenager, and Christopher Manning. 2005. Incorporating non-local information into information extraction systems by gibbs sampling. In Proceedings of ACL, pages 363–370. Association for Computational Linguistics.
[12]Raphael Hoffmann, Congle Zhang, Xiao Ling, Luke Zettlemoyer, and Daniel SWeld. 2011. Knowledgebased
weak supervision for information extraction of overlapping relations. In Proceedings of ACLHLT,pages 541–550.
[13]Mike Mintz, Steven Bills, Rion Snow, and Dan Jurafsky.2009. Distant supervision for relation extraction
without labeled data. In Proceedings of ACLIJCNLP,pages 1003–1011.
[14]Volodymyr Mnih, Nicolas Heess, Alex Graves, et al.2014. Recurrent models of visual attention. In Proceedings
of NIPS, pages 2204–2212.
[15]Sebastian Riedel, Limin Yao, and Andrew McCallum.2010. Modeling relations and their mentions without
labeled text. In Proceedings of ECML-PKDD,pages 148–163.
[16]Richard Socher, Brody Huval, Christopher D Manning,and Andrew Y Ng. 2012. Semantic compositionality
through recursive matrix-vector spaces. In Proceedings of EMNLP-CoNLL, pages 1201–1211.
[17]Richard Socher, John Bauer, Christopher D Manning,and Andrew Y Ng. 2013. Parsing with compositional
vector grammars. In Proceedings of ACL.Citeseer.
[18]Nitish Srivastava, Geoffrey Hinton, Alex Krizhevsky,Ilya Sutskever, and Ruslan Salakhutdinov. 2014.
Dropout: A simple way to prevent neural networks from overfitting. JMLR, 15(1):1929–1958.
[19]Fabian M Suchanek, Gjergji Kasneci, and Gerhard Weikum. 2007. Yago: a core of semantic knowledge.
In Proceedings of WWW, pages 697–706.ACM.
[20]Mihai Surdeanu, Julie Tibshirani, Ramesh Nallapati, and Christopher D Manning. 2012. Multi-instance
multi-label learning for relation extraction. In Proceedings of EMNLP, pages 455–465.
[21]Ilya Sutskever, Oriol Vinyals, and Quoc V Le. 2014.Sequence to sequence learning with neural networks.
In Proceedings of NIPS, pages 3104–3112.
[22]Ruobing Xie, Zhiyuan Liu, Jia Jia, Huanbo Luan, and Maosong Sun. 2016. Representation learning of
knowledge graphs with entity descriptions.
[23]Kelvin Xu, Jimmy Ba, Ryan Kiros, Aaron Courville,Ruslan Salakhutdinov, Richard Zemel, and Yoshua
Bengio. 2015. Show, attend and tell: Neural imagecaption generation with visual attention. Proceedings of ICML.
[24]Daojian Zeng, Kang Liu, Siwei Lai, Guangyou Zhou,and Jun Zhao. 2014. Relation classification via convolutional
deep neural network. In Proceedings of COLING, pages 2335–2344.
[25]Daojian Zeng, Kang Liu, Yubo Chen, and Jun Zhao.2015. Distant supervision for relation extraction via
piecewise convolutional neural networks. In Proceedings of EMNLP.