ورود به حساب کاربری

نام کاربری *
رمز عبور *
یاداوری

قطعه بندی متون فارسی (tokenize) با استفاده از جی هضم (Jhazm)

امتیاز کاربران

ستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعال
 

قطعه بندی متن (Tokenizer)

به روش های تشخیص زبان در متون اشاره کردیم در این مبحث به نقش واحد ساز (Tokenizer) در پردازش متن میپردازیم. Tokenizer ابزاری برای شکستن یک متن بر اساس واحدهای با معنی مانند کلمه، پاراگراف، نمادهای معنادار مانند space و  tab و … . لازمه ی ایجاد این ابزار جمع آوری واحد هایی است که در زبان فارسی به عنوان واحد های مستقل معنایی شناخته می شوند. سپس بر اساس انتخاب هر کدام از این واحدها متن بر اساس آن شکسته خواهد شد. از نمونه های انگلیسی آن می توان به Flex، JLex، JFLex، ANTLR، Ragel و Quex اشاره کرد.

واحدساز (Tokenizer) مرز کلمات را در متون تشخیص داده و متن را به دنباله‌ای از کلمات تبدیل می‌کند و آن را برای تحلیل های بعدی آماده میکند. در واقع این واحد ساز جزء مراحل پیش پردازش (pre process) متن به حساب میآید. در فرایتند تحلیل متون اغلب بعد از پارس (Pars) کردن متن عمل جداسازی کلمات با ابزار Tokenizer انجام میشود. معمولا بعد از این مرحله نوبت به مرحله حذف ایست‌واژه‌هایا Stop Wordsها میباشد که در مراحل بعدی به آن میپردازیم. در شکل زیر این مراحل به تصویر کشیده شده است. ابزار واحد ساز (Tokenizer) برای شکستن یک متن بر اساس واحدهای با معنی مانند کلمه، پاراگراف، جمله و نمادهای معنادار مانند space و tab است.

به عیارتی دیگر واحدسازی تکه­ تکه کردن سند به قسمت­های کوچک به نام واحد است. واحدسازی در سطح کلمات رخ می­دهد و واحدهای استخراج شده می­توانند به عنوان ورودی ماژول­های دیگر مانند ریشه­ یاب و برچسب­گذار استفاده شود. لازمه­ ی ایجاد این ابزار جمع ­آوری واحدهایی است که در زبان فارسی به عنوان واحدهای مستقل معنایی شناخته می­ شوند. متن بر اساس انتخاب هر کدام از این واحدها، شکسته خواهد شد. از نمونه­ های انگلیسی این ابزار می­توان به Flex، JLex، JFLex، ANTLR،Ragel  و Quex اشاره کرد.

این ابزار مرز کلمات را در متون تشخیص داده و متن را به دنباله‌ای از کلمات تبدیل می‌کند. کلمات چند بخشی، کلمات بهم چسبیده و ترکیب‌های خاصی مانند اعداد اعشاری، تاریخ و ساعت از چالش‌های موجود در تشخیص مرز کلمات است.

 

tokenizer را نباید با موارد زیر اشتباه گرفت.

چانکر (Chunker): ابزاری برای تشخیص گروه های اسمی، فعلی و …. در یک جمله. جهت تقویت الگوریتم های وابسته به برچسب زن معنایی (Semantic role labeler) لازم است، نه تنها نقش های کلمات مشخص گردند، بلکه باید وابستگی های کلمات به لحاظ نقشی در جمله مشخص گردند. از جمله نمونه های انگلیسی آن می توان به Illinois Chunker  اشاره کرد.

برچسب زن معنایی: ابزاری برای تشخیص نقش گرامری کلمه در جمله. این ابزار یکی از مهمترین نقش ها را در پردازش های زبانی بر عهده دارد. دقت در این ابزار بسیار حائز اهمیت است. این ابزار باید نقش های گرامری کلمات در جمله ها مانند فعل، فاعل، مفعول مستقیم، مفعول غیر مستقیم و …. را تشخیص دهد. از جمله نمونه های انگلیسی آن می توان به OpenNlP، Illinois SRL، Swirl  و LTHSRL اشاره کرد. این ابزارها از الگوریتم پارسینگ charniak استفاده می کنند.

 

پردازش متن

تحلیل صرفی

POS, Tokenizer, lemmatizer

تحلیل نحوی

Chunker, Parser

تحلیل معنایی

Co-reference, NER, Event Detection

 


قطعه بندی متون

                                                   جایگاه قطعه بندی متون

 

