Pour Chlouchloutte (à transférer à Catherine)
Un tutoriel sur Bluemix. Pour toi Animal.
La différence entre le machine-learning, le deep-learning et le deep-mind est là.
Le machine learning repose sur le fait qu'un humain tri les données pour que la machine apprenne. Le deep learning suppose que la machine trie tout elle-même mais que l'humain spécialise ses algorithmes (j'ai entendu parlé de "spécialisation du contexte"), le deep-mind consiste à laisser la machine se débrouiller pour tout comprendre de A à Z.
Là, plus aucune intervention humain, l'autonomie est totale, les données ne sont ni triées, ni spécialisées ; aucun algorithme particulier n'est implémenté, cela ressemble à de l'apprentissage qu'un enfant ferait, à ceci près qu'il ne prend plus que quelques heures... (d'où les références au QI d'une IA).
À tout ceux qui ne veulent pas entendre parler du problème de l'IA dans une économie capitalistique : comment les marchés financiers vont-ils vous mettre en concurrence avec l'IA qui ne dort pas, n'est jamais malade, est toujours consciencieuse dans son travail, n'est jamais agressive, n'est jamais triste, n'est jamais démotivée et surtout est capable d'apprendre en quelques heures / jours des techniques et des compétences qui requièrent des années d'apprentissage et une rigueur incroyable pour les humains les plus brillants ?
La réponse est simple l'humain va être mis en concurrence et va perdre. Celui qui détiendra l'IA, détiendra le pouvoir et actuellement l'IA sera détenue par des propriétaires lucratifs, c'est-à-dire les individus les plus riches du monde capable de financer sa conception soit d'en acheter / louer une instance.
Mettez en parallèle l'évolution de la robotique et vous obtiendrez la meilleure force de travail du monde en terme de qualité mais aussi en terme de coûts. Mais rassurons-nous, depuis quelque temps la France s'est mise "En Marche"...
Ce n'est pas mon style de dire cela mais ces mots exprimerons mieux que tout mon sentiment : que Dieu nous garde.
Pour toi Lenny.
A practical demonstration of how to apply the Single Responsibility Principle
Pour toi Lenny
Tout est dans le titre. Je ris tellement à cette annonce. En effet, les consommateurs des produits Apple sont leurs propres bourreaux. Je ne comprends pas que l'on puisse cautionner ce genre de comportement. Pour moi payer c'est voter et les clients d'Apple votent pour la surveillance de masse, ils votent pour l'exploitation humaine, ils votent la réduction de leurs droits face aux corporations...
En d'autres mots, ces gens choisissent la construction d'un monde merdique qui soit systématiquement plus merdique que l'état précédent ; ils optent sciemment, par aveuglement idéologique, à cause du phénomène d'escalade de l'engagement ou tout autre dérive psychologique, cette dégringolade vers une situation où les individus qui ne possèdent pas des millions ne sont plus rien.
Bravo les mecs, encore un petit effort et seule la mort nous délivra. #Bisous
Comment mixer AureliaJS et ThreeJS dans un même projet. Pour toi Lenny, je sais que tu vas en avoir besoin.
Explication : l'idée est de voir combien de temps prendraient les différents traitements en proportion si 1 cycle CPU prenait 1 sec à la place de 0.3 ns.
Je traduis (en partie) ci-dessous :
| | TYPE D'ACCÈS | TEMPS CPU | ÉQUIVALENT TEMPS HUMAIN
|----------------|--------------------------------|------------------------------------
| | 1 cycle CPU | 0,3 ns | 1 sec
| Dans le | Accès cache L1 | 0,9 ns | 3 sec
| Processeur | Accès cache L2 | 2,8 ns | 9 sec
| | Accès cache L3 | 12,9 ns | 43 sec
|----------------|--------------------------------|------------------------------------
| Mémoire | Accès RAM | 120,0 ns | 6 min
|----------------|--------------------------------|------------------------------------
| Disques | Accès SSD I/O | 50-150 µs | 2-6 jours
| Durs | Hard Disk IO | 1-10 ms | 1-12 mois
|----------------|--------------------------------|------------------------------------
| | Internet SF to NYC | 40 ms | 4 ans
| Réseau | Internet SF to UK | 81 ms | 8 ans
| | Internet SF to Australia | 183 ms | 19 ans
|----------------|--------------------------------|------------------------------------
| | OS virtualization reboot | 4 sec | 423 ans
| Systèmes | SCSI command time-out | 30 sec | 3000 ans
| D'exploitation | Hardware virtualization reboot | 40 sec | 4000 ans
| | Physical system reboot | 5 min | 32 millénaires
Encore un article légendaire de Charle Gave. Pour Animal
Quand vous avez un dual boot, l'horloge de l'OS Linux est en UTC, celle de Windows ne l'est pas. Mécaniquement, Windows retardera d'une à deux heures dès que l'horloge Linux est réglée. Pour corriger le problème faites ceci (sous Linux évidemment) :
sudo gedit /etc/default/rcS
# Puis modifier
UTC=yes
# en
UTC=no
CE qui permettra d'ouvrir vos documents depuis un lien dans une page web.
Pour toi Animal
Un tuto sur le setup d'un fail2ban dans un conteneur LXC
Un bon résumé des éléments pratiques dans le langage Kotlin. Je vous invite à en juger par vous-même.
Définition
Le currying de fonction est la décomposition d'une fonction à n paramètres en n fonctions à 1 paramètre.
Prenons un exemple :
// A) Vous écrivez :
val result:Int = add(1, 2, 3) // result = 6
// B) Vous souhaitez écrire :
val result:Int = add(1)(2)(3) // result = 6
Passer de A à B, c'est la currification ou currying en anglais. L'opération inverse s'appelle la décurification.
Remarque :
Dans l'exemple (B), add(1) retourne une fonction qui une fois exécutée avec le paramètre 2 retourne une autre fonction qui prendra le paramètre 3.
Ohhhhhhh cette nouvelle ! Sur le marché des particuliers, hors tablettes et mobile, Linux devient le second système d'exploitation devant Windows 8 et tous les OSX réunits ! Je pense que 2018 va être le début de gros changements :D
Edit : À ma grande déception, c'était une erreur de calcul qui s'est introduite au moment de la pondération des données. Je suis un peu triste mais je sais que chaque année, nous gagnons quelques pourcents. Le lien relatant l'erreur
Un tuto sur Docker Compose. Toujours bon à avoir
Voici le script Ansible :
- name: List configured runners
command: gitlab-runner list
register: configured_runners
changed_when: False
- name: Register runner to GitLab
command: gitlab-runner register >
--non-interactive
--url '{{ gitlab_runner_coordinator_url }}'
--registration-token '{{ gitlab_runner_registration_token }}'
--description '{{ gitlab_runner_description }}'
--tag-list '{{ gitlab_runner_tags | join(",") }}'
--executor '{{ gitlab_runner_executor }}'
--docker-image '{{ gitlab_runner_docker_image }}'
when: configured_runners.stderr.find('\n{{ gitlab_runner_description }}') == -1
Hors Ansible :
gitlab-runner register \
--non-interactive \
--url 'https ://${GITLAB_HOST}:${GITLAB_PORT}/ci' \
--registration-token 'Yy1YWzcDVyBbc9RNGxsb' \
--description 'Mon GitLab Runner' \
--tag-list 'java php nodejs' \
--executor 'shell'
# --docker-image '{{ gitlab_runner_docker_image }}'