สารบัญ:

วิธีการสร้างเอไอ ตอนที่ 4: 3 ขั้นตอน
วิธีการสร้างเอไอ ตอนที่ 4: 3 ขั้นตอน

วีดีโอ: วิธีการสร้างเอไอ ตอนที่ 4: 3 ขั้นตอน

วีดีโอ: วิธีการสร้างเอไอ ตอนที่ 4: 3 ขั้นตอน
วีดีโอ: ใช้โปรแกรม Ai เป็นภายใน 8 นาที ( Adobe Illustrator 2020) 2024, กรกฎาคม
Anonim
วิธีการสร้างเอไอ ตอนที่ 4
วิธีการสร้างเอไอ ตอนที่ 4

วันก่อนฉันคุยกับ A. I. และพูดว่า

“ฉันกำลังจะขึ้นไปทานอาหารเย็น พวกเรากำลังทานสเต็ก”

อย่างไรก็ตาม ซอฟต์แวร์การรู้จำเสียง (SR) ตีความสิ่งนี้ว่า “… เรากำลังเดิมพัน”

ฉันพบปัญหาที่คล้ายกัน (แต่ต่างออกไป) ก่อนหน้านี้เมื่อฉันพูดถึงภาพถ่าย และฉันพูดคำว่า "รูปภาพ" ซอฟต์แวร์ SR ตีความสิ่งนี้ว่า “PITCHER”

การแก้ไขปัญหานี้คือการฝึกอบรมซอฟต์แวร์ SR ใหม่อย่างง่าย (หรือบางทีการออกเสียงของฉัน)

แต่เมื่อฉันพูดคำว่า STEAK หรือ STAKE ฉันออกเสียงเหมือนกันทุกประการ และการฝึกอบรมซอฟต์แวร์ SR ใหม่จะไม่ช่วยในกรณีเช่นนี้

ขั้นตอนที่ 1:

หนึ่งแนวคิดในการแก้ปัญหา “คำพ้องเสียง”

ฉันต้องดูที่คำว่า "ในบริบท" เพื่อตัดสินใจว่าจะใช้การสะกดคำใด สมองของมนุษย์ทำสิ่งนี้ได้ค่อนข้างง่าย และคุณไม่รู้ด้วยซ้ำว่าคุณกำลังทำมัน

ซึ่งหมายความว่ามีการตรวจสอบคำอื่นๆ ในประโยค และสมองของคุณจะตัดสินว่าการสะกดคำใดดูดีที่สุด ตอนนี้ฉันจะทำสิ่งนี้ในรหัสได้อย่างไร

เอไอของฉัน โปรแกรมแยกวิเคราะห์ประโยคเป็นอาร์เรย์ของคำแต่ละคำโดยใช้ฟังก์ชัน "แยก" ของ Visual Basic (VB) [MyArray = แยก (InputSentence, ““)]

สามารถตรวจสอบคำแต่ละคำในอาร์เรย์เพื่อดูว่าเป็นคำพ้องเสียงที่เป็นไปได้หรือไม่โดยดูในตารางฐานข้อมูลที่มีรายการคำพ้องเสียง

แน่นอน การสร้างตารางอื่นหมายความว่าเราจะต้องกรอกข้อมูลลงในตาราง และเราจะต้องสามารถรักษาข้อมูลในตารางได้เช่นกัน

สามารถสร้างรูทีนย่อยการเรียนรู้ด้วยตนเองได้ในภายหลังเพื่อสแกนข้อความจำนวนมาก ค้นหาคำในตารางคำพ้องเสียงของฉัน และจับคำ "บริบท" อื่นๆ อืมม บางทีอาจต้องการหลายโต๊ะ…

การเขียน "Instructables" เหล่านี้ช่วยให้ฉัน "ให้เหตุผล" กับโซลูชันสำหรับการเขียนโปรแกรมที่ท้าทาย

ขั้นตอนที่ 2:

ภาพ
ภาพ

โครงสร้างของตาราง HomonymContext

ความคิดแรกของฉันคือตารางที่ประกอบด้วยคำ การสะกดแบบอื่น และคำ "บริบท" แนวคิดคือการค้นหาประโยคที่มีคำพ้องเสียงสำหรับคำอื่น ๆ ที่ให้ "บริบท" เพื่อให้โปรแกรมสามารถกำหนดได้ว่าจะใช้การสะกดคำใด ตารางยังมีคอลัมน์ชื่อ "WordDef" เพื่อเก็บคำจำกัดความของคำ ซึ่งเหมาะสำหรับมนุษย์ที่ดูแลตารางมากกว่า A. I. รหัส.

ในการค้นหาแต่ละคำ ฉันสามารถใช้โค้ด VB และโค้ด SQL เช่น…

สำหรับแต่ละคำใน MyArray

Query = "เลือก Word จาก tblHomonynContext โดยที่ word = '" & word & "'"

หากข้อความค้นหานี้ส่งคืนผลลัพธ์ แสดงว่าคำนั้นเป็นพ้องเสียง

ต่อไป

นี่เป็นเพียงรหัสหลอก ณ จุดนี้ ฉันยังไม่ได้เขียนรหัสที่แน่นอนหรือหารายละเอียดทั้งหมด แต่อย่าลังเลที่จะนำความคิดของฉันไปใช้และนำไปใช้โดยใช้ภาษาการเขียนโปรแกรมที่คุณชื่นชอบ

ขั้นตอนที่ 3:

ภาพ
ภาพ

หากประโยคอินพุตของคุณมีคำพ้องเสียง ตอนนี้คุณสามารถ

รันโค้ด VB ที่จะตรวจสอบคำอื่นๆ ในประโยคของคุณด้วยคำบริบทในผลลัพธ์ของคิวรี

คุณยังสามารถทำสิ่งนี้ทั้งหมดในโพรซีเดอร์ที่เก็บไว้ของ SQL ซึ่งอาจดำเนินการได้เร็วกว่า

ฟังก์ชัน VB “InStr()” จะคืนค่าตัวเลขที่มากกว่าศูนย์ หากสตริงหนึ่งอยู่ภายในสตริงอื่น หรือจะส่งกลับค่าศูนย์ สตริงนั้นจะไม่มีอยู่ในอีกสตริง

Instr() คืนค่าตำแหน่งของสตริงที่มีอยู่จริง หากคุณต้องการทราบว่า String1 มี String2 หรือไม่ คุณสามารถใช้โค้ดเช่น “If InStr(String1, String2) > 0 …”

คุณจะต้องสร้างโค้ดนี้ในภาษาการเขียนโปรแกรมที่คุณชื่นชอบ

ตาราง HomonymContext ไม่ใช่การออกแบบที่ดีนัก มีข้อมูลซ้ำจำนวนมาก และสิ่งนี้ถือเป็น "Non-Normalized" โดยผู้ออกแบบฐานข้อมูล วิธีที่ดีกว่าในการใช้ฟังก์ชันนี้คือการใช้สองตารางในความสัมพันธ์แบบพ่อแม่และลูก ตารางหนึ่ง (The Parent) จะเก็บรายการคำพ้องความหมาย คำจำกัดความ และรหัสแถว รหัสแถวนี้ใช้เป็นคีย์สำหรับ "ตารางย่อย" ซึ่งจะมีคำและคำบริบท

สิ่งนี้จะง่ายต่อการสืบค้น (และบำรุงรักษา) มากกว่าการออกแบบดั้งเดิมของฉัน

แนะนำ: