¿Qué tan importante es Octave como primer paso en Machine Learning? ¿Se utiliza en la industria?

Como muchos otros ya han respondido aquí, Octave es una buena herramienta para desarrollar una comprensión fundamental del uso de algoritmos y técnicas de ML útiles. Si su objetivo específico es buscar empleo en la búsqueda, le sugiero que siga su aprendizaje de Octave con un lenguaje de programación como R o Python. También puede considerar cambiar a MATLAB en lugar de Octave, ya que hay una mayor demanda de competencia MATLAB (en comparación con Octave) en trabajos académicos y de la industria específicos.

A continuación se detallan las oportunidades de empleo enumeradas en una búsqueda. todos los trabajos. Indeed.com como el 5 de abril de 2016

Empleos de MATLAB – 9,318

Octave Jobs – 158

Empleos de Python – 44,503

Mucha gente aquí ha recomendado el curso de ML de Andrew Ng en Coursera. También lo recomiendo encarecidamente. Andrew ha realizado importantes esfuerzos para mantener el lenguaje y el estilo de instrucción para adaptarse incluso a un laico.

¡Feliz aprendizaje!

– A2A.

Octave / Matlab es solo una herramienta, si quieres aprender sobre ML, no te centres en el lenguaje de programación, sino en conceptos, algoritmos, casos de uso, etc. Si tienes una sólida formación teórica, aprenderá lenguaje de programación. más fácil.

Con respecto a Octave, en mi universidad Matlab se usa mucho, pero más bien para sistemas de control que para aprendizaje automático. En general, la industria está cambiando hacia lenguajes como Python, R y Julia.

Octave es un lenguaje de nicho bastante con la mayor parte de su uso en la academia.
El aprendizaje automático es, en mi opinión, independiente del lenguaje. Octave es una opción tan buena como Python, R, Julia o C / C ++.
Sin embargo, la industria tiene dos requisitos claros, uno es el análisis rápido y la creación de prototipos de modelos, bastiones que posee R (para la gran comunidad y ayuda en línea disponible) y Julia que mejora ciertas características de R pero carece de la gran comunidad. El otro es la implementación del modelo de producción, que es un dominio Python / C-C ++, que es altamente estable.
Esta es la única razón por la que la industria no ha prestado mucho apoyo a la octava. En el frente de capacidades, no está muy lejos.

Octave (o su versión comercial Matlab) es importante para comprender el aprendizaje automático, ya que le permite crear fácilmente prototipos de todo el marco de aprendizaje automático sin preocuparse demasiado por los detalles de la programación. Por ejemplo, en mi humilde opinión, es relativamente más fácil declarar una matriz en Octave / Matlab que en C ++.

Otra cosa es que puede intentar programar todo el marco de aprendizaje automático (regresión, clasificación, etc.) sin utilizar ningún paquete preconstruido. Eso mejorará en gran medida su comprensión sobre el tema. Es relativamente más fácil hacerlo en Matlab / Octave.

Mi recomendación personal es el curso de ML del Dr. Andrew Ng sobre Coursera. Utiliza Octave / Matlab como lenguaje de enseñanza. Todo es lo suficientemente primitivo para que entiendas los conceptos desde el nivel del suelo.

Avíseme si necesita más aclaraciones sobre lo anterior.

De ningún modo. MATLAB se usa ampliamente en la industria, pero principalmente por razones históricas. Definitivamente no lo recomendaría como primer paso.

Yo comenzaría con Python. Entonces, también debes aprender R, es una mentalidad muy diferente y una herramienta muy útil también.

Siempre puede recoger MATLAB después si lo necesita. Pero no empieces con eso, te enseñará malos hábitos y te vinculará a la plataforma.

El punto de usar Octave para ML (como lo enseñó Andrew Ng) es llegar al quid de algunos conceptos de ML, y dejar que la gente profundice en las matemáticas básicas, sin los obstáculos de otros lenguajes / marcos. Cuando trabajas directamente en las matemáticas (especialmente para la regresión logística) usando Octave, uno no puede dejar de apreciar la razón de esta elección para enseñar ML. Matlab disponible comercialmente podría haberse usado, pero no es “gratis”. No importa si Octave se usa realmente en la industria para ML.

