2012-02-27 20 views
12

कहा जा सकता है मैं वाक्यों को खोजने के लिए एक बड़ा प्रशंसक हूं जिसे बहुत तेज़ी से रैप किया जा सकता है। उदाहरण के लिए, "विकिपीडिया का थोड़ा सा पढ़ना चाहिए" या "माल्ट की एक बोतल के साथ गटर में हवा नहीं करना चाहते हैं।" (जॉर्ज वाटस्की)शब्दों और शब्दों के संयोजनों को ढूंढें जिन्हें सबसे तेज़

मैं पायथन में एक प्रोग्राम लिखना चाहता था जो मुझे शब्दों (या शब्दों के संयोजन) खोजने में सक्षम बनाता है, जिसे बोली जाने पर यह बहुत तेज़ लगता है।

मैंने शुरू में सोचा था कि अक्षर अनुपात के लिए उच्च अक्षरों वाले शब्द सबसे अच्छे होंगे, लेकिन उन शब्दों को खोजने के लिए एक पायथन प्रोग्राम लिखने पर, मैंने केवल बहुत ही सरल शब्दों को पुनर्प्राप्त किया जो वास्तव में तेज़ नहीं थे।

तो मुझे वास्तव में शब्दों को तेजी से ध्वनि देने के लिए एक नुकसान हुआ है। क्या यह पत्र अनुपात के लिए morphheme है? क्या यह वैकल्पिक स्वर-व्यंजन जोड़े की संख्या है?

आप इस समस्या को हल करने के लिए एक पाइथन प्रोग्राम तैयार करने के बारे में कैसे जाएंगे?

+0

