متن کاوی چیست؟

مقاله زیر خلاصه ای از نتایج مطالعه چندین مقاله معتبر انگلیسی و فارسی بوده و سعی در ارائه توضیحاتی هر چند مختصر درباره متن کاوی یا text mining و روش ها و تکنولوژی های مورد استفاده در آن و همچنین معرفی برخی از کاربردهای متن کاوی و در نهایت معرفی برخی ابزارهای متن کاوی موجود در وب به همراه لینک سایت مورد نظر این ابزارها دارد. هرچند معرفی کلیه روش ها و کاربردها و ابزارهای بی شماری که برای متن کاوی وجود دارد در یک مقاله امکان پذیر نیست ولی در این مقاله سعی شده بسیاری از این موارد در حد آشنایی مقدماتی شما خواننده محترم پوشش داده شود.

در ادامه ابتدا با تعریف متن کاوی آغاز می کنیم سپس نحوه کار آن و روش ها و تکنولوژی های مورد استفاده در متن کاوی را بررسی کرده و در نهایت کاربردهای متن کاوی در عرصه های مختلف را بررسی کرده و در آخر هم برخی ابزارهای نرم افزاری موجود معرفی می شوند.
از آنجایی که حجم اطلاعات الکترونیکی و آنلاین روز به روز بیشتر می شود  دسترسی سریع و صحیح به منابع مهم و مورد علاقه، یكی از دغدغه های استفاده از این منبع اطلاعاتی بسیار بزرگ است. ارایه ابزاهایی كه با بررسی متون بتواند تحلیلی روی آنها انجام دهند منجر به شكل گیری این زمینه‌ در هوش مصنوعی شده كه به متن کاوی معروف است. این حوزه تمام فعالیتهایی كه به نوعی به دنبال كسب دانش از متن هستند را شامل می‌گردد. آنالیز داده های متنی توسط تكنیكهای یادگیری ماشین، بازیابی اطلاعات هوشمند، پردازش زبان طبیعی یا روشهای مرتبط دیگر همگی در زمره مقوله متن کاوی قرار می‌گیرند. این تكنیكها در ابتدا در مورد داده های ساخت‌یافته به كار گرفته شدند و علمی به نام داده كاوی را بوجود آوردند. داده های ساخت‌یافته به داده هایی گفته می شود كه بطور كاملاً مستقل از همدیگر ولی یكسان از لحاظ ساختاری در یك محل گردآوری شده اند. انواع بانكهای اطلاعاتی را می‌توان نمونه هایی از این دسته اطلاعات نام برد. در اینصورت مسئله داده كاوی عبارت از كسب اطلاعات و دانش از این مجموعه ساخت یافته. اما در مورد متون كه عمدتاً غیر ساخت یافته یا نیمه ساخت یافته هستند ابتدا باید توسط روشهایی ، آنها را ساختارمند نمود و سپس از این روشها برای استخراج اطلاعات و دانش از آنها استفاده كرد. به هر حال استفاده از داده كاوی در مورد متن خود شاخه ای دیگر را در علوم هوش مصنوعی بوجود آورد به نام متن كاوی. از جمله فعالیتهای بسیار مهم در این زمینه، طبقه بندی (دسته بندی) متن می‌باشد.
طبقه بندی متن، یعنی انتساب اسناد متنی بر اساس محتوی به یك یا چند طبقه از قبل تعیین شده، یكی از مهمترین مسائل در متن كاوی است. فعالیت های مهم دیگری هم در زمینه متن کاوی وجود دارد که در ادامه نام برده و توضیح داده شده اند.
متن کاوی به دنبال استخراج اطلاعات مفید از داده های متنی غیر ساخت یافته از طریق تشخیص و نمایش الگوها است یا به عبارت دیگر متن كاوی روشی برای استخراج دانش از متون است. متن كاوی كشف اطلاعات جدید و از پیش ناشناخته، به وسیله استخراج خودكار اطلاعات از منابع مختلف نوشتاری است.
داده کاوی در متن در زمان های مختلف بر اساس  کاربرد و روش شناسی مورد استفاده، به صورت پردازش متن آماری، کشف دانش در متن، آنالیز هوشمند متن یا پردازش زبان طبیعی تعیین شده است. به عنوان مثال هایی از کارهایی که متن کاوی انجام می دهد می توان به دسته بندی یا classifying اسناد به مجموعه ای از تاپیک های مشخص (یادگیری با نظارت)، گروه بندی کردن اسناد به طوری که هر یک از اعضای هر گروه معنای مشابهی داشته باشد (کلاسترینگ یا یادگیری بدون ناظر) و یافتن اسنادی که برخی از معیارهای جستجو را satisfy کند (information Retrieval یا بازیابی اطلاعات) اشاره کرد.
متن كاوی به عنوان تجزیه و تحلیل هوشمند متن، داده كاوی متن یا كشف دانش در متن نیز شناخته میشود. متن كاوی بر روی داده های متنی غیر ساختیافته و نیمه ساختیافته تعریف می گردد داده های متنی غیر ساخت یافته مانند صفحات وب، یادداشت، صورتحساب و …. و داده های متنی نیمه ساخت یافته مانند XML, HTML… .
چندین تکنیک برای متن کاوی پیشنهاد شده است عبارتند از ساختار مفهومی،کاوش association ruleها درخت تصمیم گیری، روش های استنتاج قوانین، همچنین تکنیک های بازیابی اطلاعات برای کارهایی مانند تطبیق دادن  سندها، مرتب کردن کردن، کلاسترینگ و….    از جمله مشکلاتی که در زمینه متن کاوی وجود دارد کشف کردن دانش مفید از متن نیمه ساخت یافته یا غیرساخت یافته است که توجه زیادی را به خود جلب کرده است.
پس متن كاوی یكی از زمینه های است كه به دنبال استخراج اطلاعات مفید، از داده های متنی بدون ساختار، به وسیله شناسایی و اكتشاف الگوها می باشد. ایده اصلی متن كاوی، یافتن قطعات كوچك اطلاعات ازحجم زیاد داده های متنی، بدون نیاز به خواندن تمام آن است.  متن کاوی با انتقال کلمات و عبارات که بصورت داده های unstructured یا غیر ساخت یافته هستند به مقادیر عددی عمل می کند که پس از آن می تواند این داده های غیر ساخت یافته را به داده های ساخت یافته در یک پایگاه داده لینک داد و آن را با استفاده از روش های سنتی داده کاوی آنالیز کرد. به استفاده از روش های متن کاوی برای حل مسائل بیزینسی یا کسب و کار text analytics می گویند. متن کاوی به سازمان ها این امکان را می دهد که بینش تجاری ارزشمندی از محتواهای مبتنی بر متن خود مانند اسناد word ، ایمیل و پست هایی که در استریم رسانه های اجتماعی مانند فیسبوک و توئیتر و linkedIn وجود دارد به دست آورند.
کاوش داده های غیر ساخت یافته با پردازش زبان طبیعی (NLP)، مدلسازی آماری و روش های یادگیری ماشین ممکن است سخت و چالش برانگیز باشد چون متن های زبان طبیعی اغلب متناقض هستند. این متن ها اغلب شامل ابهاماتی هستند که از سینتکس ها و معنا شناسی های (سمنتک) متناقض مانند اصطلاحات عامیانه یا زبان های مربوط به یک گروه سنی خاص یاصحبت های کنایه دار و طعنه آمیز نشات می گیرد.
علاوه بر داده های آشنای کمی و کیفی برای آمارشناسان، داده هایی که به عنوان ورودی الگوریتم های استخراج اطلاعات استفاده می شوند می توانند هر شکلی داشته باشند مانند تصویر، فیلم، صدا یا متن. در متن کاوی ما بر منابع داده ای که به شکل متن هستند تمرکز می کنیم. همان طور که پیش تر گفته شد منابع داده متنی برای استخراج اطلاعات می توانند از free form text (متن هایی به شکل های آزاد) تا متن های semi formatted مانند html، xml و.. را شامل شوند و آن دسته از منابعی را هم در بر می گیرد که  به فرمت های اسناد کد باز یا open source رمزگذاری شده اند (OpenDocument) و همچین سایر فرمت های اختصاصی یک شرکت (برای مثال مایکروسافت word یا مایکروسافت پاورپوینت). استخراج اطلاعات از این منابع اطلاعاتی چالش بزرگی برای جامعه آماری و فناوری اطلاعات بوده است.
در متن کاوی الگوها از متن هایی به زبان طبیعی استخراج می شوند و ورودی آن، یک متن غیر ساخت یافته و آزاد است. ولی مثلا در وب ماینینگ منابع وب اغلب ساخت یافته هستند. در تعریف متن کاوی گفته می شود کشف اطلاعات جدید و اطلاعاتی که از قبل ناشناخته بوده اند، توسط کامپیوتر به کمک استخراج خودکار اطلاعات از منابع متنی غیر ساخت یافته اغلب بزرگ.
در بازیابی اطلاعات بر خلاف متن کاوی هیچ اطلاعات جدیدی پیدا نمی شود و اطلاعات مورد نظر و مطلوب به ندرت با اطلاعات مشابه دیگری به طور همزمان وجود دارند.متن کاوی ترکیبی از تکنولوژی های آماری، بازیابی اطلاعات، وب کاوی، داده کاوی و پردازش زبان طبیعی است.