مثالی از نمونه کد جاوا برای استفاده از ابزار قطعه بند یا tokenizer با کتابخانه jhazm:

import jhazm.tokenizer.WordTokenizer;
//jhazm tokenizer
WordTokenizer wordtokenizer = null;
try {
 wordtokenizer = new WordTokenizer(true);
} catch (IOException e) {
 // If document File was crrupted So Go to Next Doc
 continue;
}
ArrayList<String> wordsList = new ArrayList<>(wordtokenizer.tokenize(textWithOutStopWords));

نقش و جایگاه واحدساز (Tokenizer) در پردازش متن


                                                 جایگاه واحد ساز

 

 ------------------------------------
منبع : خانه بیگ دیتای ایران

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

 

سایت مرتبط : " بنیاد توسعه رایانش سریع و ابری "

 

 

آخرین مقالات

کامپایل و نصب mfix-2016.1

درک عملکرد دستگاه های انرژی، محیط زیست و فرایندها...

مدیریت خصوصیات صف در کلاس...

 لیست زیر ,ویژگی های صف را نمایش می دهد : acl_grou...

AMD از رویکرد طراحی تازه‌...

AMD چند روز پیش به‌صورت رسمی از رویکرد طراحی جدیدی...

دومین جلسه meet up:مقدمه...

فهرست : توضیح مختصر از توسعه ی کلودسیم نصب کلودسیم...

نرم افزار Multiwfn

Multiwfn نرم افزاری قدرتمند برای آنالیز تابع موج ا...

بزرگترین استارتاپ‌های چین...

هوش مصنوعی و صنایع رباتیک یکی از پرطرفدارترین حوزه...

نرم افزار ترسیم ساختار سط...

نرم افزار Molekel نرم افزاری برای ترسیم ساختار و س...

اتحاد Cloudflare با شرکت‌...

استارتاپ کلادفلیر با ایجاد اتحاد جدیدی با شرکت‌های...

A Guide to High Performan...

In the world of HPC, on-premises infrastructure i...

نرم افزار مدل سازی مولکول...

نرم افزار جی‌مول (Jmol) نرم‌افزاری متن‌باز و نوشته...

۱۰ نرم افزار پرکاربرد رشت...

مهندسی شیمی (به انگلیسی: Chemical engineering) شاخ...

راه اندازی و نصب کسندرا ب...

در این مقاله به راه اندازی و نصب کسندرا بر روی چن...

HPC Cloud Drives Innovati...

High performance computing is about solving the w...

معرفی DataStax پلتفرمی بر...

معرفی: شرکت دیتا استکس، یک فروشنده نرم افزار های...

معرفی و لینک دانلود نرم ا...

ChemDoodle برنامه ای مخصوص برای طراحی ساختار های ش...

هفت مورد از بهترین نرم اف...

3D modeling software are powerful tools that help...

فناوری بلاک‌ چین: راهی من...

کاربردهای بلاک‌چین محدود به بیت‌کوین نمی‌شود. انقل...

آموزش کد محاسباتی سیستا (...

در این آموزش به بررسی خواص ساختاری جامد سیلیکون پ...

کمپانی Nvidia معماری جدید...

Your browser does not support the video tag. کمپا...

آموزش سیستا-چگونه یک فایل...

شبه پتانسیل مورد نظر خود را برای کد سیستا با استف...

شبیه سازی مولکولی بر روی...

شبیه سازی مولکولی بر روی GPU1 تکنیک استفاده از واح...

چرا یادگیری زبان اسکالا و...

تقریبا اکثر قریب به اتفاق برنامه‌نویسان به این حقی...

شیمی محاسباتی، مکانیک مول...

شیمی محاسباتی شاخه‌ای از دانش شیمی است که از روش‌ه...

Watch "Jakub Kurzak...

یکی از کتابخانه های پرکاربرد در نرم افزارهای محاسب...

Video: Large Scale Traini...

In this video from PASC18, Jakub Tomczak from the...

راهنمای برنامه نویسی در M...

This publication is part of a developer guide focu...

روش های تشخیص زبان در متن

تشخیص زبان یک متن، یکی از اولین گام ها به سوی متن...

قطعه بندی متون فارسی (tok...

قطعه بندی متن (Tokenizer) به روش های تشخیص زبان در...

یک برنامه هوش مصنوعی می‌ت...

در جدیدترین نوع رقابت بین انسان و ماشین، از یک سیس...

کامپایل OpenFOAM-5.0 با I...

حداقل ورژن نیازمندیها : gcc : 4.8.5 cmake : 3.3 (م...

گالری تصاویر