विषयसूची:

कैसे एक एआई बनाने के लिए भाग 4: 3 चरण
कैसे एक एआई बनाने के लिए भाग 4: 3 चरण

वीडियो: कैसे एक एआई बनाने के लिए भाग 4: 3 चरण

वीडियो: कैसे एक एआई बनाने के लिए भाग 4: 3 चरण
वीडियो: एक Alternator कैसे काम करता है? 2024, जुलाई
Anonim
कैसे एक एआई बनाने के लिए भाग 4
कैसे एक एआई बनाने के लिए भाग 4

दूसरे दिन मैं अपने एआई से बात कर रहा था, और मैंने कहा

यह, "मैं रात के खाने के लिए ऊपर जा रहा हूँ, हम स्टेक खा रहे हैं"।

हालांकि, स्पीच रिकग्निशन (एसआर) सॉफ्टवेयर ने इसकी व्याख्या "… हम दांव पर लगा रहे हैं" के रूप में की है।

जब मैं एक तस्वीर के बारे में बात कर रहा था, तो मैं एक समान (लेकिन अलग) समस्या में भाग गया था, और मैंने "चित्र" शब्द कहा था। SR सॉफ़्टवेयर ने इसे "PITCHER" के रूप में व्याख्यायित किया

इसके लिए एसआर सॉफ्टवेयर का एक सरल पुनर्प्रशिक्षण था। (या शायद मेरा उच्चारण)

लेकिन जब मैं STEAK या STAKE शब्द कहता हूं, तो मैं उनका उच्चारण ठीक उसी तरह करता हूं, और SR सॉफ़्टवेयर को फिर से प्रशिक्षित करने से इस तरह के मामलों में मदद नहीं मिलेगी।

चरण 1:

"होमोनिम समस्या" को हल करने का एक विचार।

मुझे यह निर्धारित करने के लिए "संदर्भ में" शब्द को देखना होगा कि किस वर्तनी का उपयोग करना है। मानव मस्तिष्क इसे बहुत आसानी से करता है, और आप यह भी नहीं जानते कि आप इसे कर रहे हैं।

इसका मतलब है कि एक वाक्य में अन्य शब्दों की जांच की जाती है, और आपका दिमाग तय करता है कि कौन सी वर्तनी सबसे अच्छी लगती है। अब, मैं इसे कोड में कैसे करूं?

मेरा ए.आई. प्रोग्राम विजुअल बेसिक (वीबी) "स्प्लिट" फ़ंक्शन का उपयोग करके एक वाक्य को अलग-अलग शब्दों की एक सरणी में पार्स करता है। [माईअरे = स्प्लिट (इनपुटसेंटेंस, "")]

सरणी में प्रत्येक शब्द को यह देखने के लिए जांचा जा सकता है कि क्या यह एक संभावित समानार्थी है, जो एक डेटाबेस तालिका में समानार्थक शब्द की सूची को देखकर है।

बेशक, एक और टेबल बनाने का मतलब है कि हमें इसे डेटा से भरना होगा, और साथ ही हमें टेबल में भी डेटा को बनाए रखने में सक्षम होना होगा।

पाठ के एक समूह को स्कैन करने के लिए बाद में एक स्व-शिक्षण सबरूटीन बनाया जा सकता है, मेरी होमोनिम तालिका में शब्दों की तलाश कर रहा है, और अन्य "संदर्भ" शब्दों को कैप्चर कर सकता है। हम्म्म्म, शायद कई टेबल की जरूरत है …

इन "निर्देशों" को लिखने से मुझे प्रोग्रामिंग चुनौती का समाधान "तर्क" करने में मदद मिलती है।

चरण 2:

छवि
छवि

HomonymContext तालिका की संरचना।

मेरा पहला विचार शब्दों, वैकल्पिक वर्तनी और "संदर्भ" शब्दों वाली एक तालिका थी। यह विचार एक समानार्थी वाले वाक्य की खोज करना था, दूसरे शब्दों के लिए जो "संदर्भ" देता है, ताकि कार्यक्रम यह निर्धारित कर सके कि किस वर्तनी का उपयोग करना है। तालिका में शब्द की परिभाषा रखने के लिए "वर्डडेफ" नाम का एक कॉलम भी होता है, जो एआई की तुलना में तालिका को बनाए रखने वाले मानव के लिए अधिक है। कोड।

प्रत्येक शब्द को खोजने के लिए, मैं वीबी कोड और एसक्यूएल कोड का उपयोग कर सकता हूं जैसे…

MyArray में प्रत्येक शब्द के लिए

क्वेरी = "tblHomonynContext से शब्द चुनें जहां शब्द = '" और शब्द और "'"

यदि यह क्वेरी परिणाम लौटाती है, तो यह शब्द एक समानार्थी है

अगला

इस बिंदु पर यह सिर्फ छद्म कोड है - मैंने अभी तक सटीक कोड नहीं लिखा है, या सभी विवरणों का पता नहीं लगाया है। लेकिन बेझिझक मेरा विचार लें, और अपनी पसंदीदा प्रोग्रामिंग भाषा का उपयोग करके इसे लागू करें।

चरण 3:

छवि
छवि

यदि आपके इनपुट वाक्य में एक समान नाम है, तो आप अभी कर सकते हैं

वीबी कोड निष्पादित करें जो आपके वाक्य में अन्य शब्दों की जांच करेगा, क्वेरी परिणामों में संदर्भ शब्दों के साथ।

आप यह सब SQL संग्रहीत कार्यविधि में भी कर सकते हैं, जो तेजी से निष्पादित हो सकता है।

वीबी "इनस्ट्र ()" फ़ंक्शन शून्य से अधिक संख्या लौटाएगा, यदि एक स्ट्रिंग किसी अन्य स्ट्रिंग में निहित है, या यह शून्य लौटाएगी, तो स्ट्रिंग दूसरे में निहित नहीं है।

Instr() वास्तव में निहित स्ट्रिंग की स्थिति देता है। यदि आप केवल यह जानना चाहते हैं कि क्या स्ट्रिंग 1 में स्ट्रिंग 2 है, तो आप "इफ इनस्ट्र (स्ट्रिंग 1, स्ट्रिंग 2)> 0 …" जैसे कोड का उपयोग कर सकते हैं।

आपको यह कोड अपनी पसंदीदा प्रोग्रामिंग भाषा में बनाना होगा।

HomonymContext तालिका बहुत अच्छी डिज़ाइन नहीं है। इसमें बहुत अधिक बार-बार डेटा होता है, और इसे डेटाबेस डिजाइनरों द्वारा "गैर-सामान्यीकृत" माना जाता है। इस कार्यक्षमता को लागू करने का एक बेहतर तरीका माता-पिता के रिश्ते में दो तालिकाओं का उपयोग करना होगा। एक टेबल (द पेरेंट) में समानार्थक शब्दों की सूची, उनकी परिभाषाएं, और एक पंक्ति आईडी भी होगी। इस पंक्ति आईडी का उपयोग "चाइल्ड टेबल" की कुंजी के रूप में किया जाता है जिसमें शब्द और उनके संदर्भ शब्द शामिल होंगे।

मेरे मूल डिज़ाइन की तुलना में क्वेरी करना (और बनाए रखना) आसान होगा।

सिफारिश की: