Utilisez Mecab de Python pour générer des «phrases similaires» à partir de diverses données d'enseignants
Utilisez MeCab de Python 3 https://qiita.com/taroc/items/b9afd914432da08dafc8
J'ai essayé de générer automatiquement des phrases de type XX en utilisant la chaîne de Markov https://www.pc-koubou.jp/magazine/4238
J'ai essayé de générer automatiquement un article de blog en utilisant la chaîne de Markov https://karaage.hatenadiary.jp/entry/2016/01/27/073000
main.py
file = 'Données des enseignants/Kenshi YONEZU.txt'
roopCnt = 5
size = 2
learnText.createText(file, roopCnt, size)
learnText.py
def load_from_file(files_pattern):
'''
Lit les fichiers qui correspondent au modèle de fichier spécifié, les fusionne, les prépare pour l'analyse, puis les renvoie.
'''
#Lire le texte
text = ""
for path in iglob(files_pattern):
with open(path, 'r') as f:
text += f.read().strip()
#Supprimer certains symboles
unwanted_chars = ['\r', '\u3000', '-', '|']
for uc in unwanted_chars:
text = text.replace(uc, '')
#Suppression de la notation de la bibliothèque du ciel bleu
unwanted_patterns = [re.compile(r'《.*》'), re.compile(r'[#.*]')]
for up in unwanted_patterns:
text = re.sub(up, '', text)
return text
def split_for_markovify(text):
'''
Divisez le texte en phrases avec des pauses et divisez les phrases en mots avec des espaces
'''
#Utilisez mecab pour séparer les mots
mecab = MeCab.Tagger()
splitted_text = ""
#Ces caractères peuvent casser le markovify
# https://github.com/jsvine/markovify/issues/84
breaking_chars = [
'(',
')',
'[',
']',
'"',
"'",
]
#Divisez le texte entier en phrases avec des pauses et divisez la phrase en mots avec des espaces
for line in text.split():
mp = mecab.parseToNode(line)
while mp:
try:
if mp.surface not in breaking_chars:
splitted_text += mp.surface #Ignorer si le nœud est markovify
if mp.surface != '。' and mp.surface != '、':
splitted_text += ' ' #Diviser les mots avec des espaces
if mp.surface == '。':
splitted_text += '\n' #Réexpression par saut de ligne
except UnicodeDecodeError as e:
print(line)
finally:
mp = mp.next
return splitted_text
def createText(file, roopCnt, size = 3):
'''
Générez automatiquement des documents à partir des données des enseignants
Parameters
----------
String : file
Chemin des données de l'enseignant
String : roopCnt
Nombre de générations
String : size
Combien de mots bloquent
Returns
-------
List
Liste des documents générés
'''
#Lecture de texte de l'enseignant
rampo_text = load_from_file(file)
#Divisez le texte dans un format apprenable
splitted_text = split_for_markovify(rampo_text)
#Apprenez le modèle à partir du texte.
text_model = markovify.NewlineText(splitted_text, state_size = size)
textList = []
while len(textList) < roopCnt:
time.sleep(5)
#Générer à partir du modèle
sentence = text_model.make_sentence()
if(len(sentence) <= 50):
text = ''.join(sentence.split())
textList.append(text)
print(text)
continue
while len(sentence) >= 50 :
index = sentence.find(' ', 50)
sliceText = sentence[:index]
text = ''.join(sliceText.split())
sentence = sentence[index:]
print(text)
textList.append(text)
Remplissez le trou du quatrième mur et récupérez la pierre noire. Après de nombreuses répétitions, je n'ai jamais été satisfait. Je suis un homme qui est peu susceptible de ramper dans la frontière absolue, alors soyez-en conscient tout de suite. "Quelle est l'âme Yamato, ou je n'ai pas avoué. En fonction de la réponse, je ne la jetterai pas.
En tant que condition, il est facile de tuer Utsumi et de tuer l'infirmière Moroi ou de suivre l'infirmière Moroi. Quand il est apparu dans le hall, il avait un bol à thé cassé. De cette façon, le meurtre de Chigusa était facilement terminé, et les criminels frappaient tous les deux la balle pour parier tous les jours et dormaient tous les jours. N'y a-t-il pas un exercice? »Le fait que le Dr Giant connaissait également le lecteur Avant que j'aie fini de m'essuyer le visage, la voix claire et pulpeuse de la femme n'était consciente que du jeu de grande envergure suivant. Quand la réponse est sortie, la femme de chambre est venue après moi, et quand je suis revenue, je pouvais la voir ici.
C'est un 1LDK avec un verrouillage automatique pour la tranquillité d'esprit. Il y a aussi une école primaire pour les gourmands. A 5 minutes à pied de Sakae, un poêle à deux bouches idéal pour les gourmands ♪ L'appartement est à côté du parc, Populaire Nishiki 1 à distance de marche du joli poêle à deux bouches et de Sakae à proximité 1LDK à l'étage inférieur.
Il y a deux installations scolaires, un interphone TV et le réchauffage. C'est une ville avec un cadre de vie. Appartement Internet gratuit! C'est une propriété unique en son genre pour ceux qui ont beaucoup de types de cuisines système et qui ont une cuisine de comptoir de haute qualité et qui déplacent la ligne Sakuradori seule.
Même au loin, je dois me souvenir de ce qui s'est passé la prochaine fois Je suis toujours triste et je me souviens de la destination de la recherche de la jalousie. Tous ceux qui sont pleins d'erreurs s'y sont habitués, y a-t-il deux personnes? Non, non, je suis désolé pour quelque temps 4. Je vous remercie pour chaque appel, alors ne dormez même pas un peu. C'est pourquoi je n'irai pas à des dizaines de milliers! Le seul produit qui soit silencieux pour le corps est doux mais clair dans le sens que je veux vous parler Dites-nous que vous ne devriez pas penser que nous le ferons même si vous l'avez gardé
Si vous pouvez rester fort, ne laissez pas la rumeur que vous ne manquez pas Je n'ai pas besoin d'être formé car mes ongles sont tellement brûlés que je peux le vérifier moi-même Je ne le regrette pas et je n'ai plus besoin de toi Fixons la date à laquelle tu coules. Tu pleurais, tu restais sauvage et en larmes Je suis un étudiant transféré, on me propose toujours une porte Push!Yeah!Crush!Yeah!Weve got you come true Every time I gotta go Des paysages qui se mélangent, j'ai peur, mais j'ai toujours envie de revenir en arrière
De plus, les joues de l'autre cœur blanc et doux de Mashimaro «Rien n’avale un rêve, c’est une ombre qui saigne en bleu. Broyez ce que vous n'avez pas choisi et montrez vos écouteurs L'amour est toujours votre diplôme d'études secondaires Bien sûr, au moins, ferme ton amour-Lock-on "J'ai l'impression d'être ici maintenant Je ne pense pas que ce soit un enfant séduisant, mais quelque part en dessous, c'est ridicule. Je vais y réfléchir, je vais refroidir mon corps et aller heureux, donc au pire ça ira mieux
Ce n'est pas comme ça avant que tout le monde ne puisse arrêter les filles juste Je ne sais pas qui, mais je vais certainement le protéger, donc je vais me connecter, je peux enfin vous rencontrer. Merci pour votre travail acharné maintenant! nana c'est un adieu, je me sens toujours agité Je ne sais pas comment je déteste ça de toute façonJe ne sais pas quand j'aime çaJe ne t'entends pas rire Même si je ne pouvais pas le rencontrer, l'enfant était debout
Bleach | Art et chant http://ort.yh.land.to/bleach/chantp.html Je l'ai essayé, mais de nombreux mots n'étaient pas enregistrés dans le dictionnaire et une erreur de génération a été générée. Est-il difficile de faire des bandes dessinées avec des mots fréquemment inventés dans les séries SF?