Adverb och Adjektiv i NP

2015-04-07

En nästan men inte helt färdig lösning rörande vad diskuterat av och till här säg sista månaden är klart och stannar som klar tillsvidare. Vad den saknar som bör till senare är:


  • Hantering av polarity dimensioner KNOWN och UNKNOWN också från determiner och diverse annan information ej hanterad nu.
  • Ej "dum-viktning" av resp. koncept identifierad bland NN-delarna av frasen. Diskuteras längre ned.

Test meningen är (med part of speech med) är (ett ej hanterat ord p.g.a. POS-taggningen borttaget manuellt: Test meningar med bara för NP-fraserna den här längden såväl som "konstiga" kombinationerna ger av och till parsning ej meningsfull att hantera i lager högre upp som här därför att de för riktig text aldrig förekommer):


'phrase_pos' => 'DT RB JJ JJ NNP NNP',
'phrase_true_old' => 'the very cool extremly Winston Churchill'

Manuellt skrivet tillsammans: 'the/DT very/RB cool/JJ extremly/JJ Winston/NNP Churchill/NNP'

Med borttaget ord:

'phrase_pos' => 'DT RB JJ CC JJ NNP NNP',
'phrase_true_old' => 'the very cool less extremly Winston Churchill'

Varje möjligt ngram som också är ett koncept

Innan hanteringen av adverb och adjektiv för påverkan emotionell intensitet och polaritet för NN-delarna betraktas kan en del av minnes-dumpen för named entities i generell koncept-mening för varje möjlighet i frasen betraktas för jämförelse rörande vikterna. Detektionen av sådana koncept görs glidande över frasen och ngram med fler ord än tre detekteras tillsvidare inte. En "korrigering" för kontroll av första och sista ordet i frasen (ex. the horse från the cool black horse) lades nyligen till.



