Saltar ao contido

Inicio › UD3 › 3.4 Algoritmos3.4 Algoritmos3.4 Algorithmes3.4 الخوارزميات

3.4 · O razoamento: algoritmos e resolución de problemas

CA3.4Táboa de indicadores

Que aprenderás: que é un algoritmo, e cal é a diferenza —que é grande— entre un algoritmo que resolve un problema e un algoritmo que aprende un modelo a partir de datos.

Algoritmo. Secuencia finita de pasos, sen ambigüidade, que leva dun punto de partida a un resultado. Unha receita é un algoritmo; unhas instrucións de montaxe tamén.
Algoritmo de resolución de problemas. Alguén escribiu as regras. O programa aplícaas. Ordenar unha lista, calcular unha ruta, comprobar se un número é primo.
Algoritmo de aprendizaxe. Ninguén escribiu as regras. O programa saca as regras dos datos e constrúe un modelo. Recoñecer un xesto, distinguir spam, predicir unha nota.
Modelo. O resultado do adestramento: o conxunto de números que resume o aprendido e que despois se usa para decidir sobre casos novos.
Á esquerda, unha man escribindo unha lista numerada de pasos e unha máquina executándoos. Á dereita, moitos exemplos parecidos entrando nunha caixa da que sae unha única forma limpa.

En detalle

Toda a informática clásica funciona con algoritmos de resolución. Ti sabes o que hai que facer, escríbelo paso a paso e a máquina execútao millóns de veces sen cansar. Se o resultado está mal, é que a receita está mal: vas ao código e arránxalo.

A aprendizaxe automática cambia o sitio onde están as regras. Fíxate na diferenza co exemplo do micro:bit que vas usar en 3.5:

Se fose un algoritmo de resoluciónTi terías que escribir: «se a aceleración no eixe X supera 1,8 g durante menos de 0,3 segundos, entón é unha sacudida». Terías que atopar ti ese número e ese tempo, probando. E cando outra persoa sacuda o micro:bit dun xeito lixeiramente distinto, non funcionará.
Sendo un algoritmo de aprendizaxeTi non escribes ningún número. Gravas dez exemplos de «sacudir», dez de «xirar» e dez de «quieto», e o algoritmo busca só os patróns que os separan. O resultado —ese modelo— é un montón de números que ti nunca escribiches e que probablemente non saberías explicar un por un.

Esa é a troca de verdade: gañas en capacidade e perdes en transparencia. Un algoritmo de resolución sempre podes lelo. Un modelo aprendido, non; só podes medilo. E por iso a unidade remata medindo, non opinando.

Un apuntamento importante: o algoritmo de aprendizaxe tamén é un algoritmo de resolución. Alguén escribiu, paso a paso, como buscar eses patróns. O que non escribiu foi o resultado.

⚖E.3-3.4a · Dúas columnasTI

Clasifica cada tarefa en «escríbense as regras» ou «as regras saen dos datos», e engade nunha liña por que.

  1. Ordenar alfabeticamente a lista da clase.
  2. Decidir se unha foto ten un gato.
  3. Calcular a media das túas notas.
  4. Recoñecer a túa voz entre a de toda a familia.
  5. Buscar o camiño máis curto entre dúas paradas de bus.
  6. Predicir se vai chover mañá.
  7. Comprobar se un DNI está ben escrito.
  8. Suxerir o seguinte vídeo que che vai gustar.

Peche: hai algunha das oito que se poida facer das dúas maneiras? Cal escollerías ti e por que?

Criterio de logro: clasifica ben polo menos seis das oito e a razón que dá non é «é máis difícil», senón que fala de onde están as regras.
🌳E.3-3.4b · Volve á túa árboreTI

Recupera a árbore de decisión que fixeches en 3.3 e o caso raro que a rompía.

  1. A túa árbore, é un algoritmo de resolución ou de aprendizaxe? Por que?
  2. Cantas ramas novas farían falta para que o caso raro deixase de romperla? E cantas para os cinco casos raros seguintes?
  3. Se en vez de escribir as ramas ti, lle deses ao ordenador 200 exemplos xa clasificados e el buscase as preguntas só, que gañarías e que perderías?

Esa terceira pregunta é exactamente o que vas facer na tarefa do micro:bit. Non hai que respondela ben agora: hai que quedar coa pregunta.

Criterio de logro: identifica a súa árbore como algoritmo de resolución con argumento e nomea unha vantaxe e un inconveniente de deixar que as regras saian dos datos.

3.4 · El razonamiento: algoritmos y resolución de problemas

CA3.4Tabla de indicadores

Qué aprenderás: qué es un algoritmo y cuál es la diferencia —que es grande— entre un algoritmo que resuelve un problema y uno que aprende un modelo a partir de datos.

Algoritmo. Secuencia finita de pasos, sin ambigüedad, que lleva de un punto de partida a un resultado. Una receta es un algoritmo; unas instrucciones de montaje también.
Algoritmo de resolución de problemas. Alguien escribió las reglas. El programa las aplica. Ordenar una lista, calcular una ruta, comprobar si un número es primo.
Algoritmo de aprendizaje. Nadie escribió las reglas. El programa saca las reglas de los datos y construye un modelo. Reconocer un gesto, distinguir spam, predecir una nota.
Modelo. El resultado del entrenamiento: el conjunto de números que resume lo aprendido y que después se usa para decidir sobre casos nuevos.
A la izquierda, una mano escribiendo una lista numerada de pasos y una máquina ejecutándolos. A la derecha, muchos ejemplos parecidos entrando en una caja de la que sale una única forma limpia.

En detalle

Toda la informática clásica funciona con algoritmos de resolución. Tú sabes lo que hay que hacer, lo escribes paso a paso y la máquina lo ejecuta millones de veces sin cansarse. Si el resultado está mal, es que la receta está mal: vas al código y lo arreglas.

El aprendizaje automático cambia el sitio donde están las reglas. Fíjate en la diferencia con el ejemplo del micro:bit que vas a usar en 3.5:

Si fuera un algoritmo de resoluciónTú tendrías que escribir: «si la aceleración en el eje X supera 1,8 g durante menos de 0,3 segundos, entonces es una sacudida». Tendrías que encontrar tú ese número y ese tiempo, probando. Y cuando otra persona agite el micro:bit de una forma ligeramente distinta, no funcionará.
Siendo un algoritmo de aprendizajeTú no escribes ningún número. Grabas diez ejemplos de «agitar», diez de «girar» y diez de «quieto», y el algoritmo busca solo los patrones que los separan. El resultado —ese modelo— es un montón de números que tú nunca escribiste y que probablemente no sabrías explicar uno por uno.

Ese es el intercambio de verdad: ganas en capacidad y pierdes en transparencia. Un algoritmo de resolución siempre puedes leerlo. Un modelo aprendido, no; solo puedes medirlo. Y por eso la unidad termina midiendo, no opinando.

Un apunte importante: el algoritmo de aprendizaje también es un algoritmo de resolución. Alguien escribió, paso a paso, cómo buscar esos patrones. Lo que no escribió fue el resultado.

⚖E.3-3.4a · Dos columnasTI

Clasifica cada tarea en «se escriben las reglas» o «las reglas salen de los datos», y añade en una línea por qué.

  1. Ordenar alfabéticamente la lista de clase.
  2. Decidir si una foto tiene un gato.
  3. Calcular la media de tus notas.
  4. Reconocer tu voz entre la de toda la familia.
  5. Buscar el camino más corto entre dos paradas.
  6. Predecir si lloverá mañana.
  7. Comprobar si un DNI está bien escrito.
  8. Sugerir el siguiente vídeo que te va a gustar.

Cierre: ¿alguna de las ocho se puede hacer de las dos maneras? ¿Cuál elegirías y por qué?

