9 เครื่องมือและห้องสมุดเพื่อให้คุณดำเนินการกับการประมวลผลภาษาที่เป็นธรรมชาติ
เผยแพร่แล้ว: 2019-11-20ในโพสต์ก่อนหน้านี้ เราได้พูดถึงว่า NLP คืออะไร ขั้นตอนที่จำเป็นในการเรียกใช้ NLP และวิธีที่ NLP ทำงานร่วมกัน
ตอนนี้ คุณมีความเข้าใจพื้นฐานเกี่ยวกับ NLP และวิธีที่ NLP สามารถช่วยคุณปรับขนาดการตลาดเนื้อหาได้แล้ว คุณสามารถเริ่มค้นคว้าเกี่ยวกับเครื่องมือและไลบรารีที่คุณต้องการเพื่อเริ่มต้น
มีเครื่องมือทุกประเภทสำหรับงาน NLP ทุกประเภท บางส่วนเป็นเครื่องมือโอเพนซอร์ซ เปิดให้สาธารณชนเข้าชมฟรี และสร้างโดยการมีส่วนร่วมของอาสาสมัคร ส่วนอื่นๆ เป็นผลิตภัณฑ์ระดับพรีเมียม ซึ่งนำเสนอโดยบริษัทยักษ์ใหญ่ในด้านการประมวลผลและการประมวลผลข้อมูล
แม้แต่ Google ก็อยู่ในเกม AI
แต่ก่อนที่เราจะเจาะลึกรายการเครื่องมือและไลบรารีที่มีอยู่ มีคำศัพท์บางคำที่คุณควรรู้ คุณจะเห็นฉันอ้างอิง Python, Java และ Node ในโพสต์นี้ หากคุณไม่ใช่นักพัฒนาโดยการค้าขาย การรู้ว่าสิ่งเหล่านี้คืออะไรและโดยทั่วไปแล้วทีมพัฒนาของคุณทำงานอะไรด้วย
มานิยามกันสั้นๆ แล้วพูดถึงประเภทของเครื่องมือที่จะช่วยให้คุณเริ่มใช้กลยุทธ์ NLP ได้
Python, Java และ Node คืออะไร?
Python และ Java เป็นทั้งภาษาโปรแกรมโอเพ่นซอร์ส และทั้งคู่ใช้ในการสร้างแอปพลิเคชัน AI และ NLP Python และ Java เป็นภาษาโปรแกรมหมายเลขสามและสอง ตามลำดับ ตาม GitHub โฮสต์การพัฒนาซอฟต์แวร์สำหรับโครงการโอเพนซอร์ซ
Node (หรือ NodeJS) เป็นเฟรมเวิร์กที่อนุญาตให้เครื่องมือ AI และ NLP ทำงานในภาษาอื่นที่เรียกว่า JavaScript โปรดทราบว่า Java และ JavaScript ไม่ใช่ภาษาเดียวกัน
โหนดได้กลายเป็นตรงกันกับ JavaScript ดังนั้นเมื่อคุณพูดถึงเครื่องมือ NLP และไลบรารีที่ทำงานใน Node คุณกำลังบอกว่ามันทำงานใน JavaScript จริงๆ
โอเพ่นซอร์สหมายถึงภาษาโปรแกรมและเฟรมเวิร์กที่ใช้งานได้ฟรีและจัดการได้ง่าย นักพัฒนาซอฟต์แวร์ของคุณสามารถกำหนดเครื่องมือและไลบรารี NLP แบบโอเพนซอร์สให้ตรงกับความต้องการของแบรนด์ของคุณได้
แต่ขอเตือนว่าโอเพ่นซอร์สไม่ได้มาพร้อมกับโซลูชันสำเร็จรูปเสมอไป ซึ่งอาจหมายถึงการพัฒนาและการทดสอบจำนวนมากก่อนที่จะทำงานใดๆ
พรีเมี่ยมหมายถึงสิ่งที่ตรงกันข้าม สิ่งเหล่านี้เป็นเครื่องมือและไลบรารีแบบสมัครสมาชิก โดยทั่วไปแล้วจะมีตัวเลือกที่พร้อมใช้งานทันทีที่คุณสามารถเสียบเข้ากับโครงสร้างพื้นฐานที่มีอยู่ได้ ซึ่งจะมีประโยชน์หากคุณเพิ่งเริ่มต้นกับการพัฒนา AI หรือคุณต้องการปรับใช้บางสิ่งอย่างรวดเร็ว
เครื่องมือและไลบรารีของ Python สำหรับ NLP
spaCy
SpaCy แท็กตัวเองว่าเป็น "การประมวลผลภาษาธรรมชาติที่มีความแข็งแกร่งทางอุตสาหกรรม" เป็นไลบรารีการวิเคราะห์ข้อความที่ช่วยให้นักพัฒนาสามารถจัดการกับโครงการ NLP ต่างๆ ได้ SpaCy รองรับมากกว่า 52 ภาษาและภาคภูมิใจในความเร็วและความแม่นยำในการประมวลผล รวมถึงคุณสมบัติมากมาย เช่น คุณสมบัติมากมาย รวมถึงการรู้จำเอนทิตีที่มีชื่อและการติดแท็ก PoS
ชุดเครื่องมือภาษาธรรมชาติ (NLTK)
NLTK เป็นไลบรารี NLP Python โอเพ่นซอร์สที่รู้จักกันดี มีห้องสมุดทุกประเภทเพื่อช่วยในการประมวลผลข้อความและความเข้าใจภาษาธรรมชาติ รวมถึงการวิเคราะห์ความหมาย
แต่สิ่งที่เรียบร้อยคือความมุ่งมั่นในการเข้าถึง สมองที่อยู่เบื้องหลัง NLTK จะให้คำแนะนำเชิงลึกที่สอนพื้นฐานของการเขียนโปรแกรม ดังนั้นแม้แต่ผู้เริ่มต้นก็สามารถเริ่มเล่น NLP ได้
ตามไซต์ของพวกเขา แนวทางในการเขียนโปรแกรม NLP ทำให้เป็นเครื่องมือที่มีประโยชน์สำหรับนักวิจัย นักเรียน และครู
หากทีมของคุณไม่ค่อยทันกับการเขียนโปรแกรมโดยทั่วไป นี่อาจเป็นจุดเริ่มต้นที่ดี
TensorFlow
TensorFlow เป็นแพลตฟอร์มแบบ end-to-end สำหรับบริษัทที่สนใจในการเรียนรู้ของเครื่องและ NLP เขียนด้วย python/C++ เป็นโอเพ่นซอร์สโดยสมบูรณ์ และมาพร้อมกับไลบรารีและเครื่องมือต่างๆ ที่นักพัฒนาสามารถใช้สร้างแอปของตนเองได้
ผสานรวมกับเฟรมเวิร์กอย่าง Keras และโมเดลระดับสูงอื่นๆ เพื่อสร้างโครงข่ายประสาทเทียมอย่างง่ายดายและรวดเร็ว
เครื่องมือโหนดและไลบรารีสำหรับ NLP
NLP.js
NLP.js สามารถเดาภาษาของข้อความที่กำลังวิเคราะห์ได้ - ได้รับการฝึกฝนให้รู้จัก Klingon! เครื่องมือนี้เหมาะสำหรับแอปพลิเคชันข้อมูลที่ไม่มีโครงสร้าง เช่น การแปลและแชทบ็อต มันระบุภาษาที่แตกต่างกัน 34 ภาษาและรวมถึงตัวแยกประเภทการประมวลผลภาษาธรรมชาติและตัวจัดการการสร้างภาษาธรรมชาติ