हेहे, अच्छा सवाल है, लेकिन दुर्भाग्य से मैं कोई सुराग नहीं है कि यह कैसे जवाब देने के लिए :(मेरी केवल अवलोकन है कि है उन और इसी तरह के वाक्यों में 'ptkbdgw' और' th' अक्षरों का उच्च अनुपात होता है। लेकिन मुझे लगता है कि यह वाकई महत्वपूर्ण है कि उन्हें वाक्य पर कैसे वितरित किया जाता है .. –

+4

यहां अपना प्रश्न पूछने का प्रयास करने के बारे में क्या: http: // भाषाविज्ञान .stackexchange.com/यह स्टैक ओवरफ्लो के रूप में सक्रिय नहीं है लेकिन आपको वहां एक बेहतर उत्तर मिल सकता है। एक बार जब आप एल्गोरिदम प्राप्त कर लेते हैं, तो हम आपको पायथन कोड के साथ मदद कर सकते हैं :) –

+0

यह एक बहुत अच्छा सवाल है। जबकि मेरे पास निश्चित रूप से इसका जवाब नहीं है, मेरे सिर के ऊपर से मैं शायद मान लेता हूं कि अंत में अधिक अक्षरों वाला शब्द जल्दी से रैप करना आसान हो सकता है। हालांकि, ऐसा लगता है कि बुस्टा राइम्स प्रकाश की गति से कुछ भी रैप कर सकते हैं। जूलियन बोर्डन ने ऊपर बताया है कि एक अच्छा प्रारंभिक बिंदु इस के लिए भाषाविज्ञान में पहुंचाएगा। मैं इस पर अपनी नजर रखूंगा क्योंकि मैं जानना चाहता हूं। – SMT

उत्तर

7

यह अंधेरे में सिर्फ एक स्टैब है क्योंकि मैं भाषाई नहीं हूं (हालांकि, मैंने एक आवाज सिंथेसाइज़र लिखा है), यहां उपयोगी मीट्रिक phonemes की संख्या है जो प्रत्येक शब्द को बनाते हैं, क्योंकि फोनेम स्वयं उपयोग के बावजूद एक ही अनुमानित अवधि होने जा रहे हैं। International Phonetic Alphabet chart for english dialects है, साथ ही एक अच्छा phonology of English है।

एक अच्छा खुला स्रोत ध्वन्यात्मक शब्दकोश cmudict परियोजना जो 130k words के बारे में

है यहाँ एक को देखने के कार्यक्रम में एक बहुत जल्दी वार है से उपलब्ध है:

#!/usr/bin/python 

import re 

words={} 

for line in open("cmudict.0.7a",'ro').readlines(): 
    split_idx = line.find(' ') 
    words[line[0:split_idx]] = line[split_idx+1:-1] 

user_input = raw_input("Words: ") 

print 
for word in user_input.split(' '): 
    try: 
     print "%25s %s" % (word, words[word.upper()]) 
    except: 
     print "%25s %s" % (word, 'unable to find phonems for word') 

जब चलाने ..

Words: I support hip hop from the underground up 

        I AY1 
       support S AH0 P AO1 R T 
        hip HH IH1 P 
        hop HH AA1 P 
       from F R AH1 M 
        the DH AH0 
      underground AH1 N D ER0 G R AW2 N D 
        up AH1 P 

यदि आप इसके बारे में सुपर फैंसी पैंट प्राप्त करना चाहते हैं, तो हमेशा Python Natural Language Toolkit होता है जो कुछ हो सकता है आपके लिए उपयोगी tidbits।

साथ ही, कुछ असली दुनिया .. का उपयोग हालांकि निष्पक्ष होना करने के लिए, मैं 'स्टाइल' को 'स्टाइल' तय .. लेकिन बाएं 'कह' अज्ञात शब्दों की कमी प्रकट करने के लिए .. आप शायद एक देखने की कोशिश कर सकते apostrophe के लिए में जी subbing और फिर देखने से ड्रॉप NG स्वनिम द्वारा in' के साथ समाप्त शब्द ..

    Yes Y EH1 S 
        the DH AH0 
       rhythm R IH1 DH AH0 M 
        the DH AH0 
       rebel R EH1 B AH0 L 
       Without W IH0 TH AW1 T 
        a AH0 
       pause P AO1 Z 
        I'm AY1 M 
      lowering L OW1 ER0 IH0 NG 
        my M AY1 
       level L EH1 V AH0 L 
        The DH AH0 
       hard HH AA1 R D 
       rhymer R AY1 M ER0 
       where W EH1 R 
        you Y UW1 
       never N EH1 V ER0 
       been B IH1 N 
        I'm AY1 M 
        in IH0 N 
        You Y UW1 
       want W AA1 N T 
       styling S T AY1 L IH0 NG 
        you Y UW1 
       know N OW1 
       it's IH1 T S 
       time T AY1 M 
       again AH0 G EH1 N 
        D D IY1 
        the DH AH0 
       enemy EH1 N AH0 M IY0 
       tellin unable to find phonems for word 
        you Y UW1 
        to T UW1 
       hear HH IY1 R 
        it IH1 T 
       They DH EY1 
       praised P R EY1 Z D 
       etc... 

यह कुछ आप में कुछ समय लगाने पर योजना है के लिए, मैं मदद करने में रुचि रखते हो जाएगा । मुझे लगता है कि मेरे रेज़्यूमे पर 'वर्ल्ड फर्स्ट रैपिंग आईडीई' डालना उल्लसित होगा। और यदि कोई पहले से मौजूद है, तो दुनिया का पहला पायथन आधारित रैपिंग आईडीई। : पी

+2

या, दुनिया का * सबसे ताजा * रैपिंग आईडीई! आपकी मां को –

+1

int32_t। – synthesizerpatel

+0

शानदार! @ पेटेल, मैं इस पर काफी समय से काम करने जा रहा हूं, क्योंकि यह मेरी रूचि रखता है, इसलिए मैं किसी भी सहायता के लिए आपसे संपर्क करूंगा! – Parseltongue

2

मैं कहूंगा कि आपके द्वारा दिए गए उदाहरण या अन्य जिन्हें आप पसंद करते हैं और उन पर अपने सभी विचारों के लिए कुछ प्रकार के विश्लेषण करके इसे शुरू करना एक अच्छा विचार है: उदा। फोन अनुपात से फोनेम, आदि; जो भी उचित लगता है और आप गणना कर सकते हैं। अधिक नमूने बेहतर है। उम्मीद है कि यह आपको एक अच्छा विचार देगा कि आप कौन सी संपत्तियों और शब्दों को पहले से ही साझा करते हैं, जो आपको सही दिशा में ले जाना चाहिए।

अन्यथा, मेरे लेमेन का अनुमान यह है कि छोटे स्वर (स्पष्ट रूप से) और 'टी' जैसे हार्ड व्यंजन, कुछ 'पी', हार्ड 'जी, इत्यादि सबसे अच्छे होंगे - वे लाइनों को ध्वनि स्थिर और तेज आग बनाते हैं।

(कारण यह वास्तव में एक जवाब नहीं है एक टिप्पणी के रूप में इस छोड़ने के लिए चाहता था, लेकिन यह बहुत लंबा :)

संबंधित मुद्दे