متن کاوی و داده كاوی
داده کاوی روشی بسیار كارا برای كشف اطلاعات از داده های ساخت یافته است. متن كاوی مشابه داده كاوی است، اما ابزارهای داده كاوی طراحی شده اند تا داده های ساخت یافته از پایگاه داده را به كار ببرند. میتوان گفت، متن كاوی راه حل بهتری برای شركتها است. پس تفاوت متن كاوی و داده كاوی این است که داده كاوی بر روی داده های ساخت یافته پایگاه داده كار می كند و متن كاوی، بر روی داده های غیر ساخت یافته و نیم ساخت یافته مانند Email  و مستندات تمام متنی كار می كند. در متن كاوی  سعی می گردد از همان تكنیكهای داده كاوی استفاده گردد. برای این منظور به تكنولوژیهایی دیگری مانند پردازش زبان طبیعی، یادگیری ماشین و … نیاز است تا به صورت اتوماتیك آمارهایی را جمع آوری نموده و ساختار و معنای مناسبی از متن استخراج گردد. در این موارد، دیدگاه عمومی استخراج ویژگیهای كلیدی از متن است. ویژگیهای استخراج شده بعنوان داده برای تحلیل استفاده می گردد.

متن کاوی و بازیابی اطلاعات
معمولاً در بازیابی اطلاعات با توجه به نیاز مطرح شده از سوی كاربر، مرتبط ترین متون و مستندات و یا در واقع «كیسه كلمه» از میان دیگر مستندات یك مجموعه بیرون كشیده میشود. بازیابی اطلاعات یافتن دانش نیست بلكه تنها آن مستنداتی را كه مرتبط تر به نیاز اطلاعاتی جستجوگر تشخیص داده به او تحویل میدهد. این روش در واقع هیچ دانش و حتی هیچ اطلاعاتی را به ارمغان نمی آورد.
متن كاوی ربطی به جستجوی كلمات كلیدی در وب ندارد. این عمل در حوزه بازیابی اطلاعات گنجانده می شود. به عبارتی بازیابی اطلاعات جستجو، كاوش، طبقه بندی و فیلتر نمودن اطلاعاتی است كه در حال حاضر شناخته شده اند و در متن  قرار داده شده است. ولی در متن کاوی مجموعه ای از مستندات بررسی شده و اطلاعاتی كه در هیچیك از مستندات به صورت مجرد یا صریح وجود ندارد، استخراج می گردد.

پردازش زبان طبیعی یا NLP
هدف كلی آن رسیدن به یك درك بهتر از زبان طبیعی توسط كامپیوترهاست. تكنیك های مستحكم و ساده ای را برای پردازش سریع متن به كار می برد. همچنین از تكنیكهای آنالیز زبان شناسی نیز برای پردازش متن استفاده می کند. نقش NLP در متن كاوی فرآهم كردن یك سیستم در مرحله استخراج اطلاعات با داده های زبانی است.

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

فرآیند متن كاوی
دو فاز اصلی برای فرآیند متن كاوی تعریف شده است: پیش پردازش مستندات و استخراج دانش.
اولین فاز پیش پردازش مستندات است. خروجی این فاز میتواند دو شكل مختلف داشته باشد: ۱)مبتنی بر سند ۲) مبتنی بر مفهوم.
در فرمت اول، نحوه نمایش بهتر مستندات مهم است، برای مثال تبدیل اسناد به یك فرمت میانی و نیمه ساخت یافته، یا به كار بردن یك ایندكس بر روی آنها یا هر نوع نمایش دیگری كه كار كردن با اسناد را كاراتر میكند. هر موجودیت در این نمایش در نهایت باز هم یك سند خواهد بود. در فرمت دوم، نمایش اسناد بهبود بخشیده می شود، مفاهیم و معانی موجود در سند و نیز ارتباط میان آن ها و هر نوع اطلاعات مفهومی دیگری كه قابل استخراج است، از متن استخراج میشود. در این حالت نه با خود موجودیت بلكه با مفاهیمی كه از این مستندات استخراج شده اند، مواجه هستیم.
قدم بعدی استخراج دانش از این فرم های میانی است كه بر اساس نحوه نمایش هر سند متفاوت می باشد. نمایش مبتنی بر سند، برای گروه بندی، طبقه بندی و تجسم سازی استفاده میشود، در حالی كه نمایش مبتنی بر مفهوم برای یافتن روابط میان مفاهیم، ساختن اتوماتیك آنتولوژی و… به كار میرود. متن كاوی برای آن قسمت از كشف دانش از متن بكار می رود كه مربوط به استخراج الگوها از داده ها متنی است. مراحل كشف دانش از متن:
۱-جمع آوری مستندات مرتبط
۲- پردازش اولیه مستندات
۳-عملیات متن كاوی

پردازش متن
یکی از مراحل ابتدایی در متن کاوی پردازش متن است. در پردازش متن چند مورد مهم وجود دارد مثلا تمیز کردن متن، حذف تبلیغات از صفحات وب، نرمالیزه کردن متن های تبدیل شده از فرمت های باینری، کار با جدول ها شکل ها و فرمولها. مورد بعدی نشانه گذاری متن است یعنی تقسیم رشته ای از کاراکترها به مجموعه ای از نشانه ها که به این ترتیب بر مشکلاتی از قبیل آپاستروف ها مانند he’s ، کلمات چند شکلی مانند data base، database یا data-base ، کلماتی مانند c++، A/C، نشانه هایی مثل “…” یا «:-)» غلبه کرد یا برای سوالاتی مثل اینکه میزان فضای سفید مهم هست یا نه پاسخ پیدا نمود. موضوع بعدی Parts Of Speech tagging یا فرایند علامت گذاری کلمات یک متن با corresponding parts of speech آنهاست. که مبتنی بر قواعد گرامری است و بر اساس احتمالات ترتیبی کلمات مختلف بوده و نیاز به یک corpus ای (مجموعه ای از نوشته ها یا گزاره ها) دارد که برای یادگیری ماشین بصورت دستی تگ شود.
مسئله بعدی Word Sense Disambiguation یعنی تعیین این است که کلمه ای که چند معنی دارد، در این جمله مورد نظر کدام معنی را می دهد.
در ساختارهای معنایی دو روش داریم یکی full parsing است که یک parse tree برای جمله ایجاد می کند و دیگری partial parsing است که ساختارهای نحوی مانند عبارات اسمی و گروه های فعلی برای جمله ایجاد می کند. کدام بهتر است؟ ایجاد full parse tree اغلب به دلیل بی دقتی های گرامری، نشانه گذاری های بد، لغات جدید، جداسازی اشتباه جملات، اشتباه در تگ های POS شکست می خورد. بنابراین partial parsing بیشتر استفاده می شود.

متن noisy چیست؟
یک ارتباط ذخیره شده الکترونیکی است که نمی توان آن را با برنامه نرم افزاری متن کاوی به درستی طبقه بندی کرد. در یک سند الکترونیکی، یک متن نویزی با اختلاف میان حروف و سمبل ها در کد HTML و معنای مورد نظر نویسنده، مشخص می شود.
متن نویزی با قوانینی که برنامه برای تعیین و دسته بندی لغات، اصطلاحات، عبارات و کلازها در یک زبان خاص استفاده می کند مطابقت و هم خوانی ندارد. اصطلاحات، مخفف ها، کلمات اختصاری یا سرنام ها و زبان منحصر به کسب و کار همه می توانند متن نویزی ایجاد کنند. این متون در چت، پست های وبلاگ ها، اس ام اس ها و.. کاملا رایج اند. سایر دلایلی که متن نویزی ایجاد می کنند شامل املا و نقطه گذاری های ضعیف، اشتباهات تایپی و  ترجمه های ضعیف برنامه های تشخیص گفتار و نوری (OCR) است.
در ادامه روش هایی که متن کاوی از آنها برای استخراج اطلاعات از متن استفاده می کند توضیح داده می شوند:

روشهای متن كاوی
به طور کلی روش هایی که در متن کاوی استفاده می شوند عبارتند از:
استخراج اطلاعات، طبقه بندی، خوشه بندی، خلاصه سازی، ردیابی موضوع، ارتباط دهنده مفاهیم، نمایش اطلاعات، پرسش و پاسخ، كاوش مبتنی بر متن، تجزیه و تحلیل گرایشها
استخراج اطلاعات
* در استخراج اطلاعات، عبارات كلیدی و ارتباط آنها در متن تشخیص داده می شود.
* این عمل بوسیله پردازش تطبیق دهنده الگو انجام می پذیرد.
* عبارات و اصطلاحات استخراج شده باید بصورت استاندارد باشد:
مثلا: یادگیری و فراگیری، یك كلمه تشخیص داده شود.
feature extraction یا استخراج ویژگی
اولین مرحله متن کاوی استخراج ویژگی یا feature extraction  در مجموعه اسناد است به طوری که شخص بتواند محاسبات انجام داده و از روش های آماری استفاده کند.
در متن کاوی از دو کلمه corpus و lexicon استفاده می شود که corpus به معنی مجموعه ای از اسناد است و بسیاری از روشهای استخراج ویژگی وابسته به corpus هستند و lexicon (واژه نامه) مجموعه ای از همه کلمات منحصر به فرد در corpus است.
تولید و انتخاب ویژگی
اسناد متنی توسط لغات (ویژگی ها)یی که دارند و ارتباط میان آنها نمایش داده می شوند دو رویکرد عمده نمایش اسناد bag of words و Vector Space هستند.
متن کاوی معمولا وارد تحلیل عمیق زبان شناختی نمی شود بلکه بر نمایش ساده متن با تکنیک “bag-of-words” تکیه بر اساس vector space تکیه می کند. رویکردهای متفاوتی در تعیین الگوها در این روش وجود دارند مانند کاهش ابعاد و کلاسترینگ و دسته بندی خودکار.
Bag-of-Words چیست؟ اگر w دیکشنری باشد و مجموعه همه کلماتی که حداقل یکبار در مجموعه ای از اسناد رخ داده اند D  باشد، نمایش Bag-of-Words  از سند dn برداری از وزن هاست (w1n,. . . ,wj,Wjn). به عبارتی وزن ها یا ۰ هستند یا ۱ و نشان دهنده این هستند که یک کلمه در آن سند وجود دارد یا ندارد. یا می توان گفت که win نشان دهنده فرکانس تکرار i امین لغت در n امین سند است که بصورت نمایش تکرار کلمات نشان داده می شود.

کدام ویژگی یک سند را بهتر طبقه بندی می کند؟
تولید ویژگی های واقعی: از یک دسته بندی کننده یا classifier برای تولید خودکار لیبل ها (ویژگی ها) از ویژگی هایی که به آن داده شده استفاده می کند.
در شکل زیر روش bag of word نشان داده شده که تعداد تکرار لغات موجود در متن را در جدول زیر در کنار آن لغت آورده است.
در این روش که در ادامه هم کامل توضیح داده شده هر لغت به عنوان یک متغیر جداگانه که وزن عددی دارد نمایش داده شده. محبوب ترین روش وزن دهی هم روش tfidf است.
انتخاب ویژگی چیست؟ انتخاب زیرمجموعه ای از ویژگی ها برای نمایش سند. یعنی ایجاد روش نمایش بهتر متن. این کار باعث می شود تعداد ویژگی زیرا هرچه تعداد ویژگی بیشتر شود بار معنایی کمتر می شود. مثلا اکر تعداد ویژگی ها زیاد باشد ممکن است در آنها stop word یا کلمات توقف وجود داشته باشد، برخی از ویژگی ها گمراه کننده هستند و برخی اضافه بوده و منجر به دو بار شمردن می شوند برخی الگوریتم ها هم با ویژگی های کمتر بهتر کار می کنند زیرا هرچه ویژگی بیشتر باشد کلاسیفایر های پیچیده تری ایجاد می شود (مثل درخت های تصمیم پیچیده) بنابراین فضای کلاسیفایرهای به دست آمده خیلی بزرگ می شود.

دو روش برای انتخاب ویژگی
۱ . انتخاب ویژگی قبل از استفاده از آن در کلاسیفایر که نیازمند یک روش رنکینگ ویژگی است و انتخاب ها هم بسیار زیاد می شود .
۲٫ انتخاب ویژگی ها بر اساس اینکه در یک کلاسیفایر چقدر خوب عمل می کنند که اغلب یک روال تکرار شونده است و کلاسیفایر هم بخشی از روش انتخاب ویژگی می شود.
در آخر فرایند متن کاوی با داده کاوی مخلوط می شود و از روش های داده کاوی قدیمی برای دیتابیس های ساخت یافته حاصل از مراحل قبل استفاده می شود.
اولین بخش Feature Extraction پیش پردازش lexicon است. که معمولا شامل ۳ بخش است: حذف stop word ها، ریشه یابی و term weighting. همه این موارد را می توان برای lexicon به کار گرفت. Stop word ها کلمات متداولی هستند که محتوای مفهومی جمله را تغییر نمی دهند مثل و، یا . اینها را می توان از قبل تعیین کرد. ریشه یابی: اغلب در زمینه بازیابی اطلاعات به کار گرفته می شود زمانی که هدف بالابردن کارایی سیستم و کاهش تعداد لغات منحصر به فرد باشد. ریشه یابی یعنی فرایند حذف پیشوند ها و پسوندها و به دست آوردن ریشه کلمه. البته برخی ریشه یاب ها دچار مشکلاتی هستند مثلا برای کلمه probate ریشه را probe و برای کلمه relativity ریشه را relate معرفی می کنند که معانی مختلفی دارند البته این موضوع بر نتایج بازیابی اطلاعات تاثیری ندارد ولی عواقب ناخوشایندی در دسته بندی و خوشه بندی خواهد گذاشت. ریشه یابی و حذف stop word ها اندازه lexicon را کاهش می دهند بنابراین در منابع محاسباتی صرفه جویی می شود. الگوریتم ریشه یابی Porter برای ریشه یابی بسیار متداول است.
یکی از راه های انکدینگ متن شمردن تعداد دفعاتی است که یک عبارت در متن ظاهر شده  که به این کار روش term-frequency می گویند. البته عباراتی که فرکانس بالاتری دارند لزوما مهم تر نیستند برای همین با توجه به متن ، سند یا corpus ای که داریم به آن ترم وزن می دهیم.
به نظر می رسد یکی از محبوب ترین term weighting ها inverse document frequency باشد که در آن فرکانس ترم با توجه به تعداد کل دفعاتی که آن عبارت در corpus ظاهر شده وزن می شود.

Interpoint Distance Calculation
برای بررسی متن کاوی در دسته بندی و خوشه بندی و بازیابی اطلاعات ما به درک فاصله یا شباهت میان اسناد نیاز داریم. انتخاب این معیار در آنالیز متن مهم است. متداول ترین معیار مورد استفاده در متن کاوی  و بازیابی اطلاعات کسینوس زاویه میان بردارهای نمایش داده شده در سند است.

کاهش بعد (reduce dimensionality)
فضایی که سند در آن قرار گرفته معمولا هزاران بعد دارد. با توجه به تعداد اسناد به همراه ماتریکس فاصله داخلی متناظر با آن اشخاص اغلب تمایل دارند فضایی با ابعاد پایین تری برای تحلیل های بعدی پیدا کنند. این کار visualization، کلاسترینگ و دسته بندی را راحت تر می سازد. با به کار بردن کاهش بعد می توان نویز داده ها را از بین برد و روش های داده کاوی آماری را بهتر به کار گرفت تا ارتباط میان اسناد را پیدا کرد.
این روش کاهش بعد در متن کاوی و پردازش زبان طبیعی با عنوان latent semantic indexing (analysis) یاد می شود. روش های دیگری هم برای کاهش بعد وجود دارند که از ماتریس های استخراج شده از ماتریس term-document به دست می آیند. مثلا استفاده از بردارهای ویژه کواریانس یا ماتریس هم بستگی برای کاهش بعد.
یکی دیگر از روش های جدید multidimensional scaling کاهش بعد غیر خطی ایزومتریک مپینگ می باشد. ایده این روش هم این است که برخی مواقع نمایش دهنده بهتر فاصله میان دو شی فاصله اقلیدسی نیست  بلکه حداقل فاصله میان برخی سطوح است که دیتاست را بر اساس پارامترها توصیف می کنند.

Visualization
Visualization  نقش مهمی در تمام تاپیک های بررسی شده بازی می کتد . می توان از  Visualization برای ارزیابی تکنیک های استخراج ویژگی استفاده کرد. یا برای کمک به تشخیص ساختار داده بعد از به کار بردن روش های کاهش بعد. یا برای تشخیص بصری ساختار های کلاستری یا برای کمک به تعیین داده های پرت. یا برای پیشنهاد ارتباطات جالب میان اسناد و ترم ها. این رویکرد هنگام مقایسه corpus های مختلف می تواند مفید باشد.

خوشه بندی یا کلاسترینگ
در این قسمت به یکی دیگر از تکنیک های مورد استفاده در متن کاوی که بسیار مهم است می پردازیم یعنی کلاسترینگ یا خوشه بندی. در مورد خوشه بندی در مقاله دیگری به طور کامل توضیح داده شده در اینجا تنها اشاره مختصری به کلاسترینگ در متن کاوی خواهیم داشت.
خوشه بندی تكنیكی است برای گروه بندی اسناد،كه امروزه نقش حیاتی در روشهای بازیابی اطلاعات دارد. هدف آن قرار دادن اسناد مشابه در یك خوشه است به طوری كه با اسنادی كه در خوشه های دیگر قرار دارند، متفاوت باشند. برخلاف طبقه بندی در خوشه بندی گروهها از قبل مشخص نیست و همچنین معلوم نیست كه برحسب كدام ویژگی گروه بندی صورت می گیرد. الگوریتم های خوشه بندی خوشه ها را براساس ویژگی داده ها و اندازه گیری شباهت ها و یا عدم شباهتها محاسبه میكنند. دو روش برای ارزیابی نتایج خوشه بندی وجود دارد ۱) اقدامات آماری، ۲) دسته بندی های استاندارد.
دسته های مختلف الگوریتم های خوشه بندی
روشهای سلسله مراتبی: مثل single linkage، complete linkage و ..
انواع الگوریتم های افرازبندی مانند k-means و bi-seaction-k-means
می باشند که در مقاله دیگری به طور کامل در مورد این روش ها صحبت شده است.
* خوشه: مجموعه ای از مستندات مرتبط به هم است.
* خوشه بندی، تكنیكی است كه برای دسته بندی نمودن مستندات مشابه مورد استفاده قرار می گیرد.
در خوشه بندی دسته ها به صورت دینامیك تشكیل می گردد.
با استفاده از روش هایی که متن را به داده های کمی تبدیل می کنند می توانیم وارد مرحله خوشه بندی شده و از هر یک از روش های کلاسترینگی که به آن آشنا هستیم برای داده های کمی استفاده کنیم. برای مثال می توانیم از کلاسترینگ kmeans یا کلاسترینگ های سلسله مراتبی یا مبتنی بر مدل  (بر اساس تخمین تراکم محدود احتمال ترکیبی (finite mixture probability) ) استفاده کنیم. مثلا در kmeans مجموعه ای از اسناد نشان دهنده بردار، معیار فاصله مناسب (کسینوس) و k تعداد کلاسترهاست. برای هر k گروه با یک سند تصادفی شروع کنید. هر سند به نزدیک ترین گروه منتسب می شود، برای هر گروه یک مرکز جدید محاسبه می شود (داکیومنت میانگین در گروه یا نقطه تراکم گروه).
در کلاسترینگ سند، حجم بالایی از اسناد داده می شود و هیچ تصوری از اینکه چه اسنادی هستند نداریم بنابراین از کلاسترنیگ اسناد استفاده می کنیم (بی ناظر: در روش های بی ناظر بدون هیچ گونه نظارتی از جانب شخص ثالث الگوریتم بر مبنای شباهت اسناد یا داده ها خوشه بندی را انجام می دهد).

دسته بندی یا طبقه بندی یا classifying
طبقه بندی
* عبارتست از تشخیص موضوع اصلی یك سند.
* هدف از طبقه بندی، ایجاد امكان استفاده از مدلی بر ای پیش بینی كلاسی از اشیا است كه با عنوان ناشناخته برچسب خورده است
* طبقه بندی یك فرایند ۲ مرحله ای است:
الف- ساخت مدل
ب- استفاده از مدل
طبقه بندی در مواردی مانند: تعیین اعتبار، مشخص نمودن گروه هایی از مشتری ها كه خصوصیات و علایق مشتركی دارند، تشخیص میزان تاثیر داروها و موثر بودن درمان بكار می رود. در ادامه طبقه بندی و برخی روش ها و الگوریتم های آن به طور کامل توضیح داده شده اند.
زمانی که corpus به ماتریس inner point distance تبدیل شد می توان از کلاسیفایر های ساده نزدیک ترین همسایه برای داده ها استفاده کرد. از آنجایی که ابعاد بالای موروثی ویژگی های اسناد، مانع از یک رویکرد ساده برای استفاده از درخت های دسته بندی مبتنی بر ویژگی می شوند می توان یا از رویکرد های دسته بندی دیگر استفاده کرد یا این درخت ها را در ترکیب با استراتژی های کاهش بعد به کار برد. در توسعه دسته بندی برای اسناد متنی چالش هایی وجود دارد مثلا یکی از این چالش ها برخورد با مترادف ها و کلمات چند معنی است. چالش دیگر ایجاد دسته بندی هایی است که بتواند مجوعه های بزرگ اسناد را دسته بندی کند. یا چالش دیگر دسته بندی منابع اسناد در حال استریم است. مانند اخبار که بصورت مداوم پخش می شوند. بد نیست اشاره کنیم که تکنیک های طبقه بندی بر خلاف خوشه بندی، تکنیک های با ناظر یا supervised هستند.
هدف از طبقه بندی متون نسبت دادن كلاسهای از پیش تعریف شده به اسناد متنی است. در طبقه بندی یك مجموعه آموزشی از اسناد، با كلاس های معین وجود دارد. با استفاده از این مجموعه، مدل طبقه بندی معین شده و كلاس سند جدید مشخص میگردد. برای اندازه گیری كارایی مدل طبقه بندی، یك مجموعه تست، مستقل از مجموعه آموزشی در نظر گرفته میشود. برچسبهای تخمین زده شده با برچسب واقعی اسناد مقایسه میشود. نسبت اسنادی كه به درستی طبقه بندی شده اند به تعداد كل اسناد، دقت نامیده میشود. در ادامه برخی از تکنیک های کلاسیفایینگ یا طبقه بندی به اختصار معرفی می شوند:

درختهای تصمیم
برای ساختن این درختها از یك استراتژی تصمیم و غلبه استفاده میشود.
درخت تصمیم متوالی بر پایه طبقه بندی
در این مدل هر یك از گره های داخلی به عنوان تصمیم گیرنده و هر یك از برگها به عنوان یك برچسب كلاس می باشند. این مدل از دو مرحله تشكیل شده است: ۱ القای درخت- كه از مجموعه آموزشی داده شده القا می شود.۲- هرس درخت- درخت القا شده را با از بین بردن هر وابستگی آماری روی مجموعه داده آموزشی خاص، كوتاه تر و قوی تر میكند.

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

الگوریتم C4.5
مراحل كلی الگوریتم C4.5  برای ساخت درخت تصمیم :
۱) انتخاب ویژگی برای گره ریشه
۲) ایجاد شاخه برای هر مقدار از آن ویژگی
۳) تقسیم موارد با توجه به شاخه ها
۴)تكرار روند برای هر شاخه تا زمانی كه تمام موارد شاخه، كلاس یكسان داشته باشند.
انتخاب هر ویژگی به عنوان ریشه بر پایه بالاترین حصول از هر صفت است.
الگوریتم SPRINT
SPRINT یك درخت تصمیم طبقه بندی كننده سریع و مقیاس پذیر است. این الگوریتم مجموعه داده آموزشی را به صورت بازگشتی با استفاده از تكنیك حریصانه اول به پهنا تقسیم میكند تا وقتی كه هر قسمت متعلق به گره برگ یا كلاس یكسان باشد. این روش، از مرتب سازی داده ها استفاده میكند و محدودیتی برای حجم داده ورودی نداشته و میتواند بر روی الگوهای سریال یا موازی برای جایگزینی داده های خوب و با توازن بار اجرا شود. دو ساختار داده ای را به كار می گیرد:  لیست داده ها و پیشینه نما، كه مقیم در حافظه نیستند و این مسئله SPRINT  را برای مجموعه داده های بزرگ مناسب می سازد. بنابراین همه محدودیتهای حافظه بر داده ها را حذف می كند. این الگوریتم صفت های پیوسته و طبقه ای را به كار میبرد.

فرمول بندی موازی از درخت تصمیم بر پایه طبقه بندی
هدف این روش مقیاس پذیری در زمان اجرا و حافظه مورد نیاز است. فرمول بندی موازی برمحدودیت حافظه كه برای الگوریتم های ترتیبی مشكل ساز است غلبه می كند، بدین صورت رسیدگی به مجموعه داده های بزرگ تر بدون نیاز به دیسك I/O افزونه را ممكن میسازد. همچنین فرمول بندی موازی سرعت بالاتری نسبت به الگوریتم سریال ارائه میكند. انواع فرمول بندی های موازی برای ساخت درخت تصمیم طبقه بندی:
رویكرد ساخت درخت همزمان
رویكرد ساخت درخت قسمت بندی شده
فرموله بندی موازی تركیبی
طبقه بندی كننده ساده بیزی
یك روش طبقه بندی احتمالی است. كلاس یك سند متناسب با كلماتی است كه در یك سند ظاهر شده اند.

نزدیكترین همسایه K طبقه بندی كننده
راه دیگر این است كه اسنادی از مجموعه آموزش انتخاب شوند كه مشابه سند جاری هستند. كلاس سند جاری، كلاسی است كه اكثریت اسناد مشابه، دارند. در این روش K تا سند از مجموعه آموزش كه بیشترین شباهت (بر اساس معیار شباهت تعریف شده) را به سند جاری دارند به عنوان همسایگان آن سند انتخاب می شوند. این طبقه بندی به سه مورد اطلاعاتی نیاز دارد: ۱ مقدار K 2) مجموعه ای از داده های برچسب دار، كه به عنوان داده های آموزشی مورد استفاده قرار گیرند و ۳) یك معیار شباهت.
یك روش ساده برای معیار شباهت شماردن تعداد كلمات مشترك در دو سند است. این روش باید برای اسناد با طول مختلف نرمال سازی شود. یك روش استاندارد برای اندازه گیری شباهت، شباهت كسینوسی است.
شبكه های عصبی
در مسائل مربوط به طبقه بندی، شبكه عصبی با داشتن ورودی ها و خروجیهای مشخص باید تشخیص دهد كه هر ورودی با كدام طبقه از خروجی های تعریف شده بیشترین تطابق را دارد . در شبكه پرسپترون چند لایه از روش آموزش با نظارت استفاده می شود. هدف از آموزش شبكه به حداقل رساندن خطای تولید شده میباشد كه براساس تنظیم وزنهای شبكه انجام میشود. معمولا از الگوریتم آموزش پس انتشار استفاده میشود. در این الگوریتم پس از محاسبه مقدار خطا در لایه خروجی مقادیر وزنها در لایه پنهان در جهت كاهش خطا تنظیم میشوند.
استفاده از شبکه های عصبی مزایا و معایبی  دارند که مزایای آن به اختصار عبارتند از
روش های خود تطبیقی برای مبنای داده هستند. میتوانند هر تابعی را با دقت دلخواه تخمین بزند.  مدلهای غیر خطی هستند.  با دادههای ناقص یا گم شده به خوبی كار میكنند.
و معایب شبكه های  عصبی عبارتند از: برآورد یا پیش بینی خطا انجام نمیشود.  چگونگی برآورد شدن روابط میان لایه های پنهان را نمی توان  معین كرد.

(SVM) ماشین بردار پشتیبانی
الگوریتم طبقه بندی یا دسته بندی مشاین بردار پشتیبان که از روش های یادگیری با نظارت استفاده می کند که در مقاله دیگری به طور کامل در مورد این روش توضیح داده شده است.

ژنتیك
یك روش بهینه سازی اكتشافی است كه از قوانین تكامل بیولوژیك طبیعی تقلید میكند. الگوریتم ژنتیك قوانین را بر روی جواب های مسأله (كروموزومها)، برای رسیدن به جوابهای بهتر، اعمال میكند. در هر نسل به كمك فرآیند انتخابی متناسب با ارزش جوا بها و تولید مثل جواب های انتخاب شده و به كمك عملگرهایی كه از ژنتیك طبیعی تقلید شده اند، تقریب های بهتری از جواب نهایی بدست میآید. این فرایند باعث میشود كه نسلهای جدید با شرایط مساله سازگارتر باشند. به منظور حل هر مسئله، ابتدا باید یك تابع برازندگی برای آن ابداع شود. این تابع برای هر كروموزوم، عددی را بر می گرداند كه نشان دهنده شایستگی آن كروموزوم است. در طی مرحله تولید نسل ازعملگرهای ژنتیكی استفاده می شود كه با تأثیر آنها بر روی یك جمعیت، نسل بعدی تولید میشود. عملگرهای انتخاب، آمیزش و جهش معمولاً بیشترین كاربرد را در الگوریتم های ژنتیكی دارند . تعدادی شروط خاتمه برای الگوریتم ژنتیك وجود دارد از جمله: تعداد مشخصی نسل، عدم بهبود در بهترین شایستگی جمعیت در طی چند نسل متوالی و عدم تغییر بهترین شایستگی جمعیت تا یك زمان خاص.
در اكثر مواقع طبقه بندی كننده های SVM و K نزدیک ترین همسایه كارآیی بالایی را ارائه میكنند و پس از آن ها شبكه عصبی، درخت های تصمیم و روش ساده بیزی قرار گرفته اند.

خلاصه سازی
*     عملیاتی است كه مقدار متن را در یك مستند، با حفظ معنای اصلی آن، كاهش می دهد.
استراتژیهای مهم:
۱- روشهای آماری
۲- روشهای مكاشفه ای
در خلاصه سازی، كاربر تعیین می نماید كه متن خلاصه شده، چند درصد از متن اصلی باشد.
منظور از خلاصه سازی، روند ساختن مجموعه ای مفاهیم پایه ای از متن است تنها در چند خط. این نوع از متن کاوی به نظر می رسد که اطلاعات جدیدی از متن به دست ندهد به این دلیل که خود نویسنده احتمالاً می دانسته است که چه چیزی می خواسته است بگوید و خلاصه ی نوشته های او، اطلاع جدیدی را اضافه نمی کند. گرچه این کار می تواند بررسی محتویات مستندات را برای کاربران ساده تر کند و آنهارا در مسیر رسیدن به آنچه نیاز دارند، سرعت دهد.

ردیابی موضوع
سیستم ردیابی موضوع بوسیله نگهداری پروفایل كاربران و و بر اساس مستنداتی كه كاربر تاكنون دیده است، پیش بینی سایر مستنداتی كه ممكن است برای كاربر جالب باشد را انجام می دهد.
مثال كاربردی: اعلام داروی جدید یا  اعلام رقیب جدید

ارتباط دهنده مفاهیم
مستندات موجود را از طریق تشخیص مفاهیم مشتركی كه دارند به هم ارتباط داده و به این وسیله كاربران قادر خواهند بود تا اطلاعاتی را پیدا نمایند كه از طریق روشهای جستجوی سنتی قادر به یافتن آنها نیستند.
از جمله واقعیتهایی که می توان از یک مجموعه متون دریافت، ارتباط و وابستگی برخی مفاهیم با مفاهیم دیگراست. این واقعیات به طور مثال می تواند بگوید که پدیدار شدن بعضی کلمات ممکن است که وابسته باشد به  ظاهر شدن بعضی دیگر از کلمات. منظور این است که هرگاه شما مجموعه ی اول کلمات را ببینید، ما می توانیم انتظار داشته باشیم که مجموعه ی دوم لغات را نیز ببینیم. این مفهوم نیز از داده کاوی در دیتابیس به امانت گرفته شده است .
نمایش اطلاعات
* منابع متنی زیاد را  در سلسله مراتب بصری یا نقشه قرار داده و امكان جستجو بر روی آنها را فراهم می آورد.
* Informatik V’S docminer ابزاری است كه قادر به نمایش حجم زیادی از اطلاعات در نقشه بوده و بدین طریق تحلیل تصویری آنرا ارایه می دهد.

پرسش و پاسخ
در پاسخ به پرسشهای زبان طبیعی، طریقه پیدا كردن بهترین پاسخ به پرسشهای مطرح شده مورد توجه است
دانشگاه MIT اولین سیستم پاسخگویی به سئوالات زبان طبیعی را با نام START را پیاده سازی نموده است.
در پرسش و پاسخ می تواند از تكنیكهای مختلف متن كاوی استفاده کرد.

كاوش مبتنی بر متن
كاربر را قادر می سازد تا در مجموعه ای از مستندات بر اساس موضوعات مرتبط و  عبارات مشخص حركت كرده و مفاهیم كلیدی را تشخیص دهد.

تجزیه  و تحلیل گرایشها
* برای مشخص نمودن گرایشهای مستنداتی كه در طول زمان مشخص جمع آوری شده اند بكاربرده می شود.
* مثلا برای تشخیص آنكه یك شركت علایق خود را از یك موضوع به موضوع دیگری تغییر داده بكار می رود.

یافتن وتحلیل ترندها
برای شرح این کاربرد فرض کنید که مدیر یک کمپانی تجاری هستید. مشخصاً شما بایستی همواره بر فعالیتهای رقیبانتان نظارت داشته باشید. این می تواند هر نوع اطلاعاتی باشد که شما از اخبار، معاملات بورس و یا از مستندات تولید شده  توسط همان کمپانی رقیب گرفته اید. حال حاضر که اطلاعات به طور فزآینده ای در حال افزایش است، مدیریت تمامی این منابع داده ای قطعاً تنها به کمک چشمان ممکن نیست. متن کاوی این امکان را می دهد که به طور اتوماتیک ترندها و تغییرات جدید را بیابید.  در واقع آنچه اصولاً باید از متن کاوی انتظار برود اینست که به شما بگوید چه اخباری در میان گستره ای از اخبار به آنچه می خواهید مرتبط است و در این میان کدام خبر جدیداست، چه پیشرفتهایی در زمینه ی کاری شما صورت می گیرد و علایق و ترندهای فعلی چگونه است و با چه روندی تغییر می کند. با استفاده از این اطلاعات، مدیر تنها از اطلاعات کشف شده برای بررسی وضعیت رقیب می تواند سود جوید.
به عنوان خلاصه ای از عملیات متن کاوی می توان گفت:
اقتباس واژه، اساسی ترین شکل متن کاوی است. مانند تمام تکنیک های دیگر متن کاوی اطلاعات را از داده ساخت نیافته به یک فرمت ساخته یافته نگاشت می دهد. ساده ترین ساختمان داده در متن کاوی، بردار ویژگی یا لیست وزن دار کلمات است. مهم ترین کلمات در یک متن به همراه اندازه اهمیت نسبی آن ها فهرست می شود. متن به فهرستی از واژگان و وزن ها کاهش می یابد. کل معنا شناختی یک متن ممکن است وجود نداشته باشد، ولی مفاهیم کلیدی شناسایی می شوند. برای انجام این کار، متن کاوی شامل این مراحل است:
۱ -حذف کلماتی که معمولاً استفاده می شوند (مثل the،and و(other  یا همان کلمات توقف
۲ -جایگزینی کلمات با واژه ها یا ریشه هایشان (مثلاً، حذف شکل جمع کلمات و حروف ربط مختلف و صرف ها). در این مرحله، واژه هایphoning phones،phoned،به phone نگاشت می شوند.
۳ -مترادف ها و عبارات را در نظر بگیرید. کلماتی که مترادف هستند باید به طریقی ترکیب شوند. مثلاً، student و pupil  باید با یکدیگر گروه بندی شوند. ولی باید دقت کرد که مثلا Microsoft Windows به سیستم عامل کامپیوتر اشاره دارد، ولی   Windowsممکن است به یک پروژه خانه سازی مرتبط تر باشد.
۴ -وزن های ریشه های باقیمانده را محاسبه کنید. رایج ترین روش، محاسبه فرکانسی است که کلمه با آن پدیدار می شود. دو معیار رایج وجود دارد: واژه فرکانس یا tf factor ، تعداد واقعی دفعاتی را که یک کلمه در یک سند ظاهر شده است، اندازه گیری می کند و فرکانس سند وارون یا idf factor تعداد دفعاتی را نشان می دهد که کلمه در تمام اسناد در یک مجموعه آمده است. استدلال این است که یک tf factor بزرگ، وزن را افزایش می دهد، در حالی که یکidf factor  بزرگ، آن را کاهش می دهد، زیرا واژه هایی که مکرراً در تمام اسناد روی می دهند، کلمات رایجی در صنعت هستند و مهم در نظر گرفته نمی شونداجزای متعددی در یک سیستم متن کاوی وجود دارند، از جمله این موارد:
*سیستمی برای مدیریت اسناد به شکل های گوناگون . مثلاً، متن ساده، فرمت های واژه پرداز وPDF  از منابع مختلف (مثلاً، فایل ها، فرم های وب، ایمیل ها). اجزای مورد استفاده برای پردازش این اسناد و ایجاد فایل های داده ای که می توانند متن کاوی شوند. این ها عبارتند از: تقسیم کننده های جملات، بخش هایی از کلام، taggerها، …، پارسرهای کامل، …، خلاصه کننده ها و الی آخر.
*ابزارهای داده کاوی از قبیل الگوریتم های خوشه بندی، الگوریتم های طبقه بندی و الی آخر. علاوه بر این ابزارها، تعدادی از فروشندگان داده کاوی، قابلیت های متن کاوی را در بسته های نرم افزاری خود ارایه می دهند. به دلیل این که ناحیه هنوز در دست تحقیق و توسعه است، قابلیت های نرم افزار به سرعت تغییر می کند. در انتهای مقاله برخی از ابزارها نام برده شده اند.

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

متن کاوی = استخراج اطلاعات:
در این تعریف متن کاوی متناظر با استخراج اطلاعات در نظر گرفته می شود (استخراج واقعیت ها از متن)

متن کاوی = کشف داده متنی:
متن کاوی را می توان به عنوان متدها و الگوریتم هایی از فیلدهای یادگیری ماشین و آماری برای متن ها با هدف پیدا کردن الگوهای مفید در نظر گرفت. برای این هدف پیش پردازش کردن متون ضروری است. در بسیاری از روش ها، متدهای استخراج اطلاعات، پردازش کردن زبان طبیعی یا برخی پیش پردازش های ساده برای استخراج داده از متون استفاده می شود. سپس می توان الگوریتم های داده کاوی را بر روی داده های استخراج شده اعمال کرد.
ایده اولیه استخراج دانش از متن یا کشف دانش برای اولین بار توسط آقای فلدمن در سال ۱۹۹۵ مطرح گردید. وی پیشنهاد داد تا از مفهوم طبقه بندی مستندات جهت تفسیر مقالات با توجه به معنا و مفهومشان و سازماندهی آنها در ساختارهای سلسله مراتبی مطرح نمود. برای اولین بار، بحث خلاصه سازی داده ها و كشف الگوهای مفید را مطرح نمود.

کاربردهای عملی متن کاوی :
۱٫ Spam filtering:
یکی از مهمترین جنبه های کشف اسپم از طریق استخراج اطلاعات متنی موجود در ایمیل و استفاده از آنها برای جداسازی است. برای فیلتر کردن اسپم ها با استفاده از متن کاوی می توانید از کلاسیفایر بیز برای ساخت فیلتر اسپم بر روی کلمات داخل پیام استفاده کنید. البته از کلاسیفایرهای دیگر هم می توان استفاده کرد ولی به جز کلاسیفایر های ترکیبی، این کلاسیفایر بهتر است. این کلاسیفایر احتمالی نسبت می دهد که یک سمپل جدید در یک کلاس هست یا خیر. از کلماتی که داخل پیام هستند و کلماتی که نیستند می توان احتمال اسپم یا ham (غیر اسپم)بودن را محاسبه کرد.
۲٫ توصیه و پیشنهاد دادن: مانند آمازون
هدف یک recommendation system مبتنی بر متن کاوی برای کمک به تصمیم گیری برای مشتریان در سفارش آنلاین محصولات این است که به مشتریان این اجازه را بدهد که علایق خود را با فرمت متنی بیان کنند و بدین ترتیب علایق آنها را جمع آوری کرده و برای پیشنهادات و توصیه های دقیق استفاده می کرد.  این سیستم از تکنیک متن کاوی برای یادگیری ویژگی های محصول و به تبع آن پیشنهاد محصولاتی که مطابق با علایق مشتریان باشد استفاده می کند. مقاله ای درباره سیستم های توصیه گر یا پیشنهاد دهنده بصورت مجزا در ماهنامه رایانه قرار داده شده است.
۳٫ متن کاوی و موتورهای جستجو
تکنیک اصلی مورد استفاده موتورهای جستجو بازیابی اطلاعات است. مرحله اول متن کاوی در موتورهای جستجو طبقه بندی متن است: در این حالت از مقوله های چند بعدی برای تشریح (گروهی از) اسناد استفاده می شود. توصیفات غنی تر هستند و برای توسعه آن مقوله پر هزینه اند. مرحله بعدی جستجوی معنایی وب است که متن را آنالیز زبان شناختی کرده و از تکنیک های کاملا آماری هم استفاده می کند. و مرحله بعدی کلاسترینگ مفهومی است که نتایج جستجو را بر اساس موضوع گروه بندی می کند و اسناد را بر اساس کلماتی که در اسناد پیدا کرده کلاستر می کند.
۴٫    مانیتور کردن نظرات افراد (برای مثال در بلاگ ها یا نظرات موجود در سایت ها)
۵٫ آنالیز بازخورد یا فیدبک تجربه مشتریان
۶٫ خدمات مشتریان ، پشتیبانی ایمیل
۷٫ برچسب گذاری خودکار اسناد در کتابخانه های شرکت ها
۸٫    بررسی و ارزیابی ارجحیت های مشتریان با آنالیز مصاحبه های کیفی
۹٫ تشخیص تقلب با بررسی نوتیفیکیشن مطالبه ها
۱۰٫ مبارزه با زورگیری سایبری یا جرایم نرم در چت IRC و  IM
۱۱٫ پیشنهاد محصول در check-out(جستجوها)
۱۲٫ مدیریت روابط مشتریان
۱۳٫ تحلیل رسانه های اجتماعی
مرتب كردن بلادرنگ نامه های الكترونیكی یا فایلها در سلسله مراتبی از پوشه ها، تشخیص موضوع متن،جستجوی ساخت یافته یا پیدا كردن اسنادی كه در راستای علایق كاربر میباشد، از جمله كاربردهای مبحث طبقه بندی (دسته بندی-كلاسه بندی ) متن هستند.

دیگر مزایای text mining
اگر متنی دارید و دباره الگوها و روابط و … که در متن وجود دارد کنجکاو هستید می توانید از متن کاوی استفاده کنید. متن کاوی هنگام ۱٫خلاصه سازی اسناد،۲٫ استخراج مفهوم از متن، ۳٫ایندکس گذاری متن برای استفاده در آنالیزهای پیش بینانه بسیار مفید است.
کاربرد متن کاوی در صنایع هواپیمایی:
ثابت شده متن کاوی ابزار ارزشمندی در اقتباس دانش سازمانی از گزارشات به شکل دیجیتال است. تحلیلگران از نرم افزار متن کاوی برای تمرکز بر نواحی کلیدی از طریق شناسایی الگو استفاده می کنند. مثلاً، شرکت ها در صنعت هواپیمایی می توانند متن کاوی را بر گزارشات تصادفی برای افزایش کیفیت دانش سازمانی به کار برند. آن ها می توانند مشکلات مکانیکی، سازمانی و رفتاری را به روشی منظم از طریق کاربرد متن کاوی مطالعه کنند. خطوط هوایی با تحلیل کامل و نظامند از عملیات کار می کنند. یک گزارش سانحه هنگامی تهیه می شود که رویدادی روی می دهد که ممکن است منجر به مشکلی گردد. مسائل کلیدی ممکن است از تعداد زیادی از گزارشات سانحه با استفاده از متن کاوی شناسایی شوند. پایگاه های داده عظیمی که خطوط هوایی نگهداری می کنند دارای تفسیر انسانی محدودی هستند و اصطلاح شناسی که برای یک کامپیوتر داریم، متفاوت از انسان است. مثلاً، داده هایی از Aer Lingus (aerlingus.com در طی دوره زمانی ژانویه ۱۹۹۸ تا دسامبر ۲۰۰۳ که برای یافتن الگوهای و وابستگی ها استفاده شد، منجر به تحلیل بیشتر و توسعه مدل گردید.
متن کاوی گزارشات سوانح هوایی می تواند سوانحی را شناسایی کند که ممکن است منجر به دردسر شده باشند. متن کاوی می تواند با مجموعه بزرگی از گزارشات داده سانحه برای تأیید اعتبار تئوری های از پیش تعیین شده و برای برگزیدن الگوهای جدید دانش استفاده شود.
متن کاوی برای اقتباس موجودیت ها و اشیا برای تحلیل فرکانس، تعیین فایل هایی که صفات خاصی برای تحلیل آماری بیشتری دارند و ایجاد ویژگی های داده کاملاً جدید برای مدلسازی پیش بینی استفاده می شود. این سه روش، ابتدا در ارتباط با نمونه هایی از جمله لاستیک های firestone در ford suvs استفاده شد.
یکی دیگر از کاربردهای متن کاوی دیدگاه کاوی است که نظرات داده شده کاربران به یک موضوع خاص در یک تاپیک، وبلاگ یا غیره را بررسی می کند.
کاربرد بعدی نظارت است یعنی نظارت کردن رفتار شخص یا گروهی از انسان ها به صورت پنهان. پروژه ای به نام ENCODA تلفن، اینترنت و دیگر وسایل ارتباطی را برای شناسایی تروریسم نظارت می کند.
شناسایی نامهای مستعار:  نام های مستعار در مراقبت های پزشکی برای شناسایی تقلب ها آنالیز می شوند. برای مثال یک صورت حساب ممکن است با نام John Smith، J. Smith  و Smith, John ارائه شود. از این طریق یا به وسیله روش های دیگری مطالبه کنندگان ممکن است سوءاستفاده کنند و مطالبات حق بیمه زیادی تحت نام های مستعار مختلف ارائه دهند.

ابزارها
در این قسمت برخی از ابزارهای متن کاوی که اکثر آنها رایگان هستند معرفی می شوند.
پلاگین استخراج اطلاعات در rapidMiner
rapidMiner یک فریم ورک کد باز معروف است یا به عبارتی یک workbench تحلیلات کسب و کار کامل با تمرکز شدید بر داده کاوی، متن کاوی و predictive analytics می باشد. این ابزار از مجموعه گسترده ای از تکنیک های توصیفی و پیش بینانه برای ارائه آگاهی کافی به کاربر برای انجام تصمیم گیری مناسب تر استفاده می کند. این پلتفرم نرم افزاری توسط شرکتی با همین نام به عنوان محیطی یکپارچه برای یادگیری ماشین، متن کاوی، داده کاوی، predictive analytics و  business analytics توسعه داده شده است.
RapidMiner Studio روی هم رفته بیش از ۱۵۰۰ عملیات برای همه کارهای مربوط به تحلیل داده حرفه ای انجام میدهد از تقسیم داده تا تحلیل مبتنی بر بازار این ابزار در بردارنده همه ابزارهایی است که برای اینکه بتوان از داده به نحو مفید استفاده کرد می باشد . به علاوه ابزارهایی برای متن کاوی، وب کاوی، automatic sentiment
Analysis در فروم های بحث در اینترنت (sentiment analysis و opinion mining) و همین طور تحلیل سری های زمانی و پیش بینی هم در این ابزار وجود دارد.
Information Extraction Plugin استفاده از تکنیک های استخراج اطلاعات در RapidMiner را میسر می کند. می توان از آن به عنوان اینترفیسی میان زبان طبیعی و IE یا روش های داده کاوی با استرخاج اطلاعات ارزشمند از اسناد یاد کرد.
Extension متن کاوی در rapidminer از یک کلاس خاص برای کار با اسناد استفاده می کند: Document-class. این کلاس کل اسناد در ترکیب با متا اطلاعات دیگر را دربردارد. در مورد متن کاوی اسناد به نشانه های منحصر به فرد تقسیم می شوند که برای دسته بندی کل اسناد استفاده می شود. برای اهداف استخراج اطلاعات سند نشانه گذاری می شود (tokenize) و ترتیب این نشانه های حفظ می شود بنابراین نشانه گذارهایی در آن تعبیه شده که قادر به پردازش مجموعه های نمونه (examplesets)  استخراج شده از کلاس های اسناد هستند. به کاربردن این نشانه گذارها منجر به یک صفحه گسترده (spreadsheet) می شود که دربردارنده نشانه ها با یک ترتیب خاص یعنی همان طور که در سند یافت شده اند می باشد. هر نشانه شامل یک شماره خاص است که نشان می دهد از کدام واحد عمومی ایجاد شده است. برای مثال هر word-token یک جمله خاص دربردارنده شماره جمله است در حالی که  هر sentence-token از یک سند شامل شماره سند است.
در این فرایند متن کاوی، یک سند لود می شود ، به exampleset ای حاوی نمونه ای که متن کامل سند را دارد تبدیل می شود و دو نشانه گذار (tokenizers) متن را به چندین نشانه (مثال یا نمونه ها) تبدیل می کند. سومین عملگر متن را به جمله ها تقسیم می کند و چهارمین عملگر جملات را به کلمات تبدیل می کند. پس از به اتمام رسیدن فرایند دیتاست به دست آمده حاوی نمونه هایی است که هر یک کلمه ای را نگهداری می کنند. به علاوه کلمات دربردارنده شماره جملات هستند و امکان دسترسی به همه کلمات یک جمله را میسر می کنند.

NetOwl Extractor
http://www.textmining.com/
NetOwl Extractor ابتدا برای پرتقاضاترین برنامه های اطلاعاتی دولتی ساخته شد و مبتنی بر زبان شناسی محاسباتی پیشرفته و پردازش زبان طبیعی است. با آنالیز هوشمندانه ساختار و محتوای درون متن این ابزار می تواند به دقت اطلاعات کلیدی را شناسایی کند. این ابزار یک سیستم ایندکس گذاری اتوماتیک است که عبارات اصلی را در متن پیدا و کلاسیفای می کند مانند نام های شخصی، نام شرکت ها، نام مکان ها، تاریخ ها و … این ابزار همه نامه های یکسان را پیدا کرده و نام ها را به موجودیت مشابه به آن لینک می دهد. تشخیص دینامیک را با جستجوی استاتیک ترکیب می کند تا به دقت بالا رسیده و با سرعت بالایی به نتیجه برسد.

TextAnalyst: natural language text analysis software
http://www.megaputer.com/html/textanalyst.html
TextAnalyst یک سیستم متن کاوی است که تعدادی تابع آنالیز مهم را با تکیه بر استفاده از یک شبکه معنایی ایجاد شده خودکار از متن مورد بررسی ، پیاده می کند. مزیت اصلی آن در برابر سایر سیستم های بازیابی اطلاعات و تحلیل متن این است که می تواند شبکه معنایی یک متن را به طور کامل و بصورت خودکار بدون نیاز به از پیش توسعه دادن یک دیکشنری موضوعی خاص توسط انسان درآورد. کاربر مجبور نیست به این ابزار هیچ اطلاعات پس زمینه ای از موضوع بدهد سیستم این دانش را بصورت خودکار به دست می آورد پس با این حساب از یکی از تکنیک های یادگیری ماشین بی ناظر استفاده می کند.

Intelligent Miner for Text
http://www-4.ibm.com/software/data/iminer/fortext/
مربوط به شرکت IBM software است . این ابزار مجموعه جامعی از ابزارهای تحلیل متن و جستجوی متن ارائه می کند:
The Language Identi¯cation tool: این ابزار بصورت خودکار زبان سند را پیدا می کند می توانید آن را برای پوشش دادن زبان های دیگر آموزش دهید (از روش های یادگیری ماشین با ناظر (کلسیفایینگ) می توان استفاده کرد).
The Feature Extraction tool: این ابزار آیتم های لغت را در متن پیدا می کند خودش بصورت خودکار این کار را انجام می دهد و نیازی نیست شما محدوده ای که مربوط به لغت است را برای آن تعیین کنید.
The Summarizer tool این ابزار کلمات و جملات را در سند آنالیز می کند و از سند یک خلاصه ایجاد می کند.
The Topic Categorization tool  این ابزار بصورت خودکار اسناد را به مقوله ها، تاپیک ها یا زمینه هایی که از قبل تعیین کردید نسبت می دهد.
The Clustering tools این ابزار مجموعه ای از اسناد را به گروه ها یا کلاسترهایی تقسیم می کند. اعضای هر کلاستر به هم شبیه هستند زیرا از ویژگی های مشترکی برخوردارند. این کلاسترهای از قبل تعیین شده نیستند.

ICrossReader
http://www.insight.com.ru/
تنها اسناد بسیار مرتبط را در www پیدا می کند. متن های داخلی یک پایگاه داده غیر ساخت یافته را اسکرین کرده و اطلاعات را کلاستر معنایی می کند.

Yahoo Planet
http://www-ai.ijs.si/DunjaMladenic/yplanet.html
در این ابزار چندین مقوله برتر به عنوان برنامه های جداگانه گرفته می شود و برای هر یک از آنها یک کلاسیفایر خودکار ساخته می شود.

Dataset
http://www.ds-dataset.com/default.htm
این ابزار از دیتابیس های رابطه ای و Focused Informa-tion Retrieval استفاده می کند. تکنولوژی RDB یا دیتابیس رابطه ای با قابلیت های منحصر به فرد این ابزار برای مدیریت متن ترکیب شده و استفاده می شود. این ابزار، ابزارهای بازیابی و جستجوی جامعی فراهم می کند که می تواند آیتم ها را تقریبا بصورت آنی با کلمات، عبارات و … پیدا کند.

Texis
http://www.thunderstone.com/jump/texisdetail.html
این ابزار تنها SQL RDBMS کاملا یکپارچه است که به صورت هوشمندانه پایگاه داده هایی را که شامل متون زبان طبیعی ، دیتا تایپ های استاندارد، تصاویر، ویدئو، صوت و سایر داده ها هستند کوئری و مدیریت می کند. می توانید در آن متن را با هر اندازه ای ذخیره کنید و این اطلاعات را با زبان طبیعی بپرسید.
نرم افزار Text analytics می تواند با پس و پیش کردن و تبدیل کلمات و اصطلاحات و عبارات داده های غیر ساخت یافته به مقادیر عددی که بدین ترتیب پس از آن بتواند آنها را با داده های ساخت یافته موجود در دیتابیس لینک کند و با روش های داده کاوی تحلیل کند در این زمینه کمک کند.  سازمان ها می توانند با یک رویکرد تکرارگونه از Text analytics برای آگاهی یافتن از ارزش های محتوایی خاص مانند احساس، عاطفه و شدت و  ارتباط استفاده نمایند. از آنجایی که تکنولوژی Text analytics هنوز به عنوان یک تکنولوژی درحال ظهور محسوب می شوند، نتایج و عمق تحلیل ها می تواند از فروشنده ای به فروشنده دیگر تغییرکند.

GATE
GATE معماری عمومی Text Engineering است و یک جعبه ابزار کد باز برای پردازش زبان طبیعی و مهندسی زبان است. این ابزار یک سیستم استخراج اطلاعات به نام ANNIE دارد که در بردارنده مجموعه ای از ماژول هاست مانند tokenizer، یک gazetteer، یک تقسیم کننده جمله، یک part of speech tagger و … .

Carrot2
این ابزار یک چارچوب کلاسترینگ نتایج جستجو و متن است. این ابزار می تواند به طور اتوماتیک مجموعه های کوچکی از اسناد، نتایج جستجو یا خلاصه اسناد را بر اساس زمینه آنها کلاستر کند.

SAS Text Analytics
SAS یک نرم افزار تحلیل متن جامع است برای کشف و استخراج اطلاعات از متن. این ابزار از مدلسازی آماری پیشرفته ، پردازش زبان طبیعی، و تکنولوژی های زبان شناختی پیشرفته برای کشف الگوها از هر متن به هر زبان استفاده می کند. این ابزار در سیستم های اخطار فوری، هوش شهری، امنیت بیمار و عملکرد محتوای دیجیتال استفاده می شود.
نمونه هایی دیگر از نرم افزارهای متن كاوی
۱-Copernic Summarizer  (www.Copernic.com)
۲- Wizdoc  (www.wizsoft.com)
۳-Insight Discoverer Categorizer(www.temis-group.com)
۴- Insight Discoverer Clusterer  (www.temis-group.com)
۵- TextAnalyst  (www.megaputer.com)
۶- SPSS  (www.spss.com )

منابع
http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=4035880&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D4035880
http://www.predictiveanalyticstoday.com/top-30-software-for-text-analysis-text-mining-text-analytics/
http://en.wikipedia.org/wiki/List_of_text_mining_software
http://searchbusinessanalytics.techtarget.com/essentialguide/Tapping-the-potential-of-social-media-analytics-tools#guideSection2
http://en.wikipedia.org/wiki/Text_mining
http://www.statsoft.com/Textbook/Text-Mining
http://www.predictiveanalyticstoday.com/top-11-free-software-for-text-analysistext-mining-text-analytics/
http://arxiv.org/pdf/0807.2569.pdf
http://text-analysis.sourceforge.net/practical-applications
http://www3.cs.stonybrook.edu/~cse634/presentations/TextMining.pdf
http://www.emis.de/journals/NSJOM/Papers/38_3/NSJOM_38_3_227_234.pdf
https://staff.fnwi.uva.nl/j.c.vangemert/pub/textminingtools.pdf

http://text-analysis.sourceforge.net/practical-applications
http://www.optimizationgroup.com/methods/text-mining

http://www3.nd.edu/~steve/computing_with_data/20_text_mining/text_mining_example.html#/
http://rasekhoon.net/article/show/166623/%D9%85%D 8%AA%D9%86%20%DA%A9%D8%A7%D9%88%D9%8A/

——————————-

برگردان : هدی ابیضی

 

منبع :ماهنامه کامپیوتری رایانه www.rayanehmag.net

دیدگاه‌ها  

+1 # hamed 1395-07-14 22:16
ممنون بابت مطالب خوبتون
پاسخ دادن
# Guest 1395-11-25 16:00
این دیدگاه توسط مدیر حذف شده است

نوشتن دیدگاه

تصویر امنیتی
تصویر امنیتی جدید

ارتباط با ما

  • گیلان - رشت - میدان حشمت - پارک علم و فناوری گیلان - طبقه دوم  - گروه توسعه اندیشه نوین 
  • موبایل : 09117586735 (مهندس ایوبی)
  • وب سایت متن کاوی: www.tmta.ir