'ngram' => {
 'the' => {
     'CONCEPT_AS_GIVEN' => 'the',
     'CONCEPT_BASE' => 'the',
     'ME' => {
   '3' => 1
   },
     'TYPES' => {
    'type_marker_tmp' => {
        'DET' => 1
      },
    'type_marker' => {
      'SMALL_ONESELF_MEANING' => 1,
      'NGRAM' => 1
       }
    },
     '_NGRAM_STOP' => 1,
     'NOT_ME' => {
     '8' => 1,
     '6' => 1,
     '4' => 1,
     '7' => 1,
     '9' => 1,
     '5' => 1
     },
     'VALENCE_HH' => {
    'BLI' => '0.002973483730976',
    'WP' => '4.84713464804905e-05',
    'HH' => 0,
    'WE' => '0.0191927167310695',
    'EMI' => 0,
    'IDF' => '2.18494743528912'
    },
     'POS' => 'DT'
   },
 'winston churchill' => {
     'ME' => {
     '8' => 1,
     '9' => 1
      },
     'CONCEPT_AS_GIVEN' => 'Winston churchill',
     'CONCEPT_BASE' => 'winston churchill',
     'TYPES' => {
      'type_marker_tmp' => {
        'NOUN' => 1
        },
      'type_marker' => {
         'NOUN' => 1,
         'ADJ_DESC' => {
           'winston churchill' => {
            'WE' => '9.41410269104761e-05',
            'EMI' => '7.88779688846691e-05'
             }
           },
         'NGRAM' => 1
         }
       },
     'NOT_ME' => {
       '6' => 1,
       '4' => 1,
       '3' => 1,
       '7' => 1,
       '5' => 1
     },
     'VALENCE_HH' => {
      'BLI' => '0.00742533128386961',
      'WP' => '1.5034531069852e-07',
      'HH' => '8.751750971893e-09',
      'WE' => '9.41410269104761e-05',
      'EMI' => '7.88779688846691e-05',
      'IDF' => '16.1534531706533'
       },
     'POS' => 'NNP NNP'
     },
 'very' => {
    'ME' => {
    '4' => 1
     },
    'CONCEPT_AS_GIVEN' => 'very',
    'CONCEPT_BASE' => 'very',
    'TYPES' => {
     'type_marker_tmp' => {
       'ADVERB' => 1,
       'ADVERB__INTENSIFIER' => 1,
       'ADVERB__INTENSIFIER_UP' => 1
       },
     'type_marker' => {
     'ADVERB' => 1,
     'ADVERB__INTENSIFIER' => 1,
     'ADVERB__INTENSIFIER_UP' => 1,
     'ADJ_DESC' => {
       'very' => {
          'WE' => '0.508625270632673',
          'EMI' => '0.536390369778984'
          }
       },
     'NGRAM' => 1
     }
     },
    'NOT_ME' => {
   '8' => 1,
   '6' => 1,
   '3' => 1,
   '7' => 1,
   '9' => 1,
   '5' => 1
    },
    'VALENCE_HH' => {
     'BLI' => '0.0605634639161009',
     'WP' => '0.00206387302012249',
     'HH' => '0.536390369778984',
     'WE' => '0.508625270632673',
     'EMI' => '0.536390369778984',
     'IDF' => '4.2379447383781'
   },
    'POS' => 'RB'
    },
 'less' => {
    'ME' => {
    '6' => 1
     },
    'CONCEPT_AS_GIVEN' => 'less',
    'CONCEPT_BASE' => 'less',
    'TYPES' => {
     'type_marker_tmp' => {
       'ADVERB__MANNER' => 1,
       'PP' => 1,
       'DET' => 1
       },
     'type_marker' => {
     'PP' => 1,
     'SMALL_ONESELF_MEANING' => 1,
     'NGRAM' => 1
     }
     },
    'NOT_ME' => {
   '8' => 1,
   '4' => 1,
   '3' => 1,
   '7' => 1,
   '9' => 1,
   '5' => 1
    },
    'VALENCE_HH' => {
     'BLI' => '1.64203321501955e-05',
     'WP' => '3.95138316579442e-10',
     'HH' => '0.449313992677461',
     'WE' => '3.40993862350838e-07',
     'EMI' => '0.449313992677461',
     'IDF' => '16.6299837527714'
   },
    'POS' => 'CC'
    },
 'extremly' => {
   'VALENCE_HH' => {}
   },
 'churchill' => {
    'ME' => {
    '9' => 1
     },
    'CONCEPT_AS_GIVEN' => 'Churchill',
    'CONCEPT_BASE' => 'churchill',
    'TYPES' => {
     'type_marker_tmp' => {
       'NOUN' => 1
       },
     'type_marker' => {
        'NOUN' => 1,
        'ADJ_DESC' => {
       'churchill' => {
          'WE' => '0.00248742449395854',
          'EMI' => '0.000201714111080674'
           }
       },
        'NGRAM' => 1
        }
   },
    'NOT_ME' => {
      '8' => 1,
      '6' => 1,
      '4' => 1,
      '3' => 1,
      '7' => 1,
      '5' => 1
    },
    'VALENCE_HH' => {
     'BLI' => '0.00132495202850299',
     'WP' => '5.12314697575614e-06',
     'HH' => '0.000201714111080674',
     'WE' => '0.00248742449395854',
     'EMI' => '0.000201714111080674',
     'IDF' => '11.3813757695686'
      },
    'POS' => 'NNP'
    },
 'cool' => {
    'ME' => {
    '5' => 1
     },
    'CONCEPT_AS_GIVEN' => 'cool',
    'CONCEPT_BASE' => 'cool',
    'TYPES' => {
     'type_marker_tmp' => {
       'ADJECTIVE' => 1
       },
     'type_marker' => {
     'ADJECTIVE' => 1,
     'ADJ_DESC' => {
       'cool' => {
          'WE' => '0.0559318832441363',
          'EMI' => '0.845253554650459'
          }
       },
     'NGRAM' => 1
     }
     },
    'NOT_ME' => {
   '8' => 1,
   '6' => 1,
   '4' => 1,
   '3' => 1,
   '7' => 1,
   '9' => 1
    },
    'VALENCE_HH' => {
     'BLI' => '0.0150655364825916',
     'WP' => '0.000160628421289225',
     'HH' => '0.845253554650459',
     'WE' => '0.0559318832441363',
     'EMI' => '0.845253554650459',
     'IDF' => '6.6827273018918'
   },
    'POS' => 'JJ'
    },
 'winston' => {
    'ME' => {
     '8' => 1
     },
    'CONCEPT_AS_GIVEN' => 'Winston',
    'CONCEPT_BASE' => 'winston',
    'TYPES' => {
   'type_marker_tmp' => {
       'NOUN' => 1
        },
   'type_marker' => {
        'NOUN' => 1,
        'human_name' => 1,
        'ADJ_DESC' => {
       'winston' => {
           'WE' => '8.82010608683303e-05',
           'EMI' => '0.000177654641714373'
         }
        },
        'NGRAM' => 1
      }
   },
    'NOT_ME' => {
    '6' => 1,
    '4' => 1,
    '3' => 1,
    '7' => 1,
    '9' => 1,
    '5' => 1
    },
    'VALENCE_HH' => {
      'BLI' => '0.00132791134473617',
      'WP' => '1.40237814713836e-07',
      'HH' => '0.000177654641714373',
      'WE' => '8.82010608683303e-05',
      'EMI' => '0.000177654641714373',
      'IDF' => '12.7993113820127'
      },
    'POS' => 'NNP'
     }
 },
  'phrase' => 'the very cool less extremly winston churchill',
  'phrase_pos' => 'DT RB JJ CC JJ NNP NNP',
  'phrase_true_old' => 'the very cool less extremly Winston Churchill'
}