Criterio de logro: clasifica bien al menos seis de ocho y la razón habla de dónde están las reglas, no de dificultad.
🌳E.3-3.4b · Vuelve a tu árbolTI

Recupera el árbol de 3.3 y el caso raro que lo rompía.

  1. ¿Tu árbol es un algoritmo de resolución o de aprendizaje? ¿Por qué?
  2. ¿Cuántas ramas nuevas harían falta para el caso raro? ¿Y para los cinco siguientes?
  3. Si en vez de escribir las ramas le dieras al ordenador 200 ejemplos ya clasificados y él buscara las preguntas solo, ¿qué ganarías y qué perderías?

Esa tercera pregunta es exactamente lo que vas a hacer con el micro:bit. No hay que responderla bien ahora: hay que quedarse con la pregunta.

Criterio de logro: identifica su árbol como algoritmo de resolución con argumento y nombra una ventaja y un inconveniente de que las reglas salgan de los datos.

3.4 · Le raisonnement : algorithmes et résolution de problèmes

CA3.4Tableau d'indicateurs

Ce que tu vas apprendre : ce qu'est un algorithme, et quelle est la différence — elle est grande — entre un algorithme qui résout un problème et un algorithme qui apprend un modèle à partir de données.

Algorithme. Suite finie d'étapes, sans ambiguïté, qui mène d'un point de départ à un résultat. Une recette est un algorithme ; une notice de montage aussi.
Algorithme de résolution de problèmes. Quelqu'un a écrit les règles. Le programme les applique. Trier une liste, calculer un itinéraire, vérifier si un nombre est premier.
Algorithme d'apprentissage. Personne n'a écrit les règles. Le programme tire les règles des données et construit un modèle. Reconnaître un geste, distinguer le spam, prédire une note.
Modèle. Le résultat de l'entraînement : l'ensemble de nombres qui résume ce qui a été appris et qui sert ensuite à décider sur des cas nouveaux.
À gauche, une main écrit une liste numérotée d'étapes et une machine les exécute. À droite, de nombreux exemples semblables entrent dans une boîte d'où sort une seule forme nette.

En détail

Toute l'informatique classique fonctionne avec des algorithmes de résolution. Tu sais ce qu'il faut faire, tu l'écris pas à pas et la machine l'exécute des millions de fois sans se fatiguer. Si le résultat est mauvais, c'est que la recette est mauvaise : tu vas au code et tu le corriges.

L'apprentissage automatique change l'endroit où se trouvent les règles. Regarde la différence avec l'exemple du micro:bit que tu vas utiliser en 3.5 :

Si c'était un algorithme de résolutionTu devrais écrire toi-même : « si l'accélération sur l'axe X dépasse 1,8 g pendant moins de 0,3 seconde, alors c'est une secousse ». Tu devrais trouver toi-même ce nombre et ce temps, en essayant. Et quand une autre personne secouera le micro:bit d'une façon légèrement différente, cela ne marchera pas.
Étant un algorithme d'apprentissageTu n'écris aucun nombre. Tu enregistres dix exemples de « secouer », dix de « tourner » et dix de « immobile », et l'algorithme cherche seul les motifs qui les séparent. Le résultat — ce modèle — est un tas de nombres que tu n'as jamais écrits et que tu ne saurais probablement pas expliquer un par un.

Voilà le vrai échange : tu gagnes en capacité et tu perds en transparence. Un algorithme de résolution, tu peux toujours le lire. Un modèle appris, non ; tu peux seulement le mesurer. Et c'est pour cela que l'unité se termine en mesurant, pas en donnant un avis.

Une remarque importante : l'algorithme d'apprentissage est lui aussi un algorithme de résolution. Quelqu'un a écrit, pas à pas, comment chercher ces motifs. Ce qu'il n'a pas écrit, c'est le résultat.

⚖E.3-3.4a · Deux colonnesTI

