En tant qu'étude de l'apprentissage automatique, je lis "* Apprendre des bases: manuel d'intelligence artificielle *".
La particularité de ce livre est que le problème de fin de chapitre contient un simple programme de Python
.
ELIZA.rb
LIMIT = 20
CYCLE = 5
count = 0
endcount = 0
puts('Dr>Je suis docteur, je te parle')
while endcount < LIMIT
print('tu>')
inputline = gets.chomp.encode("UTF-8", "CP932", :invalid => :replace)
if count >= CYCLE
puts 'Dr>' << inputline << ',? .. ..'
count = 0
elsif inputline.include?('prof')
puts 'Dr>Parlons de toi, pas de moi'
elsif inputline.include?('mère')
puts 'Dr>Parle de ta maman'
elsif inputline.include?('père')
puts 'Dr>Parle de ton père'
elsif inputline.include?('opinion')
puts 'Dr>Voulez-vous entendre mon avis?'
elsif inputline.include?('Je suis inquiet')
puts 'Dr>' << inputline.sub(/Je suis inquiet/, 'Êtes-vous inquiet?')
else
puts 'Dr>Continuez s'il vous plaît'
end
count += 1
endcount += 1
end
puts('Dr>Finissons-le maintenant. Merci pour votre soutien.')
C'est un problème de création d'une version simplifiée d'ELIZA.
CP932.rb
inputline = gets.chomp.encode("UTF-8", "CP932", :invalid => :replace)
Dans le cas de Windows10
, le processus de conversion du code de caractère est requis.
ʻAtCoder` est frais car il n'y a pas de tel traitement.
Cependant, il est nécessaire de sélectionner l'ancienne console pour traiter le bogue dans l'invite de commande.
Recommended Posts