Si su primer paso es aprender más sobre el aprendizaje automático, elija el idioma utilizado en sus cursos. Andrew Ng usa Octave para su curso Coursera, por lo que probablemente quieras usar Octave si estuvieras tomando ese curso.

El idioma también varía con su caso de uso. Para una evaluación rápida de algunos algoritmos, R es muy agradable. Las herramientas de visualización y soporte de paquetes son bastante buenas. Para fines de producción, me mudaría a Python y luego a C ++.

Si está trabajando desde el punto de vista de probar y desarrollar nuevos algoritmos desde un punto de vista teórico, entonces, herramientas como octava y matlab son útiles. Si, por otro lado, no está tan preocupado por superar los límites, sino por crear productos que funcionen, entonces cosas como MALLET (Java) o Scikitlearn (Python) lo llevarán allí más rápido.

Octave es un buen lenguaje de alto nivel para crear prototipos de sus modelos de aprendizaje automático con bastante eficacia. Es efectivo, especialmente cuando quieres tener más control sobre tu modelo mientras aprendes. El curso de Andrew Ng recomienda Octave para empezar y estoy completamente de acuerdo con eso.

Comprender las operaciones de Octave y la matriz de codificación en Octave es bastante crucial, ya que prueba los fundamentos de álgebra lineal, lo que para mí es bastante importante para comprender algoritmos de aprendizaje avanzados.

Básicamente se utiliza principalmente para fines como la investigación, la enseñanza y dentro de las universidades. Lo más importante es que se usa como una opción / alternativa a Matlab, que tiene licencia.

Como Piotr ha descrito, Octave es solo una herramienta que utiliza para comprender el aprendizaje automático. Para comprender el funcionamiento de los conceptos de ML, es una gran herramienta. En términos de aceptación en la industria, no tanto.

Puedo hablar por empresas con sede en India y la mayoría de ellas piden experiencia en Python / R / Matlab cuando se trata de ML.

Si está dando los primeros pasos en Machine Learning, entonces Octave / MATLAB son buenos pasos (+1 a Octave por ser fuente libre). La última parte de la pregunta no debería molestarlo particularmente por razones que otros han señalado.

More Interesting

¿Se moverá el conjunto de problemas ICPC para incluir sistemas distribuidos y aprendizaje automático en el futuro?

¿Cuáles son las principales similitudes y diferencias entre los alumnos basados ​​en instancias y las máquinas de vectores de soporte?

¿El aprendizaje automático como campo todavía está en su infancia, o ya es sofisticado y está bien desarrollado?

Si quiero aprender mucho sobre IA, aprendizaje automático y ciencia de datos, y no tengo absolutamente ninguna experiencia sobre ellos, ¿por dónde empiezo?

¿Es posible que una aplicación de aprendizaje automático que ejecute el mismo algoritmo y se alimente con los mismos datos para aprender cosas diferentes en pruebas de entrenamiento separadas?

En términos de rendimiento de clasificación en conjuntos de datos grandes y dispersos, ¿cómo se compara el aprendizaje profundo con la regresión logística en la práctica?

¿Cuál es la mejor herramienta de optimización bayesiana para optimizar hiperparámetros de grandes redes neuronales?

¿Cuál es la diferencia entre el aprendizaje de refuerzo basado en modelos y sin modelos?

En cuanto al aprendizaje automático o el aprendizaje profundo, ¿existe el fenómeno de que el modelo funciona bien pero el diseñador no puede explicar la razón?

¿Qué libro de los dos es más completo para PNL: el de Jurafsky o el de Manning?

¿Cuál es la regla de entrenamiento para redes de perceptrón de capa única con umbral?

¿El aprendizaje automático va a derrocar al sistema dinámico?

Cómo calcular la cantidad óptima de datos de entrenamiento para un pronóstico de series de tiempo usando Python

Cómo evaluar mi modelo cada época en TensorFlow

Cómo implementar el muestreo ponderado de yacimientos