Classe chaque tâche en « on écrit les règles » ou « les règles sortent des données », et ajoute en une ligne pourquoi.

  1. Trier par ordre alphabétique la liste de la classe.
  2. Décider si une photo contient un chat.
  3. Calculer la moyenne de tes notes.
  4. Reconnaître ta voix parmi celles de toute la famille.
  5. Chercher le chemin le plus court entre deux arrêts de bus.
  6. Prédire s'il va pleuvoir demain.
  7. Vérifier si un numéro de pièce d'identité est bien écrit.
  8. Suggérer la vidéo suivante qui va te plaire.

Clôture : y en a-t-il une parmi les huit que l'on puisse faire des deux manières ? Laquelle choisirais-tu, toi, et pourquoi ?

Critère de réussite : classe correctement au moins six des huit et la raison qu'il donne n'est pas « c'est plus difficile », mais parle de l'endroit où se trouvent les règles.
🌳E.3-3.4b · Retour à ton arbreTI

Reprends l'arbre de décision que tu as fait en 3.3 et le cas rare qui le cassait.

  1. Ton arbre, est-il un algorithme de résolution ou d'apprentissage ? Pourquoi ?
  2. Combien de nouvelles branches faudrait-il pour que le cas rare cesse de le casser ? Et combien pour les cinq cas rares suivants ?
  3. Si, au lieu d'écrire les branches toi-même, tu donnais à l'ordinateur 200 exemples déjà classés et qu'il cherchait les questions tout seul, que gagnerais-tu et que perdrais-tu ?

Cette troisième question est exactement ce que tu vas faire dans la tâche du micro:bit. Il ne faut pas y répondre correctement maintenant : il faut garder la question.

Critère de réussite : identifie son arbre comme algorithme de résolution avec un argument et nomme un avantage et un inconvénient du fait de laisser les règles sortir des données.

3.4 · الاستدلال: الخوارزميات وحلّ المشكلات

CA3.4جدول المؤشرات

ما ستتعلّمه: ما الخوارزمية، وما الفرق — وهو كبير — بين خوارزمية تحلّ مشكلة وخوارزمية تتعلّم نموذجًا انطلاقًا من البيانات.

الخوارزمية. سلسلة منتهية من الخطوات، بلا لبس، تقود من نقطة بداية إلى نتيجة. الوصفة خوارزمية؛ وتعليمات التركيب كذلك.
خوارزمية حلّ المشكلات. كتب أحدهم القواعد. والبرنامج يطبّقها. ترتيب قائمة، حساب مسار، التحقّق من أن عددًا أوّليّ.
خوارزمية التعلّم. لم يكتب أحد القواعد. البرنامج يستخرج القواعد من البيانات ويبني نموذجًا. التعرّف على حركة، تمييز الرسائل المزعجة، التنبّؤ بدرجة.
النموذج. نتيجة التدريب: مجموعة الأرقام التي تلخّص ما تعلّمه، والتي تُستعمل بعد ذلك للبتّ في حالات جديدة.
إلى اليسار يد تكتب قائمة خطوات مرقّمة وآلة تنفّذها. وإلى اليمين أمثلة كثيرة متشابهة تدخل صندوقًا يخرج منه شكل واحد نظيف.

بالتفصيل

تعمل المعلوماتية الكلاسيكية كلها بـخوارزميات الحلّ. أنت تعرف ما ينبغي فعله، فتكتبه خطوة بخطوة، والآلة تنفّذه ملايين المرات دون تعب. وإن جاءت النتيجة خاطئة فالوصفة خاطئة: تذهب إلى الشيفرة وتصلحها.

التعلّم الآلي يغيّر الموضع الذي توجد فيه القواعد. انتبه إلى الفرق من خلال مثال micro:bit الذي ستستعمله في 3.5:

لو كانت خوارزمية حلّلكان عليك أنت أن تكتب: «إن تجاوز التسارع في المحور X مقدار 1,8 g لأقلّ من 0,3 ثانية، فهي إذن هزّة». وكان عليك أنت أن تجد ذلك الرقم وذلك الزمن بالتجريب. وحين يهزّ شخص آخر جهاز micro:bit بطريقة مختلفة قليلًا، لن تعمل.
لأنها خوارزمية تعلّمأنت لا تكتب أي رقم. تسجّل عشرة أمثلة لـ«الهزّ»، وعشرة لـ«الدوران»، وعشرة لـ«السكون»، وتبحث الخوارزمية وحدها عن الأنماط التي تفصل بينها. والنتيجة — ذلك النموذج — كَمٌّ من الأرقام لم تكتبها أنت قطّ وربما لا تعرف شرحها واحدًا واحدًا.

تلك هي المقايضة الحقيقية: تكسب في القدرة وتخسر في الشفافية. خوارزمية الحلّ تستطيع دائمًا قراءتها. أمّا النموذج المتعلَّم فلا؛ لا تستطيع إلا قياسه. ولهذا تنتهي الوحدة بالقياس لا بإبداء الرأي.

ملاحظة مهمّة: خوارزمية التعلّم هي أيضًا خوارزمية حلّ. فقد كتب أحدهم، خطوة بخطوة، كيف يبحث عن تلك الأنماط. لكنه لم يكتب النتيجة.

⚖E.3-3.4a · عمودانTI

صنّف كل مهمّة إلى «تُكتب القواعد» أو «القواعد تخرج من البيانات»، وأضف سطرًا يبرّر.

  1. ترتيب قائمة الصف ترتيبًا أبجديًا.
  2. تحديد ما إذا كانت صورة فيها قطّة.
  3. حساب معدّل درجاتك.
  4. تمييز صوتك بين أصوات العائلة كلّها.
  5. البحث عن أقصر طريق بين موقفَي حافلة.
  6. التنبّؤ بما إذا كانت السماء ستمطر غدًا.
  7. التحقّق من أن رقم الهوية مكتوب كتابة صحيحة.
  8. اقتراح الفيديو التالي الذي سيعجبك.

الخاتمة: هل من بين المهامّ الثماني مهمّة يمكن إنجازها بـالطريقتين؟ أيّهما تختار أنت ولماذا؟

معيار الإنجاز: يصنّف تصنيفًا صحيحًا ستًّا من الثماني على الأقل ولا يكون السبب الذي يقدّمه «لأنها أصعب»، بل يتحدّث عن الموضع الذي توجد فيه القواعد.
🌳E.3-3.4b · عُد إلى شجرتكTI

استعد شجرة القرار التي صنعتها في 3.3 والحالة النادرة التي كانت تكسرها.

  1. شجرتك: هل هي خوارزمية حلّ أم خوارزمية تعلّم؟ ولماذا؟
  2. كم فرعًا جديدًا يلزم حتى تكفّ الحالة النادرة عن كسرها؟ وكم يلزم للحالات النادرة الخمس التالية؟
  3. لو أنك، بدل أن تكتب الفروع بنفسك، أعطيت الحاسوب 200 مثال مصنَّف مسبقًا وبحث هو عن الأسئلة وحده، فماذا تكسب وماذا تخسر؟

هذا السؤال الثالث هو بالضبط ما ستفعله في مهمّة micro:bit. لا يلزم الإجابة عنه إجابة صحيحة الآن: يلزم الاحتفاظ بالسؤال.

معيار الإنجاز: يحدّد شجرته كخوارزمية حلّ مع تقديم حجّة ويذكر ميزة وعيبًا لترك القواعد تخرج من البيانات.
← Anterior← Anterior← Précédentالسابق →
3.3 · Representación3.3 · Representación3.3 · Représentation3.3 · التمثيل
Seguinte →Siguiente →Suivant →← التالي
3.5 · Datos, modelos e resultados3.5 · Datos y modelos3.5 · Données et modèles3.5 · البيانات والنماذج