¿Es necesario aprender Python para seguir la especialización en cursos de Machine Learning, de Coursera?

Aprendizaje automático | Coursera: si esta es la especialización de la que habla, los instructores del curso recomiendan que realice las tareas en Python.

Y, la mayoría de las tareas usan solo Python, aunque hay una excepción para algunos (en el curso de Clasificación, puede usar cualquier idioma de su elección).

Pero, si se siente cómodo con la programación en R y dado que también es bueno en C y C ++, no creo que sea difícil para usted ir con Python. Habrá videos introductorios sobre python que podrían ayudarlo a comenzar.

También encontrará que la mayoría de las funciones de las herramientas de análisis de datos son casi similares en ambos idiomas. Ve con un ritmo normal y no será una tarea tediosa para ti.

Hasta ahora, hice todas sus tareas en Python e incluso era un novato en Python cuando comencé el curso.

¡¡¡Si!!! Un conocimiento básico del idioma sería muy útil para comenzar. Yo lo recomendaría.

Aprendizaje feliz 🙂

Por que Python

Ventajas

Python 3.4.2 ejecutándose en Windows 8.

Sintaxis Fácil

La sintaxis de Python es fácil de aprender, por lo que tanto los no programadores como los programadores pueden comenzar a programar de inmediato.

Legibilidad

La sintaxis de Python es muy clara, por lo que es fácil de entender el código del programa. (Python a menudo se conoce como “pseudocódigo ejecutable” porque su sintaxis sigue principalmente las convenciones utilizadas por los programadores para delinear sus ideas sin la verbosidad formal del código en la mayoría de los lenguajes de programación; en otras palabras, la sintaxis de Python es casi idéntica a la simplificada “pseudocódigo” utilizado por muchos programadores para crear prototipos y describir su solución a otros programadores. Por lo tanto, Python se puede utilizar para crear prototipos y probar código que luego se implementará en otros lenguajes de programación).

Lenguaje de alto nivel

Python se parece más a un lenguaje humano legible que a un lenguaje de bajo nivel. Esto le brinda la capacidad de programar a un ritmo más rápido que el que le permite un lenguaje de bajo nivel.

Programación orientada a objetos