Adverb delarna

Adverb delarna detekteras och beräknas först. Om adjektiv följer direkt och är "naturligt" utvärderande avseende NN-delarna sätts adverb-delarna som verkande på dessa därför att det så vitt jag sett alltid är korrekt. P.s.s. senare om adjektiv har motsvarande egenskaper antas det verka avseende NN-delarna oavsett vad mer allmän preferens grammatik (som testkört lite olika andra parsers än mina tenderar att visa) därför att avseende detta är det regelmässigt korrekt när adjektiv följs av något mer property-indikerande (och om ej så ofta nog även om en viss liten extra kontroll görs).



'1' => {
     'WORD' => 'very',
     'BASE' => 'very',
     'W' => {
        'we' => '7.62195954462639',
        'we_nidf' => '1.87038423273255',
        'idf' => '0.351918445398088',
        'emi' => '0.536390369778984',
        'wp' => '0.44134228929289',
        'w_spread' => '0.129223128311843',
        'wc_1' => '0.188765665059126',
        'wc_2' => '1.21216152125221',
        'wc_3' => '1.40092718631134'
        },
     'SUB_PH' => {
           '1' => 1
           },
     'WORD_TARGET' => {
              'S_TYPE' => 'ADVMOD',
              'S_TARGET' => 2
            },
     'TYPES' => {
          'RB' => 1,
          'UP' => 1,
          'ADJECTIVE__OVER_STATEMENT' => 2,
          'JJ_RB' => 1,
          'JJ' => 1,
          'INTENSIFIER' => 2
          },
     'POS' => 'RB',
     'POS_LONG' => 'RB'
   },

Och adjektiv

Men nu att ev. adverb verkande på dem värderas in. Först resp. adjektiv utan pay-load från adverb:



$VAR3 = 'I';
$VAR4 = {
'4' => {
     'WORD' => 'extremly',
     'BASE' => 'extreme',
     'W' => {
        'we' => '2.88671852159224',
        'we_nidf' => '0.288570571860342',
        'idf' => '0.412774883806266',
        'emi' => '0.500394158940241',
        'wp' => '0.0436629985203084',
        'w_spread' => '0.0135792191974688',
        'wc_1' => '0.206550140813892',
        'wc_2' => '0.169455887590782',
        'wc_3' => '0.376006028404674'
        },
     'SUB_PH' => {
           '4' => 1
           },
     'WORD_TARGET' => {
              'S_TYPE' => 'AMOD',
              'S_TARGET' => 6
            },
     'TYPES' => {
          'UP' => 1,
          'ADJECTIVE__OVER_STATEMENT' => 1,
          'ADJECTIVE__PROPERTY_QUALITY' => 1
          },
     'POS' => 'JJ',
     'POS_LONG' => 'JJ'
   },


'2' => {
     'WORD' => 'cool',
     'BASE' => 'cool',
     'W' => {
        'we' => '2.44494729059667',
        'we_nidf' => '0.229545456026173',
        'idf' => '0.439066836519084',
        'emi' => '0.845253554650459',
        'wp' => '0.0343490682256616',
        'w_spread' => '0.0336672412914001',
        'wc_1' => '0.371122804296888',
        'wc_2' => '0.128759658811431',
        'wc_3' => '0.499882463108318'
        },
     'TYPES' => {
          'ADJECTIVE__EVALUATIVE_QUALITY' => 2,
          'JJ' => 1,
          'DOWN' => 1,
          'POSITIV' => 1
          },
     'WORD_TARGET' => {
              'S_TYPE' => 'DOBJ',
              'S_TARGET' => -1
            },
     'POS_LONG' => 'JJ',
     'POS' => 'JJ'
   }

Därefter dels resp. värderad med ev. adverb-pay-load samt vidare mellan-stegs-värden för adverb-subfras. Rörande polarity har genomgående använt engelska på allt förutom just "positiv" och "negativ" sedan år och fortsätter så.



$VAR5 = 'SUB_PH';
$VAR6 = {
'4' => {
     'W_JJ' => {
           'W_JJ' => '0.206550140813892',
           'W' => '0.206550140813892',
           'W_EMI' => '0.500394158940241'
         },
     'POLARITY_I' => 'UP',
     'MEMBERS' => {
            '4' => 'extremly'
          }
   },
'1' => {
     'TARGET' => {
           'S_TARGET' => 2
           },
     'POLARITY_I' => 'UP',
     'W_ADVERB' => {
             'I_ATYPE' => 'MONOLITHLY',
             'W' => '0.188765665059126',
             'W_2' => '0.536390369778984'
           },
     'MEMBERS' => {
            '1' => 'very'
          }
   },
'2' => {
     'W_JJ' => {
           'W_JJ' => '0.371122804296888',
           'I_ATYPE' => 'RB_UP',
           'W' => '0.455248839574356',
           'W_EMI' => '0.845253554650459',
           'W_EMI_BOTH' => '0.939636387180022',
           'q_emi' => '0.223324307860718',
           'q_e3' => '0.45335955809479'
         },
     'POLARITY_E' => 'POSITIV',
     'MEMBERS' => {
            '2' => 'cool'
          }
   }
    };

Effekt NN

Här ser vi "dum-viktning" av resp. ngram möjligt avseende Winston Churchill. Just Winston Churchill och mycket liknande kan man göra det enkelt för sig medan när det bl.a. gäller ämnesområden är det lämpligt att låta resp. detekterat att få vara med viktat därför att vi kan vetskap bland vissa ngram gynnsamt att värdera in medan få har nära nog ingenting för typiskt ett längre mer exakt ngram. Tillsvidare därför att jag inte har bestämt på någon generell lösning för detta (där jag på ungefär den "logik-nivå" vi är på här vill ha snabb och vettigt fungerande lösning vilket bl.a. gör en del lösningar för detta jag har ej användbara varande för långsamma). Vad som tillfälligt används är IDF vilket man kan förstå som jämförbar med Inverse document frequency (men ej tf-idf) även om den inte utnyttjar riktigt samma typ av data (snarare mer jämförbar med contextual diversity) eller riktigt samma formel.



$VAR7 = 'NN';
$VAR8 = {
'STR' => 'Winston Churchill',
'N_MEM' => 3,
'W' => {
     'UP' => {
         'emi' => '0.500394158940241'
         },
     'INTENSITY' => '1.34579259811542',
     'POSITIV' => {
            'emi' => '0.845253554650459'
          }
   },
'MEMBERS_ALL_POSSIBLE' => {
              'Winston Churchill' => 1,
              'Winston' => 1,
              'Churchill' => 1
            },
'MEMBERS' => {
       'the' => {
            'idf' => '2.18494743528912',
            'emi' => 0
            },
       'Winston Churchill' => {
                    'idf' => '16.1534531706533',
                    'emi' => '7.88779688846691e-05'
                  },
       'Winston' => {
              'idf' => '12.7993113820127',
              'emi' => '0.000177654641714373'
              },
       'Churchill' => {
                'idf' => '11.3813757695686',
                'emi' => '0.000201714111080674'
              }
       }
    };

Efternamn Churchill högre i ex. emotionell intensitet (emi ovan) än Winston är förövrigt indikation om att värdet med färre förväntade problem kan värderas tillsammans med Winston Churchill (men används ej ovan).


Upp - Upp eller Ner - Upp?

Hur vi nu värderar adverb när verkande på ett adjektiv har jag sett en del varianter av publicerande. Typiskt för dessa var att man utgick från mycket sämre effekt-vikter från första början (ex. hand-skattade enkla heltal eller liknande, eller i något fall viktsystem jag väl känner igen och som jämförliga på en lägre komplexitets nivå än var mina viktsystem befinner sig i det här steget). Jag prövade en del varianter i försök att få några stycken som såg rimliga ut och försökte därefter jämföra dem med kända samband för komplexitet för kombinationer av adjektiv-noun. Jämförelse komplexitet kom jag fram till inte gav någon tillförlitligt alls (huvudsakligen eller helt relaterat hur jag omvandlade det till något användbart här tror jag).


Algoritmen jag slutligen valde upplever jag känns mer tung att minnas än jag hade trott här. Så tillsvidare kanske vi får nöja oss med att mitt minne inte vill komma ihåg den fast jag trott att jag skulle så. Vi kan i alla fall i väntan på eventuell komplettering peka på att effekten av very från:



'1' => {
     'TARGET' => {
     'S_TARGET' => 2
     },
     'POLARITY_I' => 'UP',
     'W_ADVERB' => {
       'I_ATYPE' => 'MONOLITHLY',
       'W' => '0.188765665059126',
       'W_2' => '0.536390369778984'
     },
     'MEMBERS' => {
      '1' => 'very'
    }
   },

Viktas in via q_emi i två fall (förstärkande eller reducerande) och q_e3 nedan:



'2' => {
     'W_JJ' => {
           'W_JJ' => '0.371122804296888',
           'I_ATYPE' => 'RB_UP',
           'W' => '0.455248839574356',
           'W_EMI' => '0.845253554650459',
           'W_EMI_BOTH' => '0.939636387180022',
           'q_emi' => '0.223324307860718',
           'q_e3' => '0.45335955809479'
         },

Slutligen rörande polarity effekt av adjektiv mot NN-delarna om positiv eller negativ finns för adjektiv sätts ej ev. polarity för Up och Down. Detta för att underlätta sam-hanterande av resp. adjektiv. Om ett adjektiv indikerar intensitets-förstärkning via Up och efterföljande har ex. Positiv satt kan detta ibland hanteras som att föregående förstärker efterföljande istället för att verka på NN-delarna direkt men det är ingenting vi vill göra om Positiv eller Negativ är satt. Det går att göra via andra metoder men kanske ingen annan bra metod som ej fodrar hänsyn till ett större kontext vilket jag helt vill undvika här (ingenting större än motsvarande en mening d.v.s. en titel).