เครื่องมือนี้เป็นโอเพ่นซอร์สโดยสมบูรณ์และอาศัยการมีส่วนร่วมของโปรแกรมเมอร์ทั่วโลก
เครื่องมือ Java และไลบรารีสำหรับ NLP
Apache OpenNLP
ตามไซต์ของพวกเขา Apache OpenNLP เป็นเครื่องมือโอเพนซอร์ซที่เขียนโดยอาสาสมัครสำหรับ NLP “รองรับงาน NLP ที่พบบ่อยที่สุด เช่น การทำให้เป็นโทเค็น การแบ่งเซ็กเมนต์ประโยค การติดแท็กบางส่วนของคำพูด การแยกเอนทิตีที่มีชื่อ การแบ่งส่วน การแยกวิเคราะห์ การตรวจจับภาษา และการแก้ไขคอร์
กระบวนการเหล่านี้ช่วยให้นักพัฒนาสามารถสร้างแอปที่สามารถแบ่งส่วนของคำพูด พูดหรือเขียน และทำความเข้าใจได้
กลุ่มประมวลผลภาษาธรรมชาติของสแตนฟอร์ด
Stanford ได้เปิดตัวเครื่องมือประมวลผลภาษาบางตัว รวมถึงเครื่องมือ NLP ทางสถิติ ตามกฎ และการเรียนรู้เชิงลึก มีรายการไลบรารีและเครื่องมือหลักทั้งหมดบนเว็บไซต์ รวมถึงไลบรารีสำหรับการแท็กและการแยกวิเคราะห์ และเครื่องมือสำหรับการแปล
อย่างไรก็ตาม สิ่งสำคัญที่ควรทราบคือ แม้ว่าผลิตภัณฑ์ของพวกเขาจะเป็นโอเพนซอร์ส คุณต้องติดต่อสแตนฟอร์ดเพื่อขอใบอนุญาตเชิงพาณิชย์ก่อนที่จะใช้ในเครื่องมือที่เป็นกรรมสิทธิ์ใดๆ
เครื่องมือ NLP อื่นๆ
AWS
Amazon Deep Learning AMI เป็นบริการระดับพรีเมียมที่ให้เครื่องมือในการรัน NLP ไม่ว่าคุณจะใช้ภาษาการเขียนโปรแกรมใดก็ตาม นอกจากนี้ยังทำงานร่วมกับเฟรมเวิร์กการเรียนรู้เชิงลึกที่มีอยู่หลายตัวที่เราได้กล่าวถึง รวมถึง Keras และ TensorFlow
IBM Watson
คุณคงเคยได้ยินชื่อวัตสันมาบ้างแล้วในตอนนี้ นั่นคือเครื่อง AI ที่ชนะ Jeopardy!. แต่วัตสันมีเครื่องมือและไลบรารีสำหรับ NLP ด้วยเช่นกัน คุณสามารถดาวน์โหลดแพ็คเกจสำหรับ Python, Node หรือ Java เพื่อสร้างแชทบอท วิเคราะห์ความรู้สึกบนโซเชียลมีเดีย หรือวิเคราะห์รีวิวออนไลน์ และอื่นๆ
ภาษาธรรมชาติของ Google Cloud
Google Cloud มีสองตัวเลือกสำหรับการประมวลผลภาษาธรรมชาติ อย่างแรกคือ AutoML Natural Language ซึ่งนักพัฒนาจะอัปโหลดเอกสารที่มีอยู่เพื่อฝึกเครื่องมือ จากนั้นปรับใช้เพื่อทำงาน NLP หลายอย่าง มีไว้สำหรับนักพัฒนาที่ไม่มีประสบการณ์เกี่ยวกับ AI, การเรียนรู้เชิงลึกหรือ NLP มากนัก
Google ยังมี Natural Language API ซึ่งช่วยให้นักพัฒนาที่มีประสบการณ์มากขึ้นสามารถสร้างและวิเคราะห์ข้อความ วิเคราะห์ความรู้สึก และเครื่องมือการแปลได้ด้วยตนเอง
ทั้งสองมีอยู่ในคลาวด์ของ Google
สรุป
สำหรับความต้องการของ NLP ทุกประเภท มีเครื่องมือและไลบรารีที่จะช่วยคุณ สิ่งที่คุณเลือกจะขึ้นอยู่กับทีมพัฒนาของคุณเป็นอย่างมาก ดังนั้นให้พวกเขามีส่วนร่วม คุณจะต้องรู้ความคุ้นเคยกับ AI รวมถึงภาษาโปรแกรมสามภาษาที่ฉันพูดถึง คุณจะต้องเข้าใจ Tech stack ของคุณและสิ่งที่สามารถรองรับได้
ถามคำถามที่เหมาะสมกับทีมนักพัฒนาของคุณและชี้แจงความต้องการขององค์กรของคุณให้ชัดเจน จากนั้น คุณสามารถเลือกเครื่องมือประมวลผลภาษาธรรมชาติและไลบรารีที่เหมาะสมสำหรับบริษัทโดยรวม