La programación orientada a objetos le permite crear estructuras de datos que pueden reutilizarse, lo que reduce la cantidad de trabajo repetitivo que deberá realizar. Los lenguajes de programación generalmente definen objetos con espacios de nombres, como class o def , y los objetos pueden editarse a sí mismos usando palabras clave, como this o self . La mayoría de los lenguajes de programación modernos están orientados a objetos (como Java, C ++ y C #) o tienen soporte para características OOP (como Perl versión 5 y posterior). Además, las técnicas orientadas a objetos pueden usarse en el diseño de casi cualquier software no trivial e implementarse en casi cualquier lenguaje de programación o scripting. (Por ejemplo, una serie de características del kernel de Linux son “objetos” que implementan su propia encapsulación de comportamiento y estructura de datos a través de punteros, específicamente punteros a funciones, en el lenguaje de programación C).

El soporte de Python para la programación orientada a objetos es uno de sus mayores beneficios para los nuevos programadores porque se encontrarán con los mismos conceptos y terminología en su entorno de trabajo. Si alguna vez decide cambiar de idioma, o usar cualquier otro para ese hecho, tendrá una gran posibilidad de que trabaje con programación orientada a objetos.

Es gratis

Python es tanto gratuito como de código abierto. Python Software Foundation distribuye binarios prefabricados que están disponibles gratuitamente para su uso en todos los principales sistemas operativos llamados CPython. También puede obtener el código fuente de CPython. Además, puede modificar el código fuente y distribuirlo según lo permita la licencia de CPython.

(Afortunadamente, CPython tiene una actitud permisiva de licencia de software libre).

Multiplataforma

Python se ejecuta en todos los principales sistemas operativos como Microsoft Windows, Linux y Mac OS X.

Ampliamente compatible

Python tiene una comunidad de soporte activa con muchos sitios web, listas de correo y grupos “netnews” de USENET que atraen a una gran cantidad de contribuciones informadas y útiles.

Es seguro

Python no tiene punteros como otros lenguajes basados ​​en C, por lo que es mucho más confiable. Junto con eso, los errores nunca pasan silenciosamente a menos que sean silenciados explícitamente. Esto le permite ver y leer por qué el programa se bloqueó y dónde corregir su error.

Baterias incluidas

Python es famoso por ser el lenguaje de “baterías incluidas”.

Hay más de 300 módulos de biblioteca estándar que contienen módulos y clases para una amplia variedad de tareas de programación.

Por ejemplo, la biblioteca estándar contiene módulos para crear de manera segura archivos temporales (con nombre o anónimos), asignar archivos a la memoria (incluido el uso de asignaciones de memoria compartidas y anónimas), generar y controlar subprocesos, comprimir y descomprimir archivos (compatible con gzip o PK -zip) y archivos de archivos (como Unix / Linux “tar”), accediendo a archivos indexados “DBM” (base de datos), interactuando con varias interfaces gráficas de usuario (como el kit de herramientas TK y el popular sistema de ventanas multiplataforma WxWindows), análisis y mantenimiento de archivos de configuración CSV (valores separados por comas) y “.cfg” o “.ini” (similar en sintaxis a los venerables archivos WIN.INI de MS-DOS y MS-Windows), para enviar correo electrónico, recuperar y analizar páginas web, etc. Es posible, por ejemplo, crear un servidor web personalizado en Python usando menos de una docena de líneas de código, y una de las bibliotecas estándar, por supuesto.

Extensible

Además de las bibliotecas estándar, existen amplias colecciones de módulos complementarios, bibliotecas, marcos y kits de herramientas disponibles gratuitamente. Estos generalmente se ajustan a estándares y convenciones similares; por ejemplo, casi todos los adaptadores de bases de datos (para hablar con casi cualquier motor RDBMS de cliente-servidor como MySQL, Postgres, Oracle, etc.) se ajustan a Python DBAPI y, por lo tanto, se puede acceder a ellos utilizando el mismo código. Por lo tanto, generalmente es fácil modificar un programa de Python para admitir cualquier motor de base de datos.

Desventajas

Velocidad

Python es ejecutado por un intérprete en lugar de compilación, lo que hace que sea más lento que si fuera compilado y luego ejecutado. Sin embargo, para la mayoría de las aplicaciones, es lo suficientemente rápido. Un idioma de Python es “La velocidad no es un problema hasta que es un problema”.

“Demasiado fácil”

Cuando uno domina Python, uno puede acostumbrarse tanto a sus características, particularmente a su modelo dinámico de enlace tardío y sus numerosas bibliotecas, que puede ser difícil de aprender y sentirse cómodo en otros lenguajes de programación. Específicamente, la necesidad de declarar “tipos” variables y “emitir” valores de un tipo a otro y los requisitos sintácticos para agregar punto y coma y llaves usadas por otros lenguajes de programación pueden ser vistos como tediosos u onerosos por programadores experimentados de Python.

Fuente: https://en.wikiversity.org/wiki/

Sí, necesitará al menos los conceptos básicos de Python para obtener la Especialización en aprendizaje automático. La especialización utiliza una biblioteca llamada GraphLab Create from Dato (ahora Turi) que es una biblioteca de Python. Para completar los presupuestos es necesaria su implementación en Python. Dedique un tiempo a familiarizarse con los conceptos básicos de Python desde codecadmey.com antes de inscribirse en esta Especialización

More Interesting

Cómo usar el aprendizaje automático para identificar patrones en la trama de series de tiempo

¿Cuáles son las ventajas y desventajas de usar R vs. C ++ para el aprendizaje automático?

¿Cómo se relaciona el algoritmo RANSAC con la visión por computadora?

¿Cuál es el enfoque más eficiente para los sistemas de recomendación?

¿Cómo se siente la comunidad de aprendizaje automático sobre Kaggle?

¿Cuál es la mejor extracción de características de un conjunto de datos de imágenes?

Con respecto al descenso de gradiente funcional, ¿qué significa minimizar un funcional con respecto a una función? Proporcione un ejemplo claro.

¿Cómo serían comparables las características de codificación dispersa y RBM (con una restricción de dispersión)?

¿Cuáles son algunos proyectos de aprendizaje automático de nivel principiante que se pueden hacer después de una clase de Coursera de Andrew Ng?

¿Qué lenguaje de programación se usa para el aprendizaje automático?

¿En qué situaciones, ha encontrado que el aprendizaje profundo no funciona bien?

¿Las computadoras cuánticas mostrarían una aceleración para el aprendizaje automático?

Soy un hombre de 25 años que estudió CS, aprendizaje automático y minería de datos para mi maestría. Mi verdadera pasión radica en la música y los viajes. He estado sin trabajo durante 7 a 8 meses, solicito un doctorado en ML y música, y mi papá quiere que consiga un trabajo. ¿Qué debo hacer?

Según muchas personas, la inteligencia artificial y el aprendizaje automático son las principales razones de los despidos de trabajo de TI. ¿Qué trabajos han sido reemplazados por estas disciplinas?

¿Cuáles son los algoritmos de aprendizaje profundo que pueden corregir los errores de reconocimiento óptico de caracteres (